From 9eb6f85105699320d8cbdbb33bcdc88c41ea709a Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Thu, 15 Jun 2023 03:03:06 +0000 Subject: CTAN sync 202306150303 --- FILES.byname | 304 +-- FILES.byname.gz | Bin 2534029 -> 2534011 bytes FILES.last07days | 2759 ++------------------ biblio/ctan-bibdata/ctan.bib | 48 +- biblio/ctan-bibdata/ctan.pdf | Bin 3681050 -> 3681485 bytes .../pgf/contrib/fenetrecas/doc/FenetreCas-doc.pdf | Bin 627278 -> 659575 bytes .../pgf/contrib/fenetrecas/doc/FenetreCas-doc.tex | 30 +- graphics/pgf/contrib/fenetrecas/tex/FenetreCas.sty | 58 +- .../contrib/string-diagrams/string-diagrams.dtx | 69 +- .../contrib/string-diagrams/string-diagrams.ins | 2 +- .../contrib/string-diagrams/string-diagrams.pdf | Bin 549184 -> 551603 bytes language/japanese/BX/bxjscls/LICENSE | 4 +- language/japanese/BX/bxjscls/README-ja.md | 6 +- language/japanese/BX/bxjscls/README.md | 5 +- language/japanese/BX/bxjscls/bxjscls-manual.pdf | Bin 397223 -> 395702 bytes language/japanese/BX/bxjscls/bxjscls-manual.tex | 4 +- language/japanese/BX/bxjscls/bxjscls.dtx | 364 ++- language/japanese/BX/bxjscls/bxjscls.pdf | Bin 802634 -> 829811 bytes macros/generic/soul/README.md | 2 +- macros/generic/soul/soul-ori.dtx | 9 +- macros/generic/soul/soul-ori.pdf | Bin 509006 -> 509029 bytes macros/generic/soul/soul.dtx | 11 +- macros/generic/soul/soul.pdf | Bin 377440 -> 377262 bytes macros/latex/contrib/quizztex/README.md | 4 +- .../latex/contrib/quizztex/doc/quizztex-doc-fr.pdf | Bin 505094 -> 546927 bytes .../latex/contrib/quizztex/doc/quizztex-doc-fr.tex | 58 +- macros/latex/contrib/quizztex/tex/quizztex.sty | 154 +- macros/latex/contrib/runcode/README | 2 +- macros/latex/contrib/runcode/runcode.pdf | Bin 247080 -> 247859 bytes macros/latex/contrib/runcode/runcode.sty | 26 +- macros/latex/contrib/runcode/runcode.tex | 39 +- macros/latex/contrib/tagpdf/README.md | 4 +- macros/latex/contrib/tagpdf/tagpdf-backend.dtx | 27 +- macros/latex/contrib/tagpdf/tagpdf-checks.dtx | 47 +- macros/latex/contrib/tagpdf/tagpdf-code.pdf | Bin 1564470 -> 1593565 bytes macros/latex/contrib/tagpdf/tagpdf-data.dtx | 18 +- macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx | 9 +- macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx | 20 +- macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx | 45 +- macros/latex/contrib/tagpdf/tagpdf-roles.dtx | 4 +- macros/latex/contrib/tagpdf/tagpdf-space.dtx | 4 +- macros/latex/contrib/tagpdf/tagpdf-struct.dtx | 20 +- macros/latex/contrib/tagpdf/tagpdf-tree.dtx | 4 +- macros/latex/contrib/tagpdf/tagpdf-user.dtx | 18 +- macros/latex/contrib/tagpdf/tagpdf.dtx | 6 +- macros/latex/contrib/tagpdf/tagpdf.pdf | Bin 1012495 -> 1021749 bytes macros/latex/contrib/tagpdf/tagpdf.tex | 39 +- macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty | 2 +- macros/latex/contrib/zref-check/CHANGELOG.md | 8 +- .../latex/contrib/zref-check/zref-check-code.pdf | Bin 743709 -> 745278 bytes .../latex/contrib/zref-check/zref-check-code.tex | 4 +- macros/latex/contrib/zref-check/zref-check-doc.pdf | Bin 0 -> 453555 bytes macros/latex/contrib/zref-check/zref-check-doc.tex | 501 ++++ macros/latex/contrib/zref-check/zref-check.dtx | 453 +--- macros/latex/contrib/zref-check/zref-check.ins | 8 +- macros/latex/contrib/zref-check/zref-check.pdf | Bin 464993 -> 0 bytes macros/latex/contrib/zref-check/zref-check.tex | 94 - macros/latex/contrib/zref-clever/CHANGELOG.md | 34 +- .../latex/contrib/zref-clever/zref-clever-code.pdf | Bin 1283670 -> 1273255 bytes .../latex/contrib/zref-clever/zref-clever-code.tex | 2 +- .../latex/contrib/zref-clever/zref-clever-doc.pdf | Bin 0 -> 346306 bytes .../latex/contrib/zref-clever/zref-clever-doc.tex | 2682 +++++++++++++++++++ macros/latex/contrib/zref-clever/zref-clever.dtx | 210 +- macros/latex/contrib/zref-clever/zref-clever.ins | 4 +- macros/latex/contrib/zref-clever/zref-clever.pdf | Bin 345913 -> 0 bytes macros/latex/contrib/zref-clever/zref-clever.tex | 2672 ------------------- macros/latex/contrib/zref-vario/CHANGELOG.md | 8 +- .../latex/contrib/zref-vario/zref-vario-code.pdf | Bin 648126 -> 649972 bytes .../latex/contrib/zref-vario/zref-vario-code.tex | 2 +- macros/latex/contrib/zref-vario/zref-vario-doc.pdf | Bin 0 -> 149965 bytes macros/latex/contrib/zref-vario/zref-vario-doc.tex | 376 +++ macros/latex/contrib/zref-vario/zref-vario.dtx | 9 +- macros/latex/contrib/zref-vario/zref-vario.ins | 4 +- macros/latex/contrib/zref-vario/zref-vario.pdf | Bin 149549 -> 0 bytes macros/latex/contrib/zref-vario/zref-vario.tex | 374 --- .../texlive/tlnet/tlpkg/installer/ctan-mirrors.pl | 4 - systems/texlive/tlnet/tlpkg/texlive.tlpdb | 156 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 | 2 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 | 2 +- .../texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc | 16 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz | Bin 2452800 -> 2453892 bytes timestamp | 2 +- 82 files changed, 4893 insertions(+), 6959 deletions(-) create mode 100644 macros/latex/contrib/zref-check/zref-check-doc.pdf create mode 100644 macros/latex/contrib/zref-check/zref-check-doc.tex delete mode 100644 macros/latex/contrib/zref-check/zref-check.pdf delete mode 100644 macros/latex/contrib/zref-check/zref-check.tex create mode 100644 macros/latex/contrib/zref-clever/zref-clever-doc.pdf create mode 100644 macros/latex/contrib/zref-clever/zref-clever-doc.tex delete mode 100644 macros/latex/contrib/zref-clever/zref-clever.pdf delete mode 100644 macros/latex/contrib/zref-clever/zref-clever.tex create mode 100644 macros/latex/contrib/zref-vario/zref-vario-doc.pdf create mode 100644 macros/latex/contrib/zref-vario/zref-vario-doc.tex delete mode 100644 macros/latex/contrib/zref-vario/zref-vario.pdf delete mode 100644 macros/latex/contrib/zref-vario/zref-vario.tex diff --git a/FILES.byname b/FILES.byname index 6e20f40b4d..0f4d0af71a 100644 --- a/FILES.byname +++ b/FILES.byname @@ -2056,12 +2056,12 @@ 2023/04/13 | 1675 | biblio/citation-style-language/README.md 2023/04/13 | 11957 | biblio/citation-style-language/vancouver.csl 2023/04/13 | 4516625 | biblio/citation-style-language.zip -2023/06/13 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx +2023/06/14 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx 2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx -2023/06/13 | 2790050 | biblio/ctan-bibdata/ctan.bib -2023/06/13 | 3681158 | biblio/ctan-bibdata/ctan.pdf +2023/06/14 | 2790409 | biblio/ctan-bibdata/ctan.bib +2023/06/14 | 3681050 | biblio/ctan-bibdata/ctan.pdf 2023/01/16 | 1489 | biblio/ctan-bibdata/README -2023/06/13 | 4080586 | biblio/ctan-bibdata.zip +2023/06/14 | 4079351 | biblio/ctan-bibdata.zip 2023/02/23 | 3126 | biblio/pbibtex/pbibtex-base/cpp.awk 2023/02/23 | 1009 | biblio/pbibtex/pbibtex-base/generate.sh 2023/02/23 | 22362 | biblio/pbibtex/pbibtex-base/jabbrv.bst @@ -5417,7 +5417,7 @@ 1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp 1990/10/02 | 812 | dviware/vutex/vaxvms.ins 1990/10/02 | 127576 | dviware/vutex/vutex.web -2023/06/13 | 327536 | FILES.last07days +2023/06/14 | 324806 | 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 @@ -159489,11 +159489,11 @@ 2013/02/27 | 1715 | graphics/pgf/contrib/fast-diagram/sources_help/reglages.tex 2013/02/27 | 7946 | graphics/pgf/contrib/fast-diagram/sources_help/tikz.tex 2013/02/27 | 1426766 | graphics/pgf/contrib/fast-diagram.zip -2023/05/21 | 627278 | graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.pdf -2023/05/21 | 18112 | graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.tex +2023/06/14 | 659575 | graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.pdf +2023/06/14 | 18437 | graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.tex 2023/03/17 | 447 | graphics/pgf/contrib/fenetrecas/README.md -2023/05/21 | 12537 | graphics/pgf/contrib/fenetrecas/tex/FenetreCas.sty -2023/05/21 | 615803 | graphics/pgf/contrib/fenetrecas.zip +2023/06/14 | 14130 | graphics/pgf/contrib/fenetrecas/tex/FenetreCas.sty +2023/06/14 | 647284 | graphics/pgf/contrib/fenetrecas.zip 2022/03/23 | 5882 | graphics/pgf/contrib/figchild/capa.tex 2022/03/23 | 995423 | graphics/pgf/contrib/figchild/figchild.pdf 2022/03/23 | 2078649 | graphics/pgf/contrib/figchild/figchild.sty @@ -160444,11 +160444,11 @@ 2021/07/11 | 2267 | graphics/pgf/contrib/strands/strands.ins 2021/07/11 | 144626 | graphics/pgf/contrib/strands/strands.pdf 2021/07/12 | 151555 | graphics/pgf/contrib/strands.zip -2023/06/12 | 3008 | graphics/pgf/contrib/string-diagrams/README.md -2023/06/12 | 15324 | graphics/pgf/contrib/string-diagrams/string-diagrams.dtx -2023/06/12 | 1566 | graphics/pgf/contrib/string-diagrams/string-diagrams.ins -2023/06/12 | 549184 | graphics/pgf/contrib/string-diagrams/string-diagrams.pdf -2023/06/12 | 539578 | graphics/pgf/contrib/string-diagrams.zip +2023/06/13 | 3008 | graphics/pgf/contrib/string-diagrams/README.md +2023/06/13 | 16030 | graphics/pgf/contrib/string-diagrams/string-diagrams.dtx +2023/06/13 | 1566 | graphics/pgf/contrib/string-diagrams/string-diagrams.ins +2023/06/13 | 551603 | graphics/pgf/contrib/string-diagrams/string-diagrams.pdf +2023/06/14 | 542183 | graphics/pgf/contrib/string-diagrams.zip 2023/03/31 | 35126 | graphics/pgf/contrib/structmech/LICENSE 2023/03/31 | 1018 | graphics/pgf/contrib/structmech/README.md 2023/03/31 | 157219 | graphics/pgf/contrib/structmech/structmech.pdf @@ -194577,7 +194577,7 @@ 2022/10/31 | 367048 | install/macros/latex/contrib/ydoc.tds.zip 2020/04/09 | 806385 | install/macros/latex/contrib/zhlipsum.tds.zip 2022/07/14 | 321454 | install/macros/latex/contrib/zhnumber.tds.zip -2023/02/21 | 1688405 | install/macros/latex/contrib/zref-clever.tds.zip +2023/06/14 | 1677516 | install/macros/latex/contrib/zref-clever.tds.zip 2023/06/11 | 40733357 | install/macros/latex-dev/latex-base-dev.tds.zip 2023/06/11 | 2796041 | install/macros/latex-dev/required/latex-amsmath-dev.tds.zip 2023/05/25 | 275474 | install/macros/latex-dev/required/latex-firstaid-dev.tds.zip @@ -199041,15 +199041,15 @@ 2019/10/20 | 1086 | language/japanese/BX/bxjatoucs/LICENSE 2019/10/20 | 2776 | language/japanese/BX/bxjatoucs/README.md 2019/10/22 | 69213 | language/japanese/BX/bxjatoucs.zip -2022/04/12 | 416223 | language/japanese/BX/bxjscls/bxjscls.dtx +2023/06/14 | 423892 | language/japanese/BX/bxjscls/bxjscls.dtx 2022/03/20 | 855 | language/japanese/BX/bxjscls/bxjscls.ins -2022/04/12 | 397223 | language/japanese/BX/bxjscls/bxjscls-manual.pdf -2022/04/12 | 93010 | language/japanese/BX/bxjscls/bxjscls-manual.tex -2022/04/12 | 802634 | language/japanese/BX/bxjscls/bxjscls.pdf -2022/03/20 | 1461 | language/japanese/BX/bxjscls/LICENSE -2022/04/12 | 16856 | language/japanese/BX/bxjscls/README-ja.md -2022/04/12 | 6713 | language/japanese/BX/bxjscls/README.md -2022/04/12 | 1318399 | language/japanese/BX/bxjscls.zip +2023/06/14 | 395702 | language/japanese/BX/bxjscls/bxjscls-manual.pdf +2023/06/14 | 93009 | language/japanese/BX/bxjscls/bxjscls-manual.tex +2023/06/14 | 829811 | language/japanese/BX/bxjscls/bxjscls.pdf +2023/06/14 | 1461 | language/japanese/BX/bxjscls/LICENSE +2023/06/14 | 16993 | language/japanese/BX/bxjscls/README-ja.md +2023/06/14 | 6769 | language/japanese/BX/bxjscls/README.md +2023/06/14 | 1344485 | language/japanese/BX/bxjscls.zip 2019/04/01 | 44 | language/japanese/BX/bxwareki/bxwareki2019.def 2019/05/27 | 3941 | language/japanese/BX/bxwareki/bxwareki-cd.def 2019/05/28 | 182364 | language/japanese/BX/bxwareki/bxwareki.pdf @@ -203475,13 +203475,13 @@ 2022/10/01 | 161 | macros/generic/simplekv/simplekv.sty 2022/10/01 | 8835 | macros/generic/simplekv/simplekv.tex 2022/10/01 | 133045 | macros/generic/simplekv.zip -2023/02/18 | 762 | macros/generic/soul/README.md -2023/02/18 | 30174 | macros/generic/soul/soul.dtx -2023/02/18 | 1840 | macros/generic/soul/soul.ins -2023/02/18 | 133473 | macros/generic/soul/soul-ori.dtx -2023/02/18 | 509006 | macros/generic/soul/soul-ori.pdf -2023/02/18 | 377440 | macros/generic/soul/soul.pdf -2023/02/18 | 901082 | macros/generic/soul.zip +2023/06/14 | 762 | macros/generic/soul/README.md +2023/06/14 | 30247 | macros/generic/soul/soul.dtx +2023/06/14 | 1840 | macros/generic/soul/soul.ins +2023/06/14 | 133684 | macros/generic/soul/soul-ori.dtx +2023/06/14 | 509029 | macros/generic/soul/soul-ori.pdf +2023/06/14 | 377262 | macros/generic/soul/soul.pdf +2023/06/14 | 901120 | macros/generic/soul.zip 2020/05/03 | 1032 | macros/generic/systeme/README 2020/05/03 | 76904 | macros/generic/systeme/systeme_fr.pdf 2020/05/03 | 25562 | macros/generic/systeme/systeme_fr.tex @@ -234333,11 +234333,11 @@ 2019/10/02 | 24183 | macros/latex/contrib/quiz2socrative/sample-quiz2socrative-socrativeQuiz+standalone.pdf 2019/10/02 | 332 | macros/latex/contrib/quiz2socrative/sample-quiz2socrative-socrativeQuiz+standalone.tex 2019/10/03 | 247781 | macros/latex/contrib/quiz2socrative.zip -2023/06/13 | 505094 | macros/latex/contrib/quizztex/doc/quizztex-doc-fr.pdf -2023/06/13 | 22185 | macros/latex/contrib/quizztex/doc/quizztex-doc-fr.tex -2023/06/13 | 800 | macros/latex/contrib/quizztex/README.md -2023/06/13 | 39091 | macros/latex/contrib/quizztex/tex/quizztex.sty -2023/06/13 | 499669 | macros/latex/contrib/quizztex.zip +2023/06/14 | 546927 | macros/latex/contrib/quizztex/doc/quizztex-doc-fr.pdf +2023/06/14 | 23114 | macros/latex/contrib/quizztex/doc/quizztex-doc-fr.tex +2023/06/11 | 804 | macros/latex/contrib/quizztex/README.md +2023/06/14 | 41000 | macros/latex/contrib/quizztex/tex/quizztex.sty +2023/06/14 | 540997 | macros/latex/contrib/quizztex.zip 2020/11/13 | 62073 | macros/latex/contrib/quotchap/document.pdf 2019/07/09 | 932 | macros/latex/contrib/quotchap/document.tex 2020/11/13 | 18345 | macros/latex/contrib/quotchap/quotchap.dtx @@ -235143,21 +235143,21 @@ 2019/04/18 | 4724 | macros/latex/contrib/rulerbox/rulerbox.sty 2019/04/18 | 5847 | macros/latex/contrib/rulerbox/rulerbox.tex 2019/04/18 | 60473 | macros/latex/contrib/rulerbox.zip -2023/01/19 | 60 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln2.tex -2023/01/19 | 25 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln4.tex -2023/01/19 | 25 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln5.tex -2023/01/19 | 4 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln6.tex -2023/01/19 | 80 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln7.tex -2023/01/19 | 80 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln8.tex -2023/01/19 | 12 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln9.tex -2023/01/19 | 554 | macros/latex/contrib/runcode/generated/testWithrunR.tex -2023/01/19 | 1449 | macros/latex/contrib/runcode/README -2023/01/19 | 247080 | macros/latex/contrib/runcode/runcode.pdf -2023/01/19 | 17003 | macros/latex/contrib/runcode/runcode.sty -2023/01/19 | 15754 | macros/latex/contrib/runcode/runcode.tex -2023/01/19 | 161688 | macros/latex/contrib/runcode/runcode_troubleshoot.pdf -2023/01/19 | 18978 | macros/latex/contrib/runcode/runcode_troubleshoot.tex -2023/01/19 | 414011 | macros/latex/contrib/runcode.zip +2023/06/14 | 60 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln2.tex +2023/06/14 | 25 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln4.tex +2023/06/14 | 25 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln5.tex +2023/06/14 | 4 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln6.tex +2023/06/14 | 80 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln7.tex +2023/06/14 | 80 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln8.tex +2023/06/14 | 12 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln9.tex +2023/06/14 | 554 | macros/latex/contrib/runcode/generated/testWithrunR.tex +2023/06/14 | 1449 | macros/latex/contrib/runcode/README +2023/06/14 | 247859 | macros/latex/contrib/runcode/runcode.pdf +2023/06/14 | 17239 | macros/latex/contrib/runcode/runcode.sty +2023/06/14 | 16099 | macros/latex/contrib/runcode/runcode.tex +2023/06/14 | 161688 | macros/latex/contrib/runcode/runcode_troubleshoot.pdf +2023/06/14 | 18978 | macros/latex/contrib/runcode/runcode_troubleshoot.tex +2023/06/14 | 415458 | macros/latex/contrib/runcode.zip 2005/12/01 | 13008 | macros/latex/contrib/r_und_s/eng_rs.sty 2005/12/01 | 11585 | macros/latex/contrib/r_und_s/eng_rs.tex 2005/12/01 | 14228 | macros/latex/contrib/r_und_s/fr_rs.sty @@ -238128,55 +238128,55 @@ 2016/02/03 | 1428 | macros/latex/contrib/tagpair/tagpair.sty 2016/09/23 | 3615 | macros/latex/contrib/tagpair/tagpair.tex 2016/09/23 | 71796 | macros/latex/contrib/tagpair.zip -2023/06/06 | 23311 | macros/latex/contrib/tagpdf/acrobat.png -2023/06/06 | 8652 | macros/latex/contrib/tagpdf/ex-AF-file.pdf -2023/06/06 | 1237 | macros/latex/contrib/tagpdf/ex-AF-file.tex -2023/06/06 | 17742 | macros/latex/contrib/tagpdf/ex-alt-actualtext-luatex.pdf -2023/06/06 | 4153 | macros/latex/contrib/tagpdf/ex-alt-actualtext.tex -2023/06/06 | 6626 | macros/latex/contrib/tagpdf/ex-attribute-luatex.pdf -2023/06/06 | 1398 | macros/latex/contrib/tagpdf/ex-attribute.tex -2023/06/06 | 7854 | macros/latex/contrib/tagpdf/ex-formula-problem-luatex.pdf -2023/06/06 | 1019 | macros/latex/contrib/tagpdf/ex-formula-problem.tex -2023/06/06 | 22818 | macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf -2023/06/06 | 2150 | macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.tex -2023/06/06 | 16888 | macros/latex/contrib/tagpdf/ex-patch-list-luatex.pdf -2023/06/06 | 2528 | macros/latex/contrib/tagpdf/ex-patch-list-obsolete.tex -2023/06/06 | 2637 | macros/latex/contrib/tagpdf/ex-patch-list.tex -2023/06/06 | 18461 | macros/latex/contrib/tagpdf/ex-patch-sectioning-koma-luatex.pdf -2023/06/06 | 4284 | macros/latex/contrib/tagpdf/ex-patch-sectioning-koma.tex -2023/06/06 | 21067 | macros/latex/contrib/tagpdf/ex-patch-sectioning-memoir.pdf -2023/06/06 | 5797 | macros/latex/contrib/tagpdf/ex-patch-sectioning-memoir.tex -2023/06/06 | 6842 | macros/latex/contrib/tagpdf/ex-softhyphen.pdf -2023/06/06 | 1073 | macros/latex/contrib/tagpdf/ex-softhyphen.tex -2023/06/06 | 4618 | macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf -2023/06/06 | 777 | macros/latex/contrib/tagpdf/ex-spaceglyph-listings.tex -2023/06/06 | 1537 | macros/latex/contrib/tagpdf/ex-structure-obsolete.tex -2023/06/06 | 19363 | macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf -2023/06/06 | 801 | macros/latex/contrib/tagpdf/ex-tagpdf-template.tex -2023/06/06 | 8281 | macros/latex/contrib/tagpdf/global-ex.png -2023/06/06 | 2022 | macros/latex/contrib/tagpdf/link-figure-input.tex -2023/06/06 | 141163 | macros/latex/contrib/tagpdf/pac3.PNG -2023/06/06 | 1177 | macros/latex/contrib/tagpdf/README.md -2023/06/06 | 40936 | macros/latex/contrib/tagpdf/tagpdf-backend.dtx -2023/06/06 | 1730 | macros/latex/contrib/tagpdf/tagpdf.bib -2023/06/06 | 31494 | macros/latex/contrib/tagpdf/tagpdf-checks.dtx -2023/06/06 | 1564470 | macros/latex/contrib/tagpdf/tagpdf-code.pdf -2023/06/06 | 2278 | macros/latex/contrib/tagpdf/tagpdf-code.tex -2023/06/06 | 37453 | macros/latex/contrib/tagpdf/tagpdf-data.dtx -2023/06/06 | 4593 | macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty -2023/06/06 | 20874 | macros/latex/contrib/tagpdf/tagpdf.dtx -2023/06/06 | 3962 | macros/latex/contrib/tagpdf/tagpdf.ins -2023/06/06 | 27200 | macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx -2023/06/06 | 15075 | macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx -2023/06/06 | 15315 | macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx -2023/06/06 | 1012495 | macros/latex/contrib/tagpdf/tagpdf.pdf -2023/06/06 | 44243 | macros/latex/contrib/tagpdf/tagpdf-roles.dtx -2023/06/06 | 5109 | macros/latex/contrib/tagpdf/tagpdf-space.dtx -2023/06/06 | 65056 | macros/latex/contrib/tagpdf/tagpdf-struct.dtx -2023/06/06 | 114286 | macros/latex/contrib/tagpdf/tagpdf.tex -2023/06/06 | 17548 | macros/latex/contrib/tagpdf/tagpdf-tree.dtx -2023/06/06 | 30507 | macros/latex/contrib/tagpdf/tagpdf-user.dtx -2023/06/07 | 2295920 | macros/latex/contrib/tagpdf.zip +2023/06/14 | 23311 | macros/latex/contrib/tagpdf/acrobat.png +2023/06/14 | 8652 | macros/latex/contrib/tagpdf/ex-AF-file.pdf +2023/06/14 | 1237 | macros/latex/contrib/tagpdf/ex-AF-file.tex +2023/06/14 | 17742 | macros/latex/contrib/tagpdf/ex-alt-actualtext-luatex.pdf +2023/06/14 | 4153 | macros/latex/contrib/tagpdf/ex-alt-actualtext.tex +2023/06/14 | 6626 | macros/latex/contrib/tagpdf/ex-attribute-luatex.pdf +2023/06/14 | 1398 | macros/latex/contrib/tagpdf/ex-attribute.tex +2023/06/14 | 7854 | macros/latex/contrib/tagpdf/ex-formula-problem-luatex.pdf +2023/06/14 | 1019 | macros/latex/contrib/tagpdf/ex-formula-problem.tex +2023/06/14 | 22818 | macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf +2023/06/14 | 2150 | macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.tex +2023/06/14 | 16888 | macros/latex/contrib/tagpdf/ex-patch-list-luatex.pdf +2023/06/14 | 2528 | macros/latex/contrib/tagpdf/ex-patch-list-obsolete.tex +2023/06/14 | 2637 | macros/latex/contrib/tagpdf/ex-patch-list.tex +2023/06/14 | 18461 | macros/latex/contrib/tagpdf/ex-patch-sectioning-koma-luatex.pdf +2023/06/14 | 4284 | macros/latex/contrib/tagpdf/ex-patch-sectioning-koma.tex +2023/06/14 | 21067 | macros/latex/contrib/tagpdf/ex-patch-sectioning-memoir.pdf +2023/06/14 | 5797 | macros/latex/contrib/tagpdf/ex-patch-sectioning-memoir.tex +2023/06/14 | 6842 | macros/latex/contrib/tagpdf/ex-softhyphen.pdf +2023/06/14 | 1073 | macros/latex/contrib/tagpdf/ex-softhyphen.tex +2023/06/14 | 4618 | macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf +2023/06/14 | 777 | macros/latex/contrib/tagpdf/ex-spaceglyph-listings.tex +2023/06/14 | 1537 | macros/latex/contrib/tagpdf/ex-structure-obsolete.tex +2023/06/14 | 19363 | macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf +2023/06/14 | 801 | macros/latex/contrib/tagpdf/ex-tagpdf-template.tex +2023/06/14 | 8281 | macros/latex/contrib/tagpdf/global-ex.png +2023/06/14 | 2022 | macros/latex/contrib/tagpdf/link-figure-input.tex +2023/06/14 | 141163 | macros/latex/contrib/tagpdf/pac3.PNG +2023/06/14 | 1177 | macros/latex/contrib/tagpdf/README.md +2023/06/14 | 41593 | macros/latex/contrib/tagpdf/tagpdf-backend.dtx +2023/06/14 | 1730 | macros/latex/contrib/tagpdf/tagpdf.bib +2023/06/14 | 32952 | macros/latex/contrib/tagpdf/tagpdf-checks.dtx +2023/06/14 | 1593565 | macros/latex/contrib/tagpdf/tagpdf-code.pdf +2023/06/14 | 2278 | macros/latex/contrib/tagpdf/tagpdf-code.tex +2023/06/14 | 37453 | macros/latex/contrib/tagpdf/tagpdf-data.dtx +2023/06/14 | 4593 | macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty +2023/06/14 | 20874 | macros/latex/contrib/tagpdf/tagpdf.dtx +2023/06/14 | 3962 | macros/latex/contrib/tagpdf/tagpdf.ins +2023/06/14 | 27236 | macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx +2023/06/14 | 15581 | macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx +2023/06/14 | 16315 | macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx +2023/06/14 | 1021749 | macros/latex/contrib/tagpdf/tagpdf.pdf +2023/06/14 | 44243 | macros/latex/contrib/tagpdf/tagpdf-roles.dtx +2023/06/14 | 5109 | macros/latex/contrib/tagpdf/tagpdf-space.dtx +2023/06/14 | 65497 | macros/latex/contrib/tagpdf/tagpdf-struct.dtx +2023/06/14 | 115510 | macros/latex/contrib/tagpdf/tagpdf.tex +2023/06/14 | 17548 | macros/latex/contrib/tagpdf/tagpdf-tree.dtx +2023/06/14 | 31001 | macros/latex/contrib/tagpdf/tagpdf-user.dtx +2023/06/14 | 2312162 | macros/latex/contrib/tagpdf.zip 2007/08/04 | 1263 | macros/latex/contrib/talk/example.tex 2007/08/04 | 465 | macros/latex/contrib/talk/Makefile 2007/08/04 | 2162 | macros/latex/contrib/talk/README @@ -243021,37 +243021,37 @@ 2013/11/26 | 524 | macros/latex/contrib/ziffer/README 2013/11/26 | 3959 | macros/latex/contrib/ziffer/ziffer.sty 2013/11/30 | 2049 | macros/latex/contrib/ziffer.zip -2022/07/07 | 3731 | macros/latex/contrib/zref-check/CHANGELOG.md -2022/07/07 | 38 | macros/latex/contrib/zref-check/DEPENDS.txt -2022/07/07 | 1002 | macros/latex/contrib/zref-check/README.md -2022/07/07 | 1195255 | macros/latex/contrib/zref-check.zip -2022/07/07 | 743709 | macros/latex/contrib/zref-check/zref-check-code.pdf -2022/07/07 | 2171 | macros/latex/contrib/zref-check/zref-check-code.tex -2022/07/07 | 88883 | macros/latex/contrib/zref-check/zref-check.dtx -2022/07/07 | 2599 | macros/latex/contrib/zref-check/zref-check.ins -2022/07/07 | 464993 | macros/latex/contrib/zref-check/zref-check.pdf -2022/07/07 | 2718 | macros/latex/contrib/zref-check/zref-check.tex -2023/02/21 | 5650 | macros/latex/contrib/zref-clever/CHANGELOG.md -2023/02/21 | 70 | macros/latex/contrib/zref-clever/DEPENDS.txt -2023/02/21 | 823 | macros/latex/contrib/zref-clever/README.md -2023/02/21 | 1651724 | macros/latex/contrib/zref-clever.zip -2023/02/21 | 1283670 | macros/latex/contrib/zref-clever/zref-clever-code.pdf -2023/02/21 | 1539 | macros/latex/contrib/zref-clever/zref-clever-code.tex -2023/02/21 | 353205 | macros/latex/contrib/zref-clever/zref-clever.dtx -2023/02/21 | 3179 | macros/latex/contrib/zref-clever/zref-clever.ins -2023/02/21 | 345913 | macros/latex/contrib/zref-clever/zref-clever.pdf -2023/02/21 | 128822 | macros/latex/contrib/zref-clever/zref-clever.tex +2023/06/14 | 3892 | macros/latex/contrib/zref-check/CHANGELOG.md +2023/06/14 | 38 | macros/latex/contrib/zref-check/DEPENDS.txt +2023/06/14 | 1002 | macros/latex/contrib/zref-check/README.md +2023/06/14 | 1186166 | macros/latex/contrib/zref-check.zip +2023/06/14 | 745278 | macros/latex/contrib/zref-check/zref-check-code.pdf +2023/06/14 | 2175 | macros/latex/contrib/zref-check/zref-check-code.tex +2023/06/14 | 453555 | macros/latex/contrib/zref-check/zref-check-doc.pdf +2023/06/14 | 22491 | macros/latex/contrib/zref-check/zref-check-doc.tex +2023/06/14 | 67973 | macros/latex/contrib/zref-check/zref-check.dtx +2023/06/14 | 2607 | macros/latex/contrib/zref-check/zref-check.ins +2023/06/14 | 7462 | macros/latex/contrib/zref-clever/CHANGELOG.md +2023/06/14 | 70 | macros/latex/contrib/zref-clever/DEPENDS.txt +2023/06/14 | 823 | macros/latex/contrib/zref-clever/README.md +2023/06/14 | 1640524 | macros/latex/contrib/zref-clever.zip +2023/06/14 | 1273255 | macros/latex/contrib/zref-clever/zref-clever-code.pdf +2023/06/14 | 1543 | macros/latex/contrib/zref-clever/zref-clever-code.tex +2023/06/14 | 346306 | macros/latex/contrib/zref-clever/zref-clever-doc.pdf +2023/06/14 | 129103 | macros/latex/contrib/zref-clever/zref-clever-doc.tex +2023/06/14 | 346431 | macros/latex/contrib/zref-clever/zref-clever.dtx +2023/06/14 | 3187 | macros/latex/contrib/zref-clever/zref-clever.ins 2022/04/07 | 581 | macros/latex/contrib/zref/README.md -2023/01/03 | 1829 | macros/latex/contrib/zref-vario/CHANGELOG.md -2023/01/03 | 31 | macros/latex/contrib/zref-vario/DEPENDS.txt -2023/01/03 | 578 | macros/latex/contrib/zref-vario/README.md -2023/01/03 | 789113 | macros/latex/contrib/zref-vario.zip -2023/01/03 | 648126 | macros/latex/contrib/zref-vario/zref-vario-code.pdf -2023/01/03 | 1416 | macros/latex/contrib/zref-vario/zref-vario-code.tex -2023/01/03 | 37794 | macros/latex/contrib/zref-vario/zref-vario.dtx -2023/01/03 | 2599 | macros/latex/contrib/zref-vario/zref-vario.ins -2023/01/03 | 149549 | macros/latex/contrib/zref-vario/zref-vario.pdf -2023/01/03 | 14316 | macros/latex/contrib/zref-vario/zref-vario.tex +2023/06/14 | 2002 | macros/latex/contrib/zref-vario/CHANGELOG.md +2023/06/14 | 31 | macros/latex/contrib/zref-vario/DEPENDS.txt +2023/06/14 | 578 | macros/latex/contrib/zref-vario/README.md +2023/06/14 | 791320 | macros/latex/contrib/zref-vario.zip +2023/06/14 | 649972 | macros/latex/contrib/zref-vario/zref-vario-code.pdf +2023/06/14 | 1420 | macros/latex/contrib/zref-vario/zref-vario-code.tex +2023/06/14 | 149965 | macros/latex/contrib/zref-vario/zref-vario-doc.pdf +2023/06/14 | 14414 | macros/latex/contrib/zref-vario/zref-vario-doc.tex +2023/06/14 | 37871 | macros/latex/contrib/zref-vario/zref-vario.dtx +2023/06/14 | 2607 | macros/latex/contrib/zref-vario/zref-vario.ins 2022/04/07 | 706755 | macros/latex/contrib/zref.zip 2022/04/07 | 197178 | macros/latex/contrib/zref/zref.dtx 2022/04/07 | 699064 | macros/latex/contrib/zref/zref.pdf @@ -291612,7 +291612,7 @@ 2020/03/04 | 560 | systems/texlive/tlnet/archive/collection-fontsrecommended.r54074.tar.xz 2021/12/03 | 536 | systems/texlive/tlnet/archive/collection-fontutils.r61207.tar.xz 2022/02/27 | 584 | systems/texlive/tlnet/archive/collection-formatsextra.r62226.tar.xz -2023/04/30 | 592 | systems/texlive/tlnet/archive/collection-games.r66968.tar.xz +2023/06/14 | 596 | systems/texlive/tlnet/archive/collection-games.r67355.tar.xz 2022/12/07 | 596 | systems/texlive/tlnet/archive/collection-humanities.r65216.tar.xz 2021/06/15 | 456 | systems/texlive/tlnet/archive/collection-langarabic.r59594.tar.xz 2022/07/29 | 552 | systems/texlive/tlnet/archive/collection-langchinese.r63995.tar.xz @@ -299515,6 +299515,8 @@ 2019/02/28 | 1024 | systems/texlive/tlnet/archive/quicktype.r42183.tar.xz 2019/10/04 | 212988 | systems/texlive/tlnet/archive/quiz2socrative.doc.r52276.tar.xz 2019/10/04 | 2400 | systems/texlive/tlnet/archive/quiz2socrative.r52276.tar.xz +2023/06/14 | 499532 | systems/texlive/tlnet/archive/quizztex.doc.r67355.tar.xz +2023/06/14 | 532 | systems/texlive/tlnet/archive/quizztex.r67355.tar.xz 2020/11/14 | 292964 | systems/texlive/tlnet/archive/quotchap.doc.r56926.tar.xz 2020/11/14 | 2936 | systems/texlive/tlnet/archive/quotchap.r56926.tar.xz 2020/11/14 | 7588 | systems/texlive/tlnet/archive/quotchap.source.r56926.tar.xz @@ -300449,9 +300451,9 @@ 2021/07/13 | 9124 | systems/texlive/tlnet/archive/strands.source.r59906.tar.xz 2020/09/12 | 57536 | systems/texlive/tlnet/archive/stricttex.doc.r56320.tar.xz 2020/09/12 | 1880 | systems/texlive/tlnet/archive/stricttex.r56320.tar.xz -2023/06/02 | 464376 | systems/texlive/tlnet/archive/string-diagrams.doc.r67251.tar.xz -2023/06/02 | 1772 | systems/texlive/tlnet/archive/string-diagrams.r67251.tar.xz -2023/06/02 | 3668 | systems/texlive/tlnet/archive/string-diagrams.source.r67251.tar.xz +2023/06/14 | 535608 | systems/texlive/tlnet/archive/string-diagrams.doc.r67354.tar.xz +2023/06/14 | 2288 | systems/texlive/tlnet/archive/string-diagrams.r67354.tar.xz +2023/06/14 | 4968 | systems/texlive/tlnet/archive/string-diagrams.source.r67354.tar.xz 2019/12/01 | 664768 | systems/texlive/tlnet/archive/stringenc.doc.r52982.tar.xz 2019/12/01 | 23376 | systems/texlive/tlnet/archive/stringenc.r52982.tar.xz 2019/12/01 | 30628 | systems/texlive/tlnet/archive/stringenc.source.r52982.tar.xz @@ -301087,7 +301089,7 @@ 2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r64356.tar.xz -2023/06/13 | 427288 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67339.tar.xz +2023/06/14 | 427288 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67351.tar.xz 2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r53577.tar.xz 2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r53577.tar.xz 2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r53577.tar.xz @@ -301109,7 +301111,7 @@ 2022/09/13 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r64356.tar.xz -2023/06/13 | 114084 | systems/texlive/tlnet/archive/texlive-scripts.r67339.tar.xz +2023/06/14 | 114092 | systems/texlive/tlnet/archive/texlive-scripts.r67351.tar.xz 2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz 2023/05/14 | 60312 | systems/texlive/tlnet/archive/texlive-scripts.windows.r67095.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz @@ -302976,16 +302978,16 @@ 2020/07/18 | 47816 | systems/texlive/tlnet/archive/zztex.doc.r55862.tar.xz 2020/07/18 | 101724 | systems/texlive/tlnet/archive/zztex.r55862.tar.xz 2023/03/12 | 125532 | systems/texlive/tlnet/install-tl -2023/06/13 | 5735723 | systems/texlive/tlnet/install-tl-unx.tar.gz -2023/06/13 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2023/06/13 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2023/06/14 | 5736847 | systems/texlive/tlnet/install-tl-unx.tar.gz +2023/06/14 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2023/06/14 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2023/05/13 | 5083 | systems/texlive/tlnet/install-tl-windows.bat -2023/06/13 | 21037656 | systems/texlive/tlnet/install-tl-windows.exe -2023/06/13 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2023/06/13 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2023/06/13 | 26025447 | systems/texlive/tlnet/install-tl.zip -2023/06/13 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2023/06/13 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2023/06/14 | 21036375 | systems/texlive/tlnet/install-tl-windows.exe +2023/06/14 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2023/06/14 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2023/06/14 | 26025457 | systems/texlive/tlnet/install-tl.zip +2023/06/14 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2023/06/14 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc 2023/03/19 | 1229 | systems/texlive/tlnet/README.md 2023/03/19 | 0 | systems/texlive/tlnet/TEXLIVE_2023 2023/01/17 | 8401 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg @@ -302995,7 +302997,7 @@ 2023/01/17 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg 2023/01/17 | 49938 | systems/texlive/tlnet/tlpkg/installer/config.guess 2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt -2023/06/12 | 7526 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +2023/06/13 | 7576 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2023/05/31 | 215902 | systems/texlive/tlnet/tlpkg/installer/curl/curl-ca-bundle.crt 2020/04/15 | 2606592 | systems/texlive/tlnet/tlpkg/installer/curl/curl.exe 2017/04/16 | 2629 | systems/texlive/tlnet/tlpkg/installer/installer-options.txt @@ -303037,12 +303039,12 @@ 2023/02/21 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm 2021/12/21 | 5429 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm 2023/04/08 | 28167 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm -2023/06/13 | 18129130 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2023/06/13 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2023/06/14 | 18130369 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2023/06/14 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2023/02/20 | 86803 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm -2023/06/13 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2023/06/13 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2023/06/13 | 2455028 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2023/06/14 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2023/06/14 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2023/06/14 | 2452800 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2023/02/20 | 58928 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm 2023/06/11 | 42749 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm 2023/02/21 | 16138 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm @@ -313555,7 +313557,7 @@ 2014/07/05 | 611 | systems/win32/yandy/README 2014/07/05 | 1004628 | systems/win32/yandy/yandy-src.tar.xz 2014/07/05 | 1012416 | systems/win32/yandy.zip -2023/06/14 | 186 | timestamp +2023/06/15 | 186 | timestamp 2002/08/26 | 61898 | usergrps/dante/antrag.pdf 2002/08/26 | 118217 | usergrps/dante/antrag.ps 2021/11/11 | 917 | usergrps/dante/dtk/doc/beispiel.bib diff --git a/FILES.byname.gz b/FILES.byname.gz index 76bc4e5332..c5fddfe42d 100644 Binary files a/FILES.byname.gz and b/FILES.byname.gz differ diff --git a/FILES.last07days b/FILES.last07days index 183c078f67..9542693617 100644 --- a/FILES.last07days +++ b/FILES.last07days @@ -1,47 +1,172 @@ +2023/06/14 | 93009 | language/japanese/BX/bxjscls/bxjscls-manual.tex +2023/06/14 | 901120 | macros/generic/soul.zip +2023/06/14 | 8652 | macros/latex/contrib/tagpdf/ex-AF-file.pdf +2023/06/14 | 829811 | language/japanese/BX/bxjscls/bxjscls.pdf +2023/06/14 | 8281 | macros/latex/contrib/tagpdf/global-ex.png +2023/06/14 | 823 | macros/latex/contrib/zref-clever/README.md +2023/06/14 | 80 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln8.tex +2023/06/14 | 80 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln7.tex +2023/06/14 | 801 | macros/latex/contrib/tagpdf/ex-tagpdf-template.tex +2023/06/14 | 791320 | macros/latex/contrib/zref-vario.zip +2023/06/14 | 7854 | macros/latex/contrib/tagpdf/ex-formula-problem-luatex.pdf +2023/06/14 | 777 | macros/latex/contrib/tagpdf/ex-spaceglyph-listings.tex +2023/06/14 | 762 | macros/generic/soul/README.md +2023/06/14 | 7462 | macros/latex/contrib/zref-clever/CHANGELOG.md +2023/06/14 | 745278 | macros/latex/contrib/zref-check/zref-check-code.pdf +2023/06/14 | 70 | macros/latex/contrib/zref-clever/DEPENDS.txt +2023/06/14 | 6842 | macros/latex/contrib/tagpdf/ex-softhyphen.pdf +2023/06/14 | 67973 | macros/latex/contrib/zref-check/zref-check.dtx +2023/06/14 | 6769 | language/japanese/BX/bxjscls/README.md +2023/06/14 | 6626 | macros/latex/contrib/tagpdf/ex-attribute-luatex.pdf +2023/06/14 | 659575 | graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.pdf +2023/06/14 | 65497 | macros/latex/contrib/tagpdf/tagpdf-struct.dtx +2023/06/14 | 649972 | macros/latex/contrib/zref-vario/zref-vario-code.pdf +2023/06/14 | 647284 | graphics/pgf/contrib/fenetrecas.zip +2023/06/14 | 60 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln2.tex +2023/06/14 | 596 | systems/texlive/tlnet/archive/collection-games.r67355.tar.xz +2023/06/14 | 5797 | macros/latex/contrib/tagpdf/ex-patch-sectioning-memoir.tex +2023/06/14 | 578 | macros/latex/contrib/zref-vario/README.md +2023/06/14 | 5736847 | systems/texlive/tlnet/install-tl-unx.tar.gz +2023/06/14 | 554 | macros/latex/contrib/runcode/generated/testWithrunR.tex +2023/06/14 | 546927 | macros/latex/contrib/quizztex/doc/quizztex-doc-fr.pdf +2023/06/14 | 542183 | graphics/pgf/contrib/string-diagrams.zip +2023/06/14 | 540997 | macros/latex/contrib/quizztex.zip +2023/06/14 | 535608 | systems/texlive/tlnet/archive/string-diagrams.doc.r67354.tar.xz +2023/06/14 | 532 | systems/texlive/tlnet/archive/quizztex.r67355.tar.xz +2023/06/14 | 5109 | macros/latex/contrib/tagpdf/tagpdf-space.dtx +2023/06/14 | 509029 | macros/generic/soul/soul-ori.pdf +2023/06/14 | 4 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln6.tex +2023/06/14 | 499532 | systems/texlive/tlnet/archive/quizztex.doc.r67355.tar.xz +2023/06/14 | 4968 | systems/texlive/tlnet/archive/string-diagrams.source.r67354.tar.xz +2023/06/14 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2023/06/14 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2023/06/14 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2023/06/14 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2023/06/14 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2023/06/14 | 4618 | macros/latex/contrib/tagpdf/ex-spaceglyph-listings.pdf +2023/06/14 | 4593 | macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty +2023/06/14 | 453555 | macros/latex/contrib/zref-check/zref-check-doc.pdf +2023/06/14 | 44243 | macros/latex/contrib/tagpdf/tagpdf-roles.dtx +2023/06/14 | 4284 | macros/latex/contrib/tagpdf/ex-patch-sectioning-koma.tex +2023/06/14 | 427288 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67351.tar.xz +2023/06/14 | 423892 | language/japanese/BX/bxjscls/bxjscls.dtx +2023/06/14 | 41593 | macros/latex/contrib/tagpdf/tagpdf-backend.dtx +2023/06/14 | 415458 | macros/latex/contrib/runcode.zip +2023/06/14 | 4153 | macros/latex/contrib/tagpdf/ex-alt-actualtext.tex +2023/06/14 | 41000 | macros/latex/contrib/quizztex/tex/quizztex.sty +2023/06/14 | 4079351 | biblio/ctan-bibdata.zip +2023/06/14 | 3962 | macros/latex/contrib/tagpdf/tagpdf.ins +2023/06/14 | 395702 | language/japanese/BX/bxjscls/bxjscls-manual.pdf +2023/06/14 | 38 | macros/latex/contrib/zref-check/DEPENDS.txt +2023/06/14 | 3892 | macros/latex/contrib/zref-check/CHANGELOG.md +2023/06/14 | 37871 | macros/latex/contrib/zref-vario/zref-vario.dtx +2023/06/14 | 377262 | macros/generic/soul/soul.pdf +2023/06/14 | 37453 | macros/latex/contrib/tagpdf/tagpdf-data.dtx +2023/06/14 | 3681050 | biblio/ctan-bibdata/ctan.pdf +2023/06/14 | 346431 | macros/latex/contrib/zref-clever/zref-clever.dtx +2023/06/14 | 346306 | macros/latex/contrib/zref-clever/zref-clever-doc.pdf +2023/06/14 | 32952 | macros/latex/contrib/tagpdf/tagpdf-checks.dtx +2023/06/14 | 31 | macros/latex/contrib/zref-vario/DEPENDS.txt +2023/06/14 | 3187 | macros/latex/contrib/zref-clever/zref-clever.ins +2023/06/14 | 31001 | macros/latex/contrib/tagpdf/tagpdf-user.dtx +2023/06/14 | 30247 | macros/generic/soul/soul.dtx +2023/06/14 | 2790409 | biblio/ctan-bibdata/ctan.bib +2023/06/14 | 27236 | macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx +2023/06/14 | 2637 | macros/latex/contrib/tagpdf/ex-patch-list.tex +2023/06/14 | 2607 | macros/latex/contrib/zref-vario/zref-vario.ins +2023/06/14 | 2607 | macros/latex/contrib/zref-check/zref-check.ins +2023/06/14 | 26025457 | systems/texlive/tlnet/install-tl.zip +2023/06/14 | 25 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln5.tex +2023/06/14 | 25 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln4.tex +2023/06/14 | 2528 | macros/latex/contrib/tagpdf/ex-patch-list-obsolete.tex +2023/06/14 | 247859 | macros/latex/contrib/runcode/runcode.pdf +2023/06/14 | 2452800 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2023/06/14 | 23311 | macros/latex/contrib/tagpdf/acrobat.png +2023/06/14 | 2312162 | macros/latex/contrib/tagpdf.zip +2023/06/14 | 23114 | macros/latex/contrib/quizztex/doc/quizztex-doc-fr.tex +2023/06/14 | 2288 | systems/texlive/tlnet/archive/string-diagrams.r67354.tar.xz +2023/06/14 | 22818 | macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.pdf +2023/06/14 | 2278 | macros/latex/contrib/tagpdf/tagpdf-code.tex +2023/06/14 | 22491 | macros/latex/contrib/zref-check/zref-check-doc.tex +2023/06/14 | 2175 | macros/latex/contrib/zref-check/zref-check-code.tex +2023/06/14 | 2150 | macros/latex/contrib/tagpdf/ex-mc-manual-para-split-obsolete.tex +2023/06/14 | 21067 | macros/latex/contrib/tagpdf/ex-patch-sectioning-memoir.pdf +2023/06/14 | 21036375 | systems/texlive/tlnet/install-tl-windows.exe +2023/06/14 | 20874 | macros/latex/contrib/tagpdf/tagpdf.dtx +2023/06/14 | 2022 | macros/latex/contrib/tagpdf/link-figure-input.tex +2023/06/14 | 2002 | macros/latex/contrib/zref-vario/CHANGELOG.md +2023/06/14 | 19363 | macros/latex/contrib/tagpdf/ex-tagpdf-template.pdf +2023/06/14 | 18978 | macros/latex/contrib/runcode/runcode_troubleshoot.tex +2023/06/14 | 18461 | macros/latex/contrib/tagpdf/ex-patch-sectioning-koma-luatex.pdf +2023/06/14 | 18437 | graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.tex +2023/06/14 | 1840 | macros/generic/soul/soul.ins +2023/06/14 | 18130369 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2023/06/14 | 17742 | macros/latex/contrib/tagpdf/ex-alt-actualtext-luatex.pdf +2023/06/14 | 17548 | macros/latex/contrib/tagpdf/tagpdf-tree.dtx +2023/06/14 | 1730 | macros/latex/contrib/tagpdf/tagpdf.bib +2023/06/14 | 17239 | macros/latex/contrib/runcode/runcode.sty +2023/06/14 | 16993 | language/japanese/BX/bxjscls/README-ja.md +2023/06/14 | 16888 | macros/latex/contrib/tagpdf/ex-patch-list-luatex.pdf +2023/06/14 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx +2023/06/14 | 1677516 | install/macros/latex/contrib/zref-clever.tds.zip +2023/06/14 | 1640524 | macros/latex/contrib/zref-clever.zip +2023/06/14 | 16315 | macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx +2023/06/14 | 161688 | macros/latex/contrib/runcode/runcode_troubleshoot.pdf +2023/06/14 | 16099 | macros/latex/contrib/runcode/runcode.tex +2023/06/14 | 1593565 | macros/latex/contrib/tagpdf/tagpdf-code.pdf +2023/06/14 | 15581 | macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx +2023/06/14 | 1543 | macros/latex/contrib/zref-clever/zref-clever-code.tex +2023/06/14 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2023/06/14 | 1537 | macros/latex/contrib/tagpdf/ex-structure-obsolete.tex +2023/06/14 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2023/06/14 | 149965 | macros/latex/contrib/zref-vario/zref-vario-doc.pdf +2023/06/14 | 1461 | language/japanese/BX/bxjscls/LICENSE +2023/06/14 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2023/06/14 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2023/06/14 | 1449 | macros/latex/contrib/runcode/README +2023/06/14 | 14414 | macros/latex/contrib/zref-vario/zref-vario-doc.tex +2023/06/14 | 1420 | macros/latex/contrib/zref-vario/zref-vario-code.tex +2023/06/14 | 14130 | graphics/pgf/contrib/fenetrecas/tex/FenetreCas.sty +2023/06/14 | 141163 | macros/latex/contrib/tagpdf/pac3.PNG +2023/06/14 | 1398 | macros/latex/contrib/tagpdf/ex-attribute.tex +2023/06/14 | 1344485 | language/japanese/BX/bxjscls.zip +2023/06/14 | 133684 | macros/generic/soul/soul-ori.dtx +2023/06/14 | 12 | macros/latex/contrib/runcode/generated/runcode_troubleshoot_inln9.tex +2023/06/14 | 129103 | macros/latex/contrib/zref-clever/zref-clever-doc.tex +2023/06/14 | 1273255 | macros/latex/contrib/zref-clever/zref-clever-code.pdf +2023/06/14 | 1237 | macros/latex/contrib/tagpdf/ex-AF-file.tex +2023/06/14 | 1186166 | macros/latex/contrib/zref-check.zip +2023/06/14 | 1177 | macros/latex/contrib/tagpdf/README.md +2023/06/14 | 115510 | macros/latex/contrib/tagpdf/tagpdf.tex +2023/06/14 | 114092 | systems/texlive/tlnet/archive/texlive-scripts.r67351.tar.xz +2023/06/14 | 1073 | macros/latex/contrib/tagpdf/ex-softhyphen.tex +2023/06/14 | 1021749 | macros/latex/contrib/tagpdf/tagpdf.pdf +2023/06/14 | 1019 | macros/latex/contrib/tagpdf/ex-formula-problem.tex +2023/06/14 | 1002 | macros/latex/contrib/zref-check/README.md 2023/06/13 | 996 | systems/texlive/tlnet/archive/collection-luatex.r67348.tar.xz 2023/06/13 | 873692 | systems/texlive/tlnet/archive/postit.doc.r67344.tar.xz -2023/06/13 | 800 | macros/latex/contrib/quizztex/README.md +2023/06/13 | 7576 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2023/06/13 | 7312 | systems/texlive/tlnet/archive/postnotes.r67345.tar.xz 2023/06/13 | 66188 | systems/texlive/tlnet/archive/siunitx.r67346.tar.xz 2023/06/13 | 62072 | systems/texlive/tlnet/archive/acmart.source.r67343.tar.xz -2023/06/13 | 5735723 | systems/texlive/tlnet/install-tl-unx.tar.gz +2023/06/13 | 551603 | graphics/pgf/contrib/string-diagrams/string-diagrams.pdf 2023/06/13 | 5080 | systems/texlive/tlnet/archive/luahttp.r67348.tar.xz -2023/06/13 | 505094 | macros/latex/contrib/quizztex/doc/quizztex-doc-fr.pdf -2023/06/13 | 499669 | macros/latex/contrib/quizztex.zip -2023/06/13 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 -2023/06/13 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2023/06/13 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc -2023/06/13 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2023/06/13 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2023/06/13 | 4660368 | systems/texlive/tlnet/archive/acmart.doc.r67343.tar.xz 2023/06/13 | 4552 | systems/texlive/tlnet/archive/postit.r67344.tar.xz 2023/06/13 | 43072 | systems/texlive/tlnet/archive/acmart.r67343.tar.xz -2023/06/13 | 427288 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67339.tar.xz 2023/06/13 | 424772 | systems/texlive/tlnet/archive/playcards.doc.r67342.tar.xz -2023/06/13 | 4080586 | biblio/ctan-bibdata.zip -2023/06/13 | 39091 | macros/latex/contrib/quizztex/tex/quizztex.sty -2023/06/13 | 3681158 | biblio/ctan-bibdata/ctan.pdf 2023/06/13 | 33600 | systems/texlive/tlnet/archive/tugboat-plain.r67347.tar.xz -2023/06/13 | 2790050 | biblio/ctan-bibdata/ctan.bib -2023/06/13 | 26025447 | systems/texlive/tlnet/install-tl.zip -2023/06/13 | 2455028 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2023/06/13 | 3008 | graphics/pgf/contrib/string-diagrams/README.md 2023/06/13 | 22248 | systems/texlive/tlnet/archive/postnotes.source.r67345.tar.xz -2023/06/13 | 22185 | macros/latex/contrib/quizztex/doc/quizztex-doc-fr.tex 2023/06/13 | 220392 | systems/texlive/tlnet/archive/tugboat-plain.doc.r67347.tar.xz 2023/06/13 | 2184 | systems/texlive/tlnet/archive/playcards.r67342.tar.xz -2023/06/13 | 21037656 | systems/texlive/tlnet/install-tl-windows.exe -2023/06/13 | 18129130 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2023/06/13 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx -2023/06/13 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2023/06/13 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2023/06/13 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2023/06/13 | 16030 | graphics/pgf/contrib/string-diagrams/string-diagrams.dtx +2023/06/13 | 1566 | graphics/pgf/contrib/string-diagrams/string-diagrams.ins 2023/06/13 | 1458988 | systems/texlive/tlnet/archive/tex4ht.source.r67349.tar.xz -2023/06/13 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 2023/06/13 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r67349.tar.xz 2023/06/13 | 136004 | systems/texlive/tlnet/archive/luahttp.doc.r67348.tar.xz 2023/06/13 | 1268764 | systems/texlive/tlnet/archive/siunitx.doc.r67346.tar.xz 2023/06/13 | 118196 | systems/texlive/tlnet/archive/siunitx.source.r67346.tar.xz -2023/06/13 | 114084 | systems/texlive/tlnet/archive/texlive-scripts.r67339.tar.xz 2023/06/13 | 1099872 | systems/texlive/tlnet/archive/tex4ht.r67349.tar.xz 2023/06/13 | 1005208 | systems/texlive/tlnet/archive/postnotes.doc.r67345.tar.xz 2023/06/12 | 996 | macros/latex/contrib/siunitx/README.md @@ -53,7 +178,6 @@ 2023/06/12 | 847740 | macros/latex/contrib/postnotes/postnotes-code.pdf 2023/06/12 | 788469 | support/TeX4ht/source/tex4ht-fonts-cjk.tex 2023/06/12 | 784544 | macros/latex/contrib/acmart/samples/sample-lualatex.pdf -2023/06/12 | 7526 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2023/06/12 | 73620 | macros/plain/contrib/tugboat/tugboat.sty 2023/06/12 | 72953 | macros/latex/contrib/siunitx/CHANGELOG.md 2023/06/12 | 691145 | macros/latex/contrib/siunitx/siunitx.pdf @@ -68,9 +192,7 @@ 2023/06/12 | 563627 | macros/latex/contrib/acmart/samples/sample-acmtog.pdf 2023/06/12 | 5544 | macros/latex/contrib/siunitx/siunitx-locale.dtx 2023/06/12 | 54950 | macros/latex/contrib/acmart/samples/samples.dtx -2023/06/12 | 549184 | graphics/pgf/contrib/string-diagrams/string-diagrams.pdf 2023/06/12 | 54011 | macros/latex/contrib/siunitx/siunitx-table.dtx -2023/06/12 | 539578 | graphics/pgf/contrib/string-diagrams.zip 2023/06/12 | 533207 | macros/latex/contrib/postit/doc/postit-doc-fr.pdf 2023/06/12 | 530646 | macros/latex/contrib/postit/doc/postit-doc-en.pdf 2023/06/12 | 49561 | macros/latex/contrib/postit/tex/postit.sty @@ -89,7 +211,6 @@ 2023/06/12 | 3348 | macros/luatex/latex/luahttp/README.md 2023/06/12 | 31776 | macros/latex/contrib/siunitx/siunitx-emulation.dtx 2023/06/12 | 31738 | macros/latex/contrib/siunitx/siunitx-version-1.cfg -2023/06/12 | 3008 | graphics/pgf/contrib/string-diagrams/README.md 2023/06/12 | 2951 | macros/latex/contrib/siunitx/siunitx-binary.dtx 2023/06/12 | 287547 | macros/latex/contrib/acmart/acmart.dtx 2023/06/12 | 2773 | macros/latex/contrib/acmart/acmart.bib @@ -106,9 +227,7 @@ 2023/06/12 | 177584 | macros/latex/contrib/postnotes/postnotes-doc.pdf 2023/06/12 | 1729 | macros/latex/contrib/siunitx/siunitx-binary.cfg 2023/06/12 | 160377 | macros/latex/contrib/siunitx/siunitx.tex -2023/06/12 | 1566 | graphics/pgf/contrib/string-diagrams/string-diagrams.ins 2023/06/12 | 1566753 | install/macros/latex/contrib/siunitx.tds.zip -2023/06/12 | 15324 | graphics/pgf/contrib/string-diagrams/string-diagrams.dtx 2023/06/12 | 153028 | macros/latex/contrib/siunitx/siunitx-number.dtx 2023/06/12 | 1521228 | macros/latex/contrib/siunitx.zip 2023/06/12 | 14 | macros/latex/contrib/postnotes/DEPENDS.txt @@ -179,6 +298,7 @@ 2023/06/11 | 81195 | macros/latex-dev/base/ltshipout.dtx 2023/06/11 | 806110 | info/knuth-hint/errata/errata.eight.hnt 2023/06/11 | 8051 | macros/latex-dev/base/ltnews.tex +2023/06/11 | 804 | macros/latex/contrib/quizztex/README.md 2023/06/11 | 804008 | macros/latex-dev/base/ltfilehook-code.pdf 2023/06/11 | 800571 | macros/latex-dev/required/latex-lab/latex-lab-footnotes.pdf 2023/06/11 | 789921 | info/knuth-pdf/other/dvicopy.pdf @@ -1399,2580 +1519,3 @@ 2023/06/08 | 102 | macros/latex/base/lthooks-code.tex 2023/06/08 | 10251 | macros/latex/base/webcomp.err 2023/06/08 | 10199 | macros/latex/required/amsmath/amsopn.dtx -2023/06/07 | 9 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_simple.txt -2023/06/07 | 9 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_reference_simple.txt -2023/06/07 | 9 | support/texlab/crates/parser/src/test_data/latex/citation/citation_missing_brace.txt -2023/06/07 | 99 | graphics/asymptote/base/asy_filetype.vim -2023/06/07 | 99993 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/utilityclass.png -2023/06/07 | 998 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_thmtools.txt.snap -2023/06/07 | 993 | support/texlab/crates/parser/src/test_data/bibtex/samples/knuth_1984.txt -2023/06/07 | 9919 | graphics/asymptote/LspCpp/third_party/utfcpp/source/utf8/unchecked.h -2023/06/07 | 990 | graphics/asymptote/examples/RiemannSphere.asy -2023/06/07 | 989121 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/Glew/CustomGL/glew.h -2023/06/07 | 9890 | support/texlab/crates/base-db/src/semantics/tex.rs -2023/06/07 | 988 | graphics/asymptote/GUI/res/icons/eye.svg -2023/06/07 | 987 | support/texlab/crates/commands/src/change_env.rs -2023/06/07 | 987 | graphics/asymptote/examples/triads.asy -2023/06/07 | 986 | graphics/asymptote/predicates.h -2023/06/07 | 986 | graphics/asymptote/GUI/res/icons/brush.svg -2023/06/07 | 9867 | graphics/asymptote/runstring.in -2023/06/07 | 985 | graphics/asymptote/GUI/res/icons/chevron-with-circle-right.svg -2023/06/07 | 9856 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/gtest-filepath.h -2023/06/07 | 98539 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/readertest.cpp -2023/06/07 | 984 | support/texlab/crates/texlab/src/features/definition/document.rs -2023/06/07 | 983 | graphics/asymptote/LspCpp/third_party/rapidjson/RapidJSONConfig.cmake.in -2023/06/07 | 982 | graphics/asymptote/LspCpp/third_party/rapidjson/example/CMakeLists.txt -2023/06/07 | 9822 | graphics/asymptote/doc/FAQ/m-html.pl -2023/06/07 | 980 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_simple.txt.snap -2023/06/07 | 98084 | graphics/asymptote/GUI/Window1.py -2023/06/07 | 9805 | graphics/asymptote/doc/asymptote.sty -2023/06/07 | 978 | graphics/asymptote/examples/worksheet.asy -2023/06/07 | 978 | graphics/asymptote/examples/filesurface.asy -2023/06/07 | 9784 | graphics/asymptote/triple.h -2023/06/07 | 976 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__article_rivest_1978.snap -2023/06/07 | 9765 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/schema.zh-cn.md -2023/06/07 | 9765 | graphics/asymptote/fundec.cc -2023/06/07 | 975 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@004.txt.snap -2023/06/07 | 9755 | graphics/asymptote/v3dfile.cc -2023/06/07 | 974 | graphics/asymptote/prc/Makefile -2023/06/07 | 973 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/executeCommand.h -2023/06/07 | 973 | graphics/asymptote/examples/fequlogo.asy -2023/06/07 | 971 | graphics/asymptote/LspCpp/third_party/rapidjson/test/perftest/perftest.cpp -2023/06/07 | 9708 | graphics/asymptote/profiler.h -2023/06/07 | 969 | graphics/asymptote/runfile.h -2023/06/07 | 9689 | graphics/asymptote/doc/asy.1 -2023/06/07 | 968193 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/Glew/glew.c -2023/06/07 | 966 | graphics/asymptote/tests/array/solve.asy -2023/06/07 | 965 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_definition_simple.txt.snap -2023/06/07 | 964 | graphics/asymptote/LspCpp/src/jsonrpc/Context.cpp -2023/06/07 | 9641 | graphics/asymptote/LspCpp/src/jsonrpc/TcpServer.cpp -2023/06/07 | 95 | graphics/asymptote/prc/test.asy -2023/06/07 | 95 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/network-uri.dir/depend.make -2023/06/07 | 9571 | support/texlab/crates/texlab/src/util/cursor.rs -2023/06/07 | 9562 | graphics/asymptote/base/bezulate.asy -2023/06/07 | 954 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__patent_almendro_1998.snap -2023/06/07 | 954 | graphics/asymptote/examples/poster.asy -2023/06/07 | 953 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@005.txt.snap -2023/06/07 | 952118 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/nuklear.h -2023/06/07 | 951 | graphics/asymptote/GUI/res/icons/magnifying-glass.svg -2023/06/07 | 9502 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_list_output_unittest.py -2023/06/07 | 94 | graphics/asymptote/LspCpp/third_party/rapidjson/include_dirs.js -2023/06/07 | 9479 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__knuth_1984.txt.snap -2023/06/07 | 946 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_multiple_entries.snap -2023/06/07 | 946 | graphics/asymptote/examples/animations/cube.asy -2023/06/07 | 94332 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/reader.h -2023/06/07 | 942 | graphics/asymptote/LspCpp/third_party/rapidjson/example/traverseaspointer.cpp -2023/06/07 | 941 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsRange.h -2023/06/07 | 9375 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/msinttypes/stdint.h -2023/06/07 | 936 | graphics/asymptote/tests/array/array.asy -2023/06/07 | 935 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/move1.dot -2023/06/07 | 934 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/declaration_definition.h -2023/06/07 | 9349 | graphics/asymptote/LspCpp/third_party/rapidjson/example/lookaheadparser/lookaheadparser.cpp -2023/06/07 | 933 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__section.snap -2023/06/07 | 9334 | graphics/asymptote/base/plain_paths.asy -2023/06/07 | 932 | support/texlab/crates/texlab/src/features/link.rs -2023/06/07 | 9328 | graphics/asymptote/doc/FAQ/bfnnconv.pl -2023/06/07 | 9327 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_xml_test_utils.py -2023/06/07 | 9319 | graphics/asymptote/glrender.h -2023/06/07 | 9318 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_stress_test.cc -2023/06/07 | 930 | graphics/asymptote/examples/polararea.asy -2023/06/07 | 929 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/platforms.md -2023/06/07 | 9298 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/type.json -2023/06/07 | 9267 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/src/gmock-internal-utils.cc -2023/06/07 | 9252 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/biginteger.h -2023/06/07 | 9251 | graphics/asymptote/errors -2023/06/07 | 924 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/did_open.h -2023/06/07 | 923 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/required.json -2023/06/07 | 92378 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/iterative-parser-states-diagram.png -2023/06/07 | 922 | graphics/asymptote/doc/imagecontour.asy -2023/06/07 | 920 | graphics/asymptote/makeUnique.h -2023/06/07 | 9206 | support/texlab/crates/base-db/src/workspace.rs -2023/06/07 | 916 | graphics/asymptote/opcodes.h -2023/06/07 | 912 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/architecture.dot -2023/06/07 | 912 | graphics/asymptote/doc/errorbars.asy -2023/06/07 | 911 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_reference_options.txt.snap -2023/06/07 | 911 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_definition_optional_arg.txt.snap -2023/06/07 | 9104 | graphics/asymptote/symbol.cc -2023/06/07 | 90 | support/texlab/crates/parser/src/test_data/latex/structure/structure_nested.txt -2023/06/07 | 908 | graphics/asymptote/modifier.h -2023/06/07 | 908 | graphics/asymptote/coenv.h -2023/06/07 | 908 | graphics/asymptote/base/map.asy -2023/06/07 | 9088 | graphics/asymptote/application.h -2023/06/07 | 9070 | support/texlab/crates/symbols/src/document/tex.rs -2023/06/07 | 9059 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/bin/jsonschema_suite -2023/06/07 | 904 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_857.txt.snap -2023/06/07 | 9036 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/allocatorstest.cpp -2023/06/07 | 9032 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/strtod.h -2023/06/07 | 9022 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/src/nfd_gtk.c -2023/06/07 | 9021 | graphics/asymptote/psfile.h -2023/06/07 | 901 | graphics/asymptote/virtualfieldaccess.cc -2023/06/07 | 900 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_command.txt.snap -2023/06/07 | 900 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/range_formatting.h -2023/06/07 | 8 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail16.json -2023/06/07 | 898 | support/texlab/crates/parser/src/test_data/bibtex/samples/kastenholz_2006.txt -2023/06/07 | 897 | graphics/asymptote/doc/flowchartdemo.asy -2023/06/07 | 896 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/maxLength.json -2023/06/07 | 895 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/maxLength.json -2023/06/07 | 8955 | support/texlab/crates/citeproc/src/field/text.rs -2023/06/07 | 891 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/checkConstructorsStatus.h -2023/06/07 | 890 | support/texlab/crates/citeproc/src/lib.rs -2023/06/07 | 88 | graphics/asymptote/cudareflect/tinyexr/examples/exrfilter/README.md -2023/06/07 | 8894 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/README.md -2023/06/07 | 8883 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/pointer.md -2023/06/07 | 886 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/minLength.json -2023/06/07 | 886 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/minLength.json -2023/06/07 | 886 | graphics/asymptote/angle.h -2023/06/07 | 8868 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__kastenholz_2006.txt.snap -2023/06/07 | 8861 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample6_unittest.cc -2023/06/07 | 883 | graphics/asymptote/cudareflect/helper.cuh -2023/06/07 | 88387 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest.h -2023/06/07 | 881 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsDocumentUri.h -2023/06/07 | 8811 | graphics/asymptote/xstream.h -2023/06/07 | 880 | graphics/asymptote/doc/xasy.1x -2023/06/07 | 8804 | graphics/asymptote/runmath.in -2023/06/07 | 879 | graphics/asymptote/examples/markregular.asy -2023/06/07 | 8795 | graphics/asymptote/LspCpp/third_party/rapidjson/readme.zh-cn.md -2023/06/07 | 8792 | graphics/asymptote/prc/PRCTools/iPRCFile.cc -2023/06/07 | 8789 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock-pp-string_test.cc -2023/06/07 | 877 | graphics/asymptote/GUI/Widg_addPolyOpt.py -2023/06/07 | 877 | graphics/asymptote/doc/markers2.asy -2023/06/07 | 8767 | graphics/asymptote/LspCpp/third_party/uri/test/uri_normalization_test.cpp -2023/06/07 | 875 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__hover__component_known_package.snap -2023/06/07 | 873 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/resolveTypeHierarchy.h -2023/06/07 | 872 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/data/menu.json -2023/06/07 | 8729 | graphics/asymptote/base/plain_pens.asy -2023/06/07 | 870 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/generateDelegateMethods.h -2023/06/07 | 8702 | graphics/asymptote/LspCpp/third_party/rapidjson/example/schemavalidator/schemavalidator.cpp -2023/06/07 | 86 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/types/readme.txt -2023/06/07 | 86 | graphics/asymptote/doc/cylinderskeleton.asy -2023/06/07 | 869 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/checkDelegateMethodsStatus.h -2023/06/07 | 868 | graphics/asymptote/examples/twistedtubes.asy -2023/06/07 | 867 | graphics/asymptote/cudareflect/tinyexr/test/unit/config-msvc.py -2023/06/07 | 866 | graphics/asymptote/examples/xxsq01x-1.asy -2023/06/07 | 86552 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/advanced.md -2023/06/07 | 864 | support/texlab/crates/syntax/src/lib.rs -2023/06/07 | 863 | graphics/asymptote/GUI/res/icons/edit.svg -2023/06/07 | 861 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__biblatex_include_options.txt.snap -2023/06/07 | 860 | support/texlab/crates/parser/src/test_data/bibtex/samples/blom_2021.txt -2023/06/07 | 85 | graphics/asymptote/cudareflect/tinyexr/vcsetup2019.bat -2023/06/07 | 858 | support/texlab/crates/texlab/src/features/hover/label.rs -2023/06/07 | 858 | graphics/asymptote/GUI/res/icons/center.svg -2023/06/07 | 85818 | graphics/asymptote/base/three.asy -2023/06/07 | 857 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/pattern.json -2023/06/07 | 857 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/pattern.json -2023/06/07 | 856 | graphics/asymptote/examples/animations/sphere.asy -2023/06/07 | 8561 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_output_test_.cc -2023/06/07 | 854 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/definitions.json -2023/06/07 | 8543232 | graphics/asymptote/binaries/i386-windows/texlive/asy.exe -2023/06/07 | 85342 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/gtest-port.h -2023/06/07 | 8532 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/pointer.zh-cn.md -2023/06/07 | 8528 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/src/gmock.cc -2023/06/07 | 8519 | graphics/asymptote/cudareflect/ReflectanceMapper.cu -2023/06/07 | 84 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/unittestschema/oneOf_address.json -2023/06/07 | 84 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/unittestschema/anyOf_address.json -2023/06/07 | 84 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/unittestschema/allOf_address.json -2023/06/07 | 849 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error1.txt.snap -2023/06/07 | 849 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/types/booleans.json -2023/06/07 | 848 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/formatting.h -2023/06/07 | 848 | graphics/asymptote/base/shaders/sum2.glsl -2023/06/07 | 846 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__float.snap -2023/06/07 | 846 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/resolveUnimplementedAccessors.h -2023/06/07 | 8469 | support/texlab/crates/texlab/tests/lsp/fixture.rs -2023/06/07 | 8469 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/dtoa.h -2023/06/07 | 845 | graphics/asymptote/envcompleter.h -2023/06/07 | 8456 | graphics/asymptote/cudareflect/tinyexr/examples/deepview/trackball.cc -2023/06/07 | 843 | graphics/asymptote/tests/arith/integer.asy -2023/06/07 | 8439 | graphics/asymptote/runpath.in -2023/06/07 | 842 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsTextDocumentEdit.h -2023/06/07 | 8429 | graphics/asymptote/examples/thermodynamics.asy -2023/06/07 | 8422912 | graphics/asymptote/binaries/x86_64-windows/texlive/asy.exe -2023/06/07 | 841 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__folding_range__latex.snap -2023/06/07 | 841 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__equation.snap -2023/06/07 | 840 | graphics/asymptote/GUI/res/icons/android-folder-open.svg -2023/06/07 | 8407 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_test_utils.py -2023/06/07 | 8403 | graphics/asymptote/base/simplex.asy -2023/06/07 | 839 | graphics/asymptote/examples/venn3.asy -2023/06/07 | 838 | support/texlab/crates/texlab/src/features/completion/acronym_ref.rs -2023/06/07 | 8386 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-catch-exceptions-test_.cc -2023/06/07 | 8371 | graphics/asymptote/prc/PRCbitStream.cc -2023/06/07 | 8361 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/msinttypes/inttypes.h -2023/06/07 | 834 | graphics/asymptote/LspCpp/third_party/rapidjson/test/perftest/CMakeLists.txt -2023/06/07 | 83449 | graphics/asymptote/lex.yy.cc -2023/06/07 | 832 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-255456016cca60ddb5c5ed6898182e13739bf687b17d1411e97bb60ad95e7a84_min -2023/06/07 | 831 | graphics/asymptote/runbacktrace.in -2023/06/07 | 831 | graphics/asymptote/GUI/res/icons/android-radio-button-on.svg -2023/06/07 | 831 | graphics/asymptote/cudareflect/tinyexr/test/fuzzer/fuzz.cc -2023/06/07 | 830 | graphics/asymptote/shaders.h -2023/06/07 | 8307 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest-assertion-result.h -2023/06/07 | 82 | support/texlab/crates/parser/src/test_data/bibtex/comment.txt -2023/06/07 | 829 | graphics/asymptote/GUI/res/icons/close-round.svg -2023/06/07 | 829 | graphics/asymptote/examples/shellsqrtx01.asy -2023/06/07 | 828 | graphics/asymptote/LspCpp/third_party/rapidjson/CMakeModules/FindGTestSrc.cmake -2023/06/07 | 8287659 | macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.pdf -2023/06/07 | 825 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_incomplete.txt.snap -2023/06/07 | 825 | graphics/asymptote/examples/xxsq01y.asy -2023/06/07 | 824 | support/texlab/crates/texlab/src/features/completion/field.rs -2023/06/07 | 8240 | graphics/asymptote/base/asy-kate.sh -2023/06/07 | 823 | support/texlab/crates/symbols/src/workspace/snapshots/symbols__workspace__tests__filter_bibtex.snap -2023/06/07 | 822 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/generateHashCodeEquals.h -2023/06/07 | 821 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__equation_missing_end.txt.snap -2023/06/07 | 821 | graphics/asymptote/examples/SierpinskiGasket.asy -2023/06/07 | 820 | support/texlab/crates/distro/src/texlive.rs -2023/06/07 | 820 | graphics/asymptote/webgl/license -2023/06/07 | 820 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/LICENSE -2023/06/07 | 81 | graphics/asymptote/doc/bezier.asy -2023/06/07 | 819 | support/texlab/crates/texlab/src/features/hover/component.rs -2023/06/07 | 818 | graphics/asymptote/GLTextures.cc -2023/06/07 | 815 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_reference_options.txt.snap -2023/06/07 | 814 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@equation_missing_begin.txt.snap -2023/06/07 | 814 | graphics/asymptote/v3dtypes.py -2023/06/07 | 814 | graphics/asymptote/camperror.h -2023/06/07 | 8129 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/CMakeLists.txt -2023/06/07 | 81287 | graphics/asymptote/doc/TeXShopAndAsymptote.pdf -2023/06/07 | 8120 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest-message.h -2023/06/07 | 8112 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-test-part-test.cc -2023/06/07 | 810 | graphics/asymptote/GUI/res/icons/android-expand.svg -2023/06/07 | 810 | graphics/asymptote/examples/orthocenter.asy -2023/06/07 | 80 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_with_begin.txt -2023/06/07 | 8096 | graphics/asymptote/runhistory.cc -2023/06/07 | 8092 | graphics/asymptote/LspCpp/examples/WebsocketExample.cpp -2023/06/07 | 808 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/did_save.h -2023/06/07 | 8037 | graphics/asymptote/name.cc -2023/06/07 | 802 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/types/nulls.json -2023/06/07 | 802 | graphics/asymptote/examples/vertexshading.asy -2023/06/07 | 802 | graphics/asymptote/examples/controlsystem.asy -2023/06/07 | 8014 | graphics/asymptote/base/stats.asy -2023/06/07 | 800 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/did_close.h -2023/06/07 | 8008 | graphics/asymptote/runpath3d.in -2023/06/07 | 7 | support/texlab/crates/parser/src/test_data/latex/citation/citation_empty.txt -2023/06/07 | 7 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail31.json -2023/06/07 | 798 | graphics/asymptote/examples/animations/torusanimation.asy -2023/06/07 | 797 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__allowed_patterns.snap -2023/06/07 | 795 | graphics/asymptote/GUI/res/icons/android-refresh.svg -2023/06/07 | 7957 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-options-test.cc -2023/06/07 | 7955 | support/texlab/crates/syntax/src/bibtex.rs -2023/06/07 | 794 | graphics/asymptote/LspCpp/include/LibLsp/lsp/workspace/execute_command.h -2023/06/07 | 793 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-eedff3a9e99eb1c0fd3a3b0989e7c44c0a69f04f10b23e5264f362a4773f4397_min -2023/06/07 | 792 | graphics/asymptote/doc/secondaryaxis.asy -2023/06/07 | 790 | graphics/asymptote/LspCpp/include/LibLsp/lsp/AbsolutePath.h -2023/06/07 | 790 | graphics/asymptote/GUI/res/icons/android-camera.svg -2023/06/07 | 79041 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/network-uri.dir/compiler_depend.make -2023/06/07 | 79003 | graphics/asymptote/GUI/windows/window1.ui -2023/06/07 | 78 | graphics/asymptote/examples/randompath3.asy -2023/06/07 | 788 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__article_betram_1996.snap -2023/06/07 | 784 | graphics/asymptote/LspCpp/third_party/uri/deps/CMakeLists.txt -2023/06/07 | 781 | graphics/asymptote/LspCpp/third_party/uri/deps/WORKSPACE -2023/06/07 | 77 | graphics/asymptote/tests/gc/string.asy -2023/06/07 | 7790 | graphics/asymptote/coder.cc -2023/06/07 | 778 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_full.txt.snap -2023/06/07 | 7780 | graphics/asymptote/cudareflect/main.cc -2023/06/07 | 7762 | support/texlab/crates/parser/src/test_data/build_log/007.txt -2023/06/07 | 77498 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_pred_impl_unittest.cc -2023/06/07 | 7731 | graphics/asymptote/LspCpp/third_party/uri/include/network/string_view.hpp -2023/06/07 | 7730383 | support/texlab.zip -2023/06/07 | 772 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_figure.txt.snap -2023/06/07 | 771 | graphics/asymptote/GUI/res/icons/check.svg -2023/06/07 | 770 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/publishDiagnostics.h -2023/06/07 | 770 | graphics/asymptote/asy.rc -2023/06/07 | 76 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_definition_options.txt -2023/06/07 | 76 | graphics/asymptote/examples/grid.asy -2023/06/07 | 7684 | graphics/asymptote/cudareflect/tinyexr/cmake/sanitizers/sanitize-helpers.cmake -2023/06/07 | 76801 | graphics/asymptote/gl-matrix-2.4.0-pruned/dist/gl-matrix.js -2023/06/07 | 7671 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/Context.h -2023/06/07 | 766 | graphics/asymptote/vm.h -2023/06/07 | 7655 | graphics/asymptote/base/plain.asy -2023/06/07 | 76445 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/gmock-spec-builders.h -2023/06/07 | 7639 | graphics/asymptote/LICENSE.LESSER -2023/06/07 | 76304 | graphics/asymptote/runarray.cc -2023/06/07 | 762 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_complicated_options.txt.snap -2023/06/07 | 762 | graphics/asymptote/examples/clockarray.asy -2023/06/07 | 761 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@issue_809.txt.snap -2023/06/07 | 760 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_package.txt.snap -2023/06/07 | 760 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_optional.txt.snap -2023/06/07 | 759 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/maxProperties.json -2023/06/07 | 758 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_definition_simple.txt.snap -2023/06/07 | 7562 | support/texlab/crates/texlab/src/server/options.rs -2023/06/07 | 754 | graphics/asymptote/doc/graphmarkers.asy -2023/06/07 | 7531 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__aksin_2006.txt.snap -2023/06/07 | 752 | graphics/asymptote/GUI/res/icons/android-radio-button-off.svg -2023/06/07 | 7528 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__jain_1999.txt.snap -2023/06/07 | 751 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/message.h -2023/06/07 | 750 | macros/latex/contrib/examz/README.txt -2023/06/07 | 750 | graphics/asymptote/GUI/res/icons/plus-round.svg -2023/06/07 | 74 | graphics/asymptote/LspCpp/include/LibLsp/lsp/method_type.h -2023/06/07 | 749 | support/texlab/crates/texlab/src/features/hover/citation.rs -2023/06/07 | 747 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsTextDocumentItem.h -2023/06/07 | 747 | graphics/asymptote/examples/pseudosphere.asy -2023/06/07 | 7474 | graphics/asymptote/LspCpp/include/LibLsp/lsp/general/lsWorkspaceClientCapabilites.h -2023/06/07 | 74749 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock-spec-builders_test.cc -2023/06/07 | 746 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@block_comments.txt.snap -2023/06/07 | 746 | graphics/asymptote/tests/array/sort.asy -2023/06/07 | 745 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_874.txt.snap -2023/06/07 | 743 | graphics/asymptote/GUI/res/icons/circle.svg -2023/06/07 | 743 | graphics/asymptote/examples/xxsq01.asy -2023/06/07 | 742 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_simple.txt.snap -2023/06/07 | 7428 | graphics/asymptote/config.h.in -2023/06/07 | 741 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/test/test_opendialogmultiple.c -2023/06/07 | 74120 | graphics/asymptote/LspCpp/third_party/uri/Doxyfile -2023/06/07 | 740 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/encodings/utf32lebom.json -2023/06/07 | 740 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/encodings/utf32bebom.json -2023/06/07 | 7407 | graphics/asymptote/base/graph_splinetype.asy -2023/06/07 | 74032 | systems/texlive/tlnet/archive/latexindent.r67296.tar.xz -2023/06/07 | 74016 | graphics/asymptote/LspCpp/third_party/uri/Doxyfile.in -2023/06/07 | 739 | graphics/asymptote/examples/condor.asy -2023/06/07 | 737 | graphics/asymptote/tests/array/determinant.asy -2023/06/07 | 736 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/encodings/utf32le.json -2023/06/07 | 736 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/encodings/utf32be.json -2023/06/07 | 73662 | graphics/asymptote/base/three_surface.asy -2023/06/07 | 7364 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/gmock_cheat_sheet.md -2023/06/07 | 734 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_definition_simple.txt.snap -2023/06/07 | 734 | graphics/asymptote/examples/quilt.asy -2023/06/07 | 73435 | graphics/asymptote/GL/glxew.h -2023/06/07 | 733 | graphics/asymptote/GUI/xasySvg.py -2023/06/07 | 7322 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__almendro_1998.txt.snap -2023/06/07 | 7322 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-break-on-failure-unittest.py -2023/06/07 | 730 | graphics/asymptote/base/shaders/sum1.glsl -2023/06/07 | 7304 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/gtest-string.h -2023/06/07 | 7302 | graphics/asymptote/base/markers.asy -2023/06/07 | 72 | graphics/asymptote/tests/gc/pen.asy -2023/06/07 | 729 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/searchSymbols.h -2023/06/07 | 729 | graphics/asymptote/base/labelpath.asy -2023/06/07 | 7287 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_stress_test.cc -2023/06/07 | 727 | graphics/asymptote/examples/fermi.asy -2023/06/07 | 7274 | graphics/asymptote/runtime.pl -2023/06/07 | 725 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/minProperties.json -2023/06/07 | 722 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/checkToStringStatus.h -2023/06/07 | 7222 | graphics/asymptote/GUI/pyUIClass/widg_addLabel.py -2023/06/07 | 7218 | graphics/asymptote/LspCpp/third_party/rapidjson/test/perftest/schematest.cpp -2023/06/07 | 7202 | support/texlab/crates/texlab/src/features/formatting/bibtex_internal.rs -2023/06/07 | 71994 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/Glew/CustomGL/glxew.h -2023/06/07 | 7184 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsp_completion.h -2023/06/07 | 7180 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_repeat_test.cc -2023/06/07 | 717 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_options.txt.snap -2023/06/07 | 716 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@001.txt.snap -2023/06/07 | 7157 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__combi_2004.txt.snap -2023/06/07 | 7157 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/stack.h -2023/06/07 | 714 | graphics/asymptote/mod.h -2023/06/07 | 714 | graphics/asymptote/LspCpp/third_party/uri/src/detail/uri_resolve.hpp -2023/06/07 | 714 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsTextDocumentPositionParams.h -2023/06/07 | 714 | graphics/asymptote/examples/Viviani.asy -2023/06/07 | 714 | graphics/asymptote/examples/unitoctantx.asy -2023/06/07 | 713 | graphics/asymptote/examples/gamma3.asy -2023/06/07 | 71368 | graphics/asymptote/base/asy-mode.el -2023/06/07 | 7133 | graphics/asymptote/LspCpp/src/jsonrpc/StreamMessageProducer.cpp -2023/06/07 | 7125 | graphics/asymptote/LspCpp/third_party/rapidjson/example/archiver/archiver.cpp -2023/06/07 | 71201 | graphics/asymptote/prc/oPRCFile.cc -2023/06/07 | 711 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__project_resolution_texlabroot.snap -2023/06/07 | 711 | graphics/asymptote/examples/partialsurface.asy -2023/06/07 | 7117 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/simdtest.cpp -2023/06/07 | 710 | support/texlab/crates/distro/src/kpsewhich.rs -2023/06/07 | 710 | graphics/asymptote/LspCpp/third_party/uri/src/detail/uri_parse_authority.hpp -2023/06/07 | 710 | graphics/asymptote/examples/fjortoft.asy -2023/06/07 | 70 | graphics/asymptote/tests/gc/transform.asy -2023/06/07 | 709 | graphics/asymptote/cudareflect/tinyexr/test/fuzzer/Makefile -2023/06/07 | 707 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__collection_matuz_1990.snap -2023/06/07 | 706 | support/texlab/crates/parser/src/test_data/bibtex/samples/almendro_1998.txt -2023/06/07 | 706 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_siblings.txt.snap -2023/06/07 | 706 | graphics/pgf/contrib/tikz-nfold/README.md -2023/06/07 | 706 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/maxItems.json -2023/06/07 | 706 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/maxItems.json -2023/06/07 | 705 | graphics/asymptote/GUI/res/icons/arrow-move.svg -2023/06/07 | 7049 | graphics/asymptote/LspCpp/third_party/uri/Makefile -2023/06/07 | 703 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__inkscape_include_options.txt.snap -2023/06/07 | 703 | graphics/asymptote/examples/NURBScurve.asy -2023/06/07 | 702 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__svg_include_options.txt.snap -2023/06/07 | 70145 | graphics/asymptote/base/graph3.asy -2023/06/07 | 700 | graphics/asymptote/LspCpp/include/LibLsp/lsp/general/progress.h -2023/06/07 | 700 | graphics/asymptote/GUI/locale/th/LC_MESSAGES/base.po -2023/06/07 | 6 | support/texlab/crates/parser/src/test_data/latex/group/escaped_brackets.txt -2023/06/07 | 699 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__project_resolution_import.snap -2023/06/07 | 6970534 | support/texlab/crates/texlab/data/components.json.gz -2023/06/07 | 6964 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/MessageIssue.h -2023/06/07 | 6944 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest-test-part.h -2023/06/07 | 69441 | graphics/asymptote/cudareflect/tinyexr/deps/miniz/miniz.h -2023/06/07 | 693 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/minItems.json -2023/06/07 | 693 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/minItems.json -2023/06/07 | 6934 | graphics/asymptote/LspCpp/examples/TcpServerExample.cpp -2023/06/07 | 6917 | graphics/asymptote/LspCpp/third_party/uri/include/network/uri/uri_builder.hpp -2023/06/07 | 6911 | graphics/asymptote/errortest.asy -2023/06/07 | 690 | graphics/asymptote/examples/layers.asy -2023/06/07 | 689 | support/texlab/crates/syntax/src/latex.rs -2023/06/07 | 6896 | graphics/asymptote/GUI/windows/widg_addLabel.ui -2023/06/07 | 688 | graphics/asymptote/examples/centroidfg.asy -2023/06/07 | 687 | graphics/asymptote/cudareflect/tinyexr/examples/exr2fptiff/Makefile -2023/06/07 | 687491 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/data/sample.json -2023/06/07 | 6872 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/reference/actions.md -2023/06/07 | 6860 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/encoding.zh-cn.md -2023/06/07 | 685 | graphics/asymptote/LspCpp/third_party/rapidjson/example/simpledom/simpledom.cpp -2023/06/07 | 6849 | graphics/asymptote/LspCpp/third_party/rapidjson/example/archiver/archivertest.cpp -2023/06/07 | 683 | graphics/asymptote/GUI/res/icons/android-close.svg -2023/06/07 | 683 | graphics/asymptote/examples/fractaltree.asy -2023/06/07 | 6836 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__erwin_2007.txt.snap -2023/06/07 | 6834 | graphics/asymptote/main.cc -2023/06/07 | 681 | support/texlab/crates/texlab/src/features/completion/entry_type.rs -2023/06/07 | 6818 | graphics/asymptote/LspCpp/third_party/rapidjson/CHANGELOG.md -2023/06/07 | 68126 | graphics/asymptote/prc/PRCTools/describePRC.cc -2023/06/07 | 680 | support/texlab/crates/texlab/src/features/completion/component_command.rs -2023/06/07 | 680 | graphics/asymptote/tests/array/delete.asy -2023/06/07 | 679 | support/texlab/crates/parser/src/test_data/bibtex/samples/aksin_2006.txt -2023/06/07 | 679 | graphics/asymptote/examples/genusthree.asy -2023/06/07 | 678 | graphics/asymptote/LspCpp/third_party/rapidjson/contrib/natvis/README.md -2023/06/07 | 678 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-5b66774a7498c635334ad386be0c3b359951738ac47f14878a3346d1c6ea0fe5_min -2023/06/07 | 6787 | graphics/asymptote/drawlabel.cc -2023/06/07 | 677 | graphics/asymptote/doc/Bode.asy -2023/06/07 | 677 | graphics/asymptote/base/shaders/vertex.glsl -2023/06/07 | 6772 | graphics/asymptote/cudareflect/tinyexr/examples/nornalmap/main.cc -2023/06/07 | 676 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_description_and_counter.txt.snap -2023/06/07 | 6751 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/optional/format.json -2023/06/07 | 674 | support/texlab/crates/parser/src/test_data/bibtex/samples/jain_1999.txt -2023/06/07 | 674 | support/texlab/crates/parser/src/test_data/bibtex/samples/combi_2004.txt -2023/06/07 | 674 | graphics/asymptote/examples/sqrtx01.asy -2023/06/07 | 673 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@003.txt.snap -2023/06/07 | 6732 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/stream.h -2023/06/07 | 6726 | graphics/asymptote/cudareflect/tinyexr/deps/miniz/examples/example3.c -2023/06/07 | 6725 | graphics/asymptote/guide.h -2023/06/07 | 6717 | graphics/asymptote/GUI/xasyOptions.py -2023/06/07 | 67146 | graphics/asymptote/GUI/xasy2asy.py -2023/06/07 | 67141 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/network-uri.dir/compiler_depend.internal -2023/06/07 | 6709 | graphics/asymptote/base/shaders/fragment.glsl -2023/06/07 | 6708 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/encoding.md -2023/06/07 | 66 | graphics/asymptote/examples/shade.asy -2023/06/07 | 669 | graphics/asymptote/drawpath.h -2023/06/07 | 667 | graphics/asymptote/tinyexr.cc -2023/06/07 | 667 | graphics/asymptote/examples/spring.asy -2023/06/07 | 66751 | graphics/asymptote/prc/writePRC.cc -2023/06/07 | 6650 | graphics/asymptote/getopt.h -2023/06/07 | 664 | graphics/asymptote/GUI/res/icons/android-delete.svg -2023/06/07 | 66482 | graphics/asymptote/base/webgl/asygl.js -2023/06/07 | 6644 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__blom_2021.txt.snap -2023/06/07 | 663 | graphics/asymptote/GUI/res/icons/save.svg -2023/06/07 | 663 | graphics/asymptote/base/v3dtypes.asy -2023/06/07 | 6634 | graphics/asymptote/simpson.cc -2023/06/07 | 6619 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/threaded_queue.h -2023/06/07 | 6616 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/meta.h -2023/06/07 | 6611 | graphics/asymptote/LspCpp/examples/StdIOClientExample.cpp -2023/06/07 | 66101 | graphics/asymptote/glrender.cc -2023/06/07 | 65 | graphics/asymptote/tests/gc/guide.asy -2023/06/07 | 659 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__hover__entry_type_known_type.snap -2023/06/07 | 6585 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample5_unittest.cc -2023/06/07 | 657 | graphics/asymptote/examples/lowupint.asy -2023/06/07 | 657 | graphics/asymptote/examples/100d.views -2023/06/07 | 657 | graphics/asymptote/base/reload.js -2023/06/07 | 6572 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/misc/doxygenextra.css -2023/06/07 | 656 | graphics/asymptote/LspCpp/include/LibLsp/lsp/ExecuteCommandParams.h -2023/06/07 | 6553 | graphics/asymptote/cudareflect/tinyexr/examples/deepview/main.cc -2023/06/07 | 6552 | graphics/asymptote/GUI/windows/labelTextEditor.ui -2023/06/07 | 6551 | graphics/asymptote/cudareflect/tinyexr/deps/miniz/examples/example2.c -2023/06/07 | 654 | graphics/asymptote/fpu.h -2023/06/07 | 654 | graphics/asymptote/examples/limit.asy -2023/06/07 | 6543 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-list-tests-unittest.py -2023/06/07 | 6525 | graphics/asymptote/drawfill.h -2023/06/07 | 6514 | graphics/asymptote/lspserv.h -2023/06/07 | 650 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__folding_range__bibtex.snap -2023/06/07 | 650 | graphics/asymptote/prcfile.h -2023/06/07 | 6503 | graphics/asymptote/tests/types/constructor.asy -2023/06/07 | 64 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_declaration.txt -2023/06/07 | 64 | graphics/asymptote/cudareflect/tinyexr/test/fuzzer/issue-62-tinyexr_memcpy_heap-buffer-overflow -2023/06/07 | 649 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@inline_double_dollar.txt.snap -2023/06/07 | 648 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/CMakeDirectoryInformation.cmake -2023/06/07 | 648 | graphics/asymptote/LspCpp/third_party/uri/CMakeFiles/CMakeDirectoryInformation.cmake -2023/06/07 | 6484 | support/texlab/crates/base-db/src/util/line_index.rs -2023/06/07 | 647 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_default.txt.snap -2023/06/07 | 6472 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__rivest_1978.txt.snap -2023/06/07 | 646 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/addOverridableMethods.h -2023/06/07 | 645 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_simple.txt.snap -2023/06/07 | 645 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/generateConstructors.h -2023/06/07 | 642 | support/texlab/crates/texlab/src/features/completion/user_command.rs -2023/06/07 | 6425 | graphics/asymptote/mathop.h -2023/06/07 | 6425 | graphics/asymptote/generate_enums.py -2023/06/07 | 64222 | graphics/asymptote/base/graph.asy -2023/06/07 | 641 | info/spanish/antique-spanish-units/README -2023/06/07 | 641 | graphics/asymptote/examples/pOrbital.asy -2023/06/07 | 6418 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_environment_test.cc -2023/06/07 | 6412 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_test.cc -2023/06/07 | 639 | graphics/asymptote/tests/arith/transform.asy -2023/06/07 | 639 | graphics/asymptote/LspCpp/third_party/uri/src/detail/uri_advance_parts.hpp -2023/06/07 | 63842 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-printers-test.cc -2023/06/07 | 637 | support/texlab/crates/texlab/src/features/completion/user_environment.rs -2023/06/07 | 6376 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_xml_output_unittest_.cc -2023/06/07 | 6370 | graphics/asymptote/asymptote.nsi -2023/06/07 | 6369 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/traits.h -2023/06/07 | 63574 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/pointer.h -2023/06/07 | 63314 | graphics/asymptote/GL/wglew.h -2023/06/07 | 632 | graphics/asymptote/examples/label3zoom.asy -2023/06/07 | 631 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@inline.txt.snap -2023/06/07 | 631 | graphics/asymptote/locate.h -2023/06/07 | 631 | graphics/asymptote/GUI/res/icons/arrow-resize.svg -2023/06/07 | 63193 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/screens/open_gtk3.png -2023/06/07 | 6318 | graphics/asymptote/doc/leastsquares.dat -2023/06/07 | 63136 | graphics/asymptote/doc/FAQ/asy-faq.info -2023/06/07 | 630 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-24322747c47e87a10e4407528b779a1a763a48135384909b3d1010bbba1d4c28_min -2023/06/07 | 6304 | graphics/asymptote/base/three_tube.asy -2023/06/07 | 62 | graphics/asymptote/tests/gc/array.asy -2023/06/07 | 62 | graphics/asymptote/revision.cc -2023/06/07 | 628 | graphics/asymptote/examples/wedge.asy -2023/06/07 | 628 | graphics/asymptote/examples/polarcircle.asy -2023/06/07 | 6288 | graphics/asymptote/transform.h -2023/06/07 | 6287 | graphics/asymptote/base/plain_prethree.asy -2023/06/07 | 6278 | graphics/asymptote/base/plain_filldraw.asy -2023/06/07 | 62764 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/pointertest.cpp -2023/06/07 | 626 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_default_error.txt.snap -2023/06/07 | 626 | graphics/asymptote/GUI/res/icons/android-arrow-forward.svg -2023/06/07 | 626 | graphics/asymptote/GUI/res/icons/android-arrow-back.svg -2023/06/07 | 626 | graphics/asymptote/examples/venn.asy -2023/06/07 | 6253 | graphics/asymptote/LspCpp/third_party/rapidjson/example/tutorial/tutorial.cpp -2023/06/07 | 6252 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/gtest-type-util.h -2023/06/07 | 624 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path_command.txt.snap -2023/06/07 | 6247 | graphics/asymptote/GUI/pyUIClass/labelTextEditor.py -2023/06/07 | 62413 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest-death-test.cc -2023/06/07 | 62206 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/Glew/CustomGL/wglew.h -2023/06/07 | 620 | graphics/asymptote/GUI/res/icons/android-done.svg -2023/06/07 | 62008 | systems/texlive/tlnet/archive/texshade.r67295.tar.xz -2023/06/07 | 61 | graphics/asymptote/examples/axialshade.asy -2023/06/07 | 61 | graphics/asymptote/cudareflect/tinyexr/test/issues/160/README.md -2023/06/07 | 6194 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample8_unittest.cc -2023/06/07 | 6192 | graphics/asymptote/camp.tab.h -2023/06/07 | 617 | graphics/asymptote/doc/logo.asy -2023/06/07 | 6175 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_output_test.py -2023/06/07 | 616 | graphics/asymptote/examples/Gouraudcontour.asy -2023/06/07 | 61699 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/gtest-internal.h -2023/06/07 | 61679 | graphics/asymptote/runtime.cc -2023/06/07 | 61667 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/gmock-actions.h -2023/06/07 | 615 | support/texlab/crates/parser/src/test_data/bibtex/samples/erwin_2007.txt -2023/06/07 | 615 | graphics/asymptote/LspCpp/include/LibLsp/lsp/workspace/did_change_configuration.h -2023/06/07 | 615 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/src/nfd_common.h -2023/06/07 | 6159 | graphics/asymptote/base/plain_strings.asy -2023/06/07 | 614 | support/texlab/texlab.1 -2023/06/07 | 612 | graphics/asymptote/cudareflect/tinyexr/experimental/js/README.md -2023/06/07 | 612 | graphics/asymptote/cudareflect/tinyexr/examples/exr2rgbe/exr2rgbe.cc -2023/06/07 | 611 | graphics/asymptote/GUI/xasy.py -2023/06/07 | 6117 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/src/nfd_cocoa.m -2023/06/07 | 610 | graphics/asymptote/examples/impact.asy -2023/06/07 | 6104 | graphics/asymptote/LspCpp/third_party/uri/deps/BUILD.bazel -2023/06/07 | 6104 | graphics/asymptote/doc/FAQ/m-lout.pl -2023/06/07 | 60 | support/texlab/crates/parser/src/test_data/latex/structure/structure_enum_item.txt -2023/06/07 | 60 | support/texlab/crates/citeproc/src/field.rs -2023/06/07 | 60 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail1.json -2023/06/07 | 609 | support/texlab/crates/texlab/src/features/hover/field.rs -2023/06/07 | 609 | graphics/asymptote/keywords.cc -2023/06/07 | 6097 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/gmock-cardinalities.h -2023/06/07 | 6090 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/misc/DoxygenLayout.xml -2023/06/07 | 608 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_prenote_postnote.txt.snap -2023/06/07 | 608 | graphics/asymptote/examples/spline.asy -2023/06/07 | 608 | graphics/asymptote/base/size10.asy -2023/06/07 | 606 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/findLinks.h -2023/06/07 | 604 | graphics/asymptote/doc/flow.asy -2023/06/07 | 6037 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_help_test.py -2023/06/07 | 602 | graphics/asymptote/examples/treetest.asy -2023/06/07 | 6021 | graphics/asymptote/prc/PRCTools/bitData.cc -2023/06/07 | 601 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/data/widget.json -2023/06/07 | 6018 | support/texlab/crates/texlab/src/util/capabilities.rs -2023/06/07 | 600 | graphics/asymptote/base/size11.asy -2023/06/07 | 5 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail30.json -2023/06/07 | 5 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/data/abcde.txt -2023/06/07 | 59 | graphics/asymptote/examples/stroke3.asy -2023/06/07 | 5996 | graphics/asymptote/LspCpp/third_party/rapidjson/example/jsonx/jsonx.cpp -2023/06/07 | 598 | graphics/asymptote/examples/integraltest.asy -2023/06/07 | 5987 | graphics/asymptote/runfile.in -2023/06/07 | 596384 | systems/texlive/tlnet/archive/l3kernel.source.r67294.tar.xz -2023/06/07 | 59583 | graphics/asymptote/GUI/pyUIClass/window1.py -2023/06/07 | 594 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_bibtex.snap -2023/06/07 | 594 | graphics/asymptote/LspCpp/third_party/uri/src/detail/uri_normalize.hpp -2023/06/07 | 593 | graphics/asymptote/GUI/res/icons/bucket.asy -2023/06/07 | 5933 | graphics/asymptote/LspCpp/third_party/rapidjson/example/filterkeydom/filterkeydom.cpp -2023/06/07 | 5925 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample9_unittest.cc -2023/06/07 | 591 | graphics/asymptote/examples/sinc.asy -2023/06/07 | 590 | support/texlab/crates/texlab/src/features/hover/entry_type.rs -2023/06/07 | 5900 | support/texlab/crates/base-db/src/util/label.rs -2023/06/07 | 58 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail10.json -2023/06/07 | 58 | graphics/asymptote/examples/progrid.asy -2023/06/07 | 589 | graphics/asymptote/examples/trefoilknot.asy -2023/06/07 | 588 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error2.txt.snap -2023/06/07 | 588 | support/texlab/crates/commands/Cargo.toml -2023/06/07 | 5883 | graphics/asymptote/Delaunay.cc -2023/06/07 | 5879 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/test_checked_api.h -2023/06/07 | 586 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/generateAccessors.h -2023/06/07 | 586 | graphics/asymptote/GUI/xasyStrings.py -2023/06/07 | 5864 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__betram_1996.txt.snap -2023/06/07 | 585 | support/texlab/crates/base-db/src/semantics.rs -2023/06/07 | 583 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_simple_package.snap -2023/06/07 | 583 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation.snap -2023/06/07 | 5832 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/fwdtest.cpp -2023/06/07 | 58317 | support/texlab/crates/base-db/src/data.rs -2023/06/07 | 582 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/data/glossary.json -2023/06/07 | 582 | graphics/asymptote/examples/cos3.asy -2023/06/07 | 5820 | graphics/asymptote/cudareflect/IrradianceGenerator.vcxproj -2023/06/07 | 581 | graphics/asymptote/examples/BezierSaddle.asy -2023/06/07 | 5818 | graphics/asymptote/LspCpp/include/LibLsp/lsp/IProgressMonitor.h -2023/06/07 | 580 | graphics/asymptote/LspCpp/include/LibLsp/lsp/out_list.h -2023/06/07 | 580 | graphics/asymptote/examples/xsin1x.asy -2023/06/07 | 57 | graphics/asymptote/GUI/requirements.txt -2023/06/07 | 579 | graphics/asymptote/examples/sqrtx01y1.asy -2023/06/07 | 579 | graphics/asymptote/examples/sin3.asy -2023/06/07 | 579 | graphics/asymptote/examples/exp3.asy -2023/06/07 | 57989 | graphics/asymptote/runpicture.cc -2023/06/07 | 578 | graphics/asymptote/base/annotate.asy -2023/06/07 | 5789 | graphics/asymptote/base/trembling.asy -2023/06/07 | 5783 | graphics/asymptote/bezierpatch.h -2023/06/07 | 576 | graphics/asymptote/examples/threeviews.asy -2023/06/07 | 576 | graphics/asymptote/examples/circles.asy -2023/06/07 | 5767 | graphics/asymptote/drawpath3.h -2023/06/07 | 57566 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/valuetest.cpp -2023/06/07 | 5752 | graphics/asymptote/LspCpp/third_party/rapidjson/test/perftest/perftest.h -2023/06/07 | 5748 | graphics/asymptote/fileio.cc -2023/06/07 | 573 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/highlight.h -2023/06/07 | 5735 | graphics/asymptote/base/plain_scaling.asy -2023/06/07 | 5733 | graphics/asymptote/item.h -2023/06/07 | 572 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__book_aho_2006.snap -2023/06/07 | 572 | graphics/asymptote/LspCpp/third_party/uri/test/invalid_urls.txt -2023/06/07 | 572 | graphics/asymptote/LspCpp/third_party/uri/include/network/uri/config.hpp -2023/06/07 | 572 | graphics/asymptote/examples/curvedlabel3.asy -2023/06/07 | 57247 | graphics/pgf/contrib/tikz-nfold/tikzlibrarynfold.code.tex -2023/06/07 | 5711 | graphics/asymptote/LspCpp/third_party/uri/test/uri_encoding_test.cpp -2023/06/07 | 5705 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-json-outfiles-test.py -2023/06/07 | 569 | graphics/asymptote/cudareflect/tinyexr/examples/cube2longlat/Makefile -2023/06/07 | 5691 | graphics/asymptote/name.h -2023/06/07 | 5689 | graphics/asymptote/interact.cc -2023/06/07 | 5684 | support/texlab/crates/parser/src/build_log.rs -2023/06/07 | 5683 | graphics/asymptote/LspCpp/third_party/uri/deps/CONTRIBUTING.md -2023/06/07 | 566 | support/texlab/crates/symbols/src/workspace/snapshots/symbols__workspace__tests__filter_type_figure.snap -2023/06/07 | 565 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_invalid_nesting.txt.snap -2023/06/07 | 5658 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-throw-on-failure-test.py -2023/06/07 | 5645 | support/texlab/crates/symbols/src/workspace/sort.rs -2023/06/07 | 563 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_number.txt.snap -2023/06/07 | 563 | graphics/asymptote/LspCpp/third_party/uri/src/detail/uri_parse.hpp -2023/06/07 | 5627 | graphics/asymptote/doc/FAQ/m-info.pl -2023/06/07 | 5621 | graphics/asymptote/errormsg.h -2023/06/07 | 561 | graphics/asymptote/LspCpp/third_party/rapidjson/package.json -2023/06/07 | 55 | support/texlab/crates/parser/src/test_data/latex/issue_857.txt -2023/06/07 | 55991 | graphics/asymptote/base/smoothcontour3.asy -2023/06/07 | 5595 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-failfast-unittest_.cc -2023/06/07 | 558 | graphics/asymptote/examples/floatingdisk.asy -2023/06/07 | 557 | support/texlab/crates/parser/src/test_data/bibtex/samples/rivest_1978.txt -2023/06/07 | 557 | graphics/asymptote/examples/Pythagoras.asy -2023/06/07 | 55733 | graphics/asymptote/LspCpp/third_party/utfcpp/README.md -2023/06/07 | 556 | support/texlab/crates/parser/src/test_data/bibtex/samples/betram_1996.txt -2023/06/07 | 555 | support/texlab/crates/texlab/src/features/link/include.rs -2023/06/07 | 5556 | support/texlab/crates/symbols/src/document/tests.rs -2023/06/07 | 554 | support/texlab/crates/texlab/src/features/completion/theorem.rs -2023/06/07 | 5542 | graphics/asymptote/drawpath3.cc -2023/06/07 | 5540 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/stringbuffertest.cpp -2023/06/07 | 5537 | graphics/asymptote/examples/cpkcolors.asy -2023/06/07 | 55327 | graphics/asymptote/settings.cc -2023/06/07 | 5531 | graphics/asymptote/examples/filesurface.dat -2023/06/07 | 552 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path_options.txt.snap -2023/06/07 | 5521 | graphics/asymptote/base/rational.asy -2023/06/07 | 550 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__begin_environment_without_snippet_support.snap -2023/06/07 | 54 | graphics/asymptote/tests/gc/funcall.asy -2023/06/07 | 548 | graphics/asymptote/examples/equilchord.asy -2023/06/07 | 548 | graphics/asymptote/cudareflect/Makefile -2023/06/07 | 547 | graphics/asymptote/examples/tetra.asy -2023/06/07 | 544 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_simple_end.snap -2023/06/07 | 5441 | graphics/asymptote/env.cc -2023/06/07 | 541 | graphics/asymptote/v3dtypes.h -2023/06/07 | 5415 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_xml_outfiles_test.py -2023/06/07 | 5415 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/istreamwrappertest.cpp -2023/06/07 | 54109 | graphics/asymptote/optional.hpp -2023/06/07 | 538 | support/texlab/crates/citeproc/Cargo.toml -2023/06/07 | 5386 | support/texlab/crates/parser/src/latex/lexer/commands.rs -2023/06/07 | 5375 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample3-inl.h -2023/06/07 | 5366 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/stream.h -2023/06/07 | 5360 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample3_unittest.cc -2023/06/07 | 535 | graphics/asymptote/cudareflect/tinyexr/Makefile.llvm-mingw -2023/06/07 | 5358 | graphics/asymptote/LspCpp/src/lsp/working_files.cpp -2023/06/07 | 533 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_description.txt.snap -2023/06/07 | 533 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_counter.txt.snap -2023/06/07 | 533 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/generateToString.h -2023/06/07 | 533 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/test/test_savedialog.c -2023/06/07 | 53373 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock-more-actions_test.cc -2023/06/07 | 5323 | graphics/asymptote/cudareflect/tinyexr/examples/exr2fptiff/exr2fptiff.cc -2023/06/07 | 530 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/test/test_opendialog.c -2023/06/07 | 5308 | graphics/asymptote/pair.h -2023/06/07 | 52 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_command.txt -2023/06/07 | 52 | support/texlab/crates/parser/src/test_data/latex/environment/environment_nested_missing_braces.txt -2023/06/07 | 52 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/pass2.json -2023/06/07 | 52 | graphics/asymptote/doc/square.asy -2023/06/07 | 5279 | graphics/asymptote/base/bsp.asy -2023/06/07 | 52750 | graphics/asymptote/cudareflect/tinyexr/test/unit/tester.cc -2023/06/07 | 5272 | graphics/asymptote/GUI/labelEditor.py -2023/06/07 | 526 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_828.txt.snap -2023/06/07 | 5265 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-message-test.cc -2023/06/07 | 5262 | graphics/asymptote/patches/bison.patch -2023/06/07 | 5262 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/src/gmock-cardinalities.cc -2023/06/07 | 525 | graphics/asymptote/examples/vectorfield3.asy -2023/06/07 | 5259 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/logo/rapidjson.png -2023/06/07 | 5254 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-global-environment-unittest.py -2023/06/07 | 5250 | graphics/asymptote/pipestream.cc -2023/06/07 | 524 | graphics/asymptote/doc/brokenaxis.asy -2023/06/07 | 5242 | graphics/asymptote/LspCpp/src/jsonrpc/serializer.cpp -2023/06/07 | 5238 | graphics/asymptote/base/animation.asy -2023/06/07 | 521 | graphics/asymptote/doc/Hobbycontrol.asy -2023/06/07 | 5216 | graphics/asymptote/examples/mosaic.asy -2023/06/07 | 520 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_wrap_long_lines.snap -2023/06/07 | 520 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_minimal.txt.snap -2023/06/07 | 520 | graphics/asymptote/examples/smoothelevation.asy -2023/06/07 | 5204 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/quickstart-bazel.md -2023/06/07 | 51 | support/texlab/crates/parser/src/test_data/latex/issue_828.txt -2023/06/07 | 519 | graphics/asymptote/examples/extrudedcontour.asy -2023/06/07 | 518 | graphics/asymptote/doc/CDlabel.asy -2023/06/07 | 5183 | graphics/asymptote/stm.h -2023/06/07 | 517 | support/texlab/crates/parser/src/test_data/bibtex/samples/matuz_1990.txt -2023/06/07 | 516 | support/texlab/crates/texlab/src/features/completion/component_environment.rs -2023/06/07 | 5169 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/sonarlint/protocol.h -2023/06/07 | 51671 | graphics/asymptote/prc/oPRCFile.h -2023/06/07 | 5152 | graphics/asymptote/LspCpp/third_party/rapidjson/license.txt -2023/06/07 | 513 | graphics/asymptote/examples/buildcycle.asy -2023/06/07 | 5136 | support/texlab/crates/base-db/src/graph.rs -2023/06/07 | 51302 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock-actions_test.cc -2023/06/07 | 512 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_857_1.snap -2023/06/07 | 5129 | graphics/asymptote/LspCpp/third_party/rapidjson/example/parsebyparts/parsebyparts.cpp -2023/06/07 | 5115 | graphics/asymptote/memory.h -2023/06/07 | 5114 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/future.h -2023/06/07 | 5111 | graphics/asymptote/runsystem.in -2023/06/07 | 5111 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample1_unittest.cc -2023/06/07 | 510 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/internal/custom/README.md -2023/06/07 | 50 | support/texlab/crates/parser/src/test_data/latex/environment/environment_asymptote.txt -2023/06/07 | 50 | support/texlab/crates/parser/src/test_data/bibtex/issue_809.txt -2023/06/07 | 50 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail18.json -2023/06/07 | 50 | graphics/asymptote/cudareflect/tinyexr/test/unit/win32-filelist-utf16le.inc -2023/06/07 | 50 | graphics/asymptote/base/babel.asy -2023/06/07 | 509 | graphics/asymptote/examples/dimension.asy -2023/06/07 | 509 | graphics/asymptote/cudareflect/tinyexr/Makefile -2023/06/07 | 50899 | graphics/asymptote/runarray.in -2023/06/07 | 507 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_simple.txt.snap -2023/06/07 | 506 | graphics/asymptote/examples/delu.asy -2023/06/07 | 5064 | graphics/asymptote/runhistory.in -2023/06/07 | 5063 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/features.md -2023/06/07 | 506313 | graphics/asymptote/libatomic_ops-7.6.12.tar.gz -2023/06/07 | 5062 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/pkgconfig.md -2023/06/07 | 5060 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__matuz_1990.txt.snap -2023/06/07 | 5054 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/quickstart-cmake.md -2023/06/07 | 504 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_argc.txt.snap -2023/06/07 | 504 | graphics/asymptote/absyn.cc -2023/06/07 | 50437 | graphics/asymptote/gsl.cc -2023/06/07 | 503 | graphics/asymptote/examples/animations/embeddedmovie.asy -2023/06/07 | 503 | graphics/asymptote/cudareflect/tinyexr/test/fuzzer/issue-63-tinyexr_signed-integer-overflow -2023/06/07 | 502 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__math_operator_simple.txt.snap -2023/06/07 | 5021 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/test_unchecked_api.h -2023/06/07 | 500 | graphics/asymptote/examples/floor.asy -2023/06/07 | 500 | graphics/asymptote/doc/Hobbydir.asy -2023/06/07 | 4 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_brackets_with_group.txt -2023/06/07 | 4 | support/texlab/crates/parser/src/test_data/latex/generic_command_empty.txt -2023/06/07 | 4 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail29.json -2023/06/07 | 49 | graphics/asymptote/doc/quartercircle.asy -2023/06/07 | 49 | graphics/asymptote/doc/dots.asy -2023/06/07 | 49 | graphics/asymptote/doc/colons.asy -2023/06/07 | 499 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_minimal_error.txt.snap -2023/06/07 | 499 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/cmake/libgtest.la.in -2023/06/07 | 499 | graphics/asymptote/examples/galleon.asy -2023/06/07 | 4992 | graphics/asymptote/base/tube.asy -2023/06/07 | 498 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/type_definition.h -2023/06/07 | 498 | graphics/asymptote/examples/fano.asy -2023/06/07 | 498 | graphics/asymptote/doc/penfunctionimage.asy -2023/06/07 | 4985 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample10_unittest.cc -2023/06/07 | 49797 | graphics/asymptote/config.guess -2023/06/07 | 496 | graphics/asymptote/examples/bars3.asy -2023/06/07 | 4963 | graphics/asymptote/LspCpp/third_party/rapidjson/example/filterkey/filterkey.cpp -2023/06/07 | 495 | graphics/asymptote/examples/cones.asy -2023/06/07 | 495 | graphics/asymptote/cudareflect/tinyexr/experimental/js/test.js -2023/06/07 | 4953 | support/texlab/crates/base-db/src/document.rs -2023/06/07 | 494 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_simple.snap -2023/06/07 | 494 | graphics/asymptote/drawgrestore.h -2023/06/07 | 494 | graphics/asymptote/cudareflect/tinyexr/experimental/js/compile_to_js.sh -2023/06/07 | 4942 | graphics/asymptote/GUI/pyUIClass/widg_editBezier.py -2023/06/07 | 492 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/Cancellation.h -2023/06/07 | 4923 | graphics/asymptote/LspCpp/examples/StdIOServerExample.cpp -2023/06/07 | 491 | graphics/asymptote/LspCpp/third_party/rapidjson/test/CMakeLists.txt -2023/06/07 | 4919 | graphics/asymptote/process.h -2023/06/07 | 490 | support/texlab/crates/base-db/Cargo.toml -2023/06/07 | 48 | support/texlab/crates/parser/src/test_data/latex/block_comments.txt -2023/06/07 | 489 | graphics/asymptote/patches/gc-7.0nomem.patch -2023/06/07 | 489 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/resolveCompletionItem.h -2023/06/07 | 4896 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-color-test.py -2023/06/07 | 4895 | graphics/asymptote/fundec.h -2023/06/07 | 488 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/implementation.h -2023/06/07 | 48847 | graphics/asymptote/doc/secondaryaxis.csv -2023/06/07 | 48749 | support/texlab/Cargo.lock -2023/06/07 | 4873 | graphics/asymptote/parser.cc -2023/06/07 | 4872 | graphics/asymptote/LspCpp/include/LibLsp/lsp/utils.h -2023/06/07 | 486 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_two_fields_name_closed.snap -2023/06/07 | 4862 | graphics/asymptote/drawpath.cc -2023/06/07 | 485 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_two_fields_name_open.snap -2023/06/07 | 485 | graphics/asymptote/examples/cards.asy -2023/06/07 | 48481 | graphics/asymptote/prc/writePRC.h -2023/06/07 | 4841 | graphics/asymptote/tests/array/slice.asy -2023/06/07 | 483 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_multiple.txt.snap -2023/06/07 | 483 | macros/latex/contrib/postit/README.md -2023/06/07 | 483 | graphics/asymptote/LspCpp/third_party/uri/test/string_utility.hpp -2023/06/07 | 482 | graphics/asymptote/LspCpp/include/LibLsp/lsp/general/initialized.h -2023/06/07 | 4811 | graphics/asymptote/base/x11colors.asy -2023/06/07 | 480 | graphics/asymptote/doc/logimage.asy -2023/06/07 | 4809 | graphics/asymptote/examples/interpolate1.asy -2023/06/07 | 4807 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/internal/gmock-port.h -2023/06/07 | 4805 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/features.zh-cn.md -2023/06/07 | 47 | support/texlab/crates/texlab/tests/lsp/main.rs -2023/06/07 | 47 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_incomplete.txt -2023/06/07 | 47 | support/texlab/crates/parser/src/test_data/latex/environment/environment_definition.txt -2023/06/07 | 479 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_error.txt.snap -2023/06/07 | 479 | graphics/asymptote/examples/magnetic.asy -2023/06/07 | 47993 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-death-test-test.cc -2023/06/07 | 4787 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/README.md -2023/06/07 | 4782 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsAny.h -2023/06/07 | 477 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_input_path_brackets.txt.snap -2023/06/07 | 476 | graphics/asymptote/GUI/configs/xasykeymap.cson -2023/06/07 | 4766 | graphics/asymptote/GUI/xasyFile.py -2023/06/07 | 4761 | graphics/asymptote/GUI/pyUIClass/widgetPointEditor.py -2023/06/07 | 475953 | graphics/asymptote/doc/png/asymptote.info -2023/06/07 | 47582 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest-port.cc -2023/06/07 | 473 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/network-uri.dir/link.txt -2023/06/07 | 473 | graphics/asymptote/LspCpp/include/LibLsp/lsp/general/shutdown.h -2023/06/07 | 4738 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-360c3b0555cb979ca108f2d178cf8a80959cfeabaa4ec1d310d062fa653a8c6b_min -2023/06/07 | 473703 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-1383755b301e5f505b2198dc0508918b537fdf48bbfc6deeffe268822e6f6cd6 -2023/06/07 | 473695 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-e7fa6404daa861369d2172fe68e08f9d38c0989f57da7bcfb510bab67e19ca9f -2023/06/07 | 4735 | graphics/asymptote/array.cc -2023/06/07 | 4733 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/jsoncheckertest.cpp -2023/06/07 | 4731 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/flaga.exr -2023/06/07 | 472 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_prenote.txt.snap -2023/06/07 | 472 | graphics/asymptote/examples/colorplanes.asy -2023/06/07 | 4727 | graphics/asymptote/doc/westnile.csv -2023/06/07 | 4724 | support/texlab/crates/citeproc/src/entry.rs -2023/06/07 | 4718 | graphics/asymptote/LspCpp/include/LibLsp/lsp/symbol.h -2023/06/07 | 4718 | graphics/asymptote/doc/FAQ/m-ascii.pl -2023/06/07 | 4716 | graphics/asymptote/prc/PRCTools/makePRC.cc -2023/06/07 | 470 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__import_simple.txt.snap -2023/06/07 | 469 | graphics/asymptote/LspCpp/third_party/rapidjson/RapidJSONConfigVersion.cmake.in -2023/06/07 | 46854 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest-internal-inl.h -2023/06/07 | 4674 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/typeHierarchy.h -2023/06/07 | 4668 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-list-tests-unittest_.cc -2023/06/07 | 465 | graphics/asymptote/LspCpp/src/jsonrpc/threaded_queue.cpp -2023/06/07 | 46531 | graphics/asymptote/base/plain_picture.asy -2023/06/07 | 464 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_class_open_brace.snap -2023/06/07 | 464 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@007.txt.snap -2023/06/07 | 464 | graphics/asymptote/drawgsave.h -2023/06/07 | 464 | graphics/asymptote/doc/GaussianSurface.asy -2023/06/07 | 463 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/optional/jsregex.json -2023/06/07 | 4635 | graphics/asymptote/cudareflect/tinyexr/examples/exrfilter/exrfilter.cc -2023/06/07 | 4629 | graphics/asymptote/castop.h -2023/06/07 | 4620 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample7_unittest.cc -2023/06/07 | 461 | graphics/asymptote/LspCpp/third_party/uri/CMakeFiles/doc.dir/DependInfo.cmake -2023/06/07 | 4613 | graphics/asymptote/LspCpp/third_party/uri/deps/README.md -2023/06/07 | 460 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_args.txt.snap -2023/06/07 | 460 | graphics/asymptote/examples/lever.asy -2023/06/07 | 460 | graphics/asymptote/examples/cosaddition.asy -2023/06/07 | 4608 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/optional/format.json -2023/06/07 | 4602 | graphics/asymptote/util.h -2023/06/07 | 4602 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/README.md -2023/06/07 | 459 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_class_closed_brace.snap -2023/06/07 | 459 | graphics/asymptote/examples/hierarchy.asy -2023/06/07 | 4597 | graphics/asymptote/drawfill.cc -2023/06/07 | 458 | graphics/asymptote/doc/multicontour.asy -2023/06/07 | 4581 | graphics/asymptote/LspCpp/third_party/rapidjson/example/serialize/serialize.cpp -2023/06/07 | 457 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error3.txt.snap -2023/06/07 | 4578 | graphics/asymptote/doc/FAQ/m-post.pl -2023/06/07 | 4571 | graphics/asymptote/env.h -2023/06/07 | 456 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_multiple.txt.snap -2023/06/07 | 454 | graphics/asymptote/EXRFiles.h -2023/06/07 | 453 | support/texlab/crates/symbols/Cargo.toml -2023/06/07 | 453 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_multiple_keys.txt.snap -2023/06/07 | 453 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsTextDocumentIdentifier.h -2023/06/07 | 4531 | graphics/asymptote/webgl/fragment.glsl -2023/06/07 | 452 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__tikz_library_closed_brace.snap -2023/06/07 | 452 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_definition_line_break.txt.snap -2023/06/07 | 45222 | graphics/asymptote/LspCpp/include/LibLsp/lsp/Markup/string_ref.h -2023/06/07 | 4520 | graphics/asymptote/getopt1.c -2023/06/07 | 451 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__tikz_library_open_brace.snap -2023/06/07 | 4514 | graphics/asymptote/bbox.h -2023/06/07 | 44 | support/texlab/crates/parser/src/test_data/latex/include/class_include_options.txt -2023/06/07 | 44 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_definition_simple.txt -2023/06/07 | 44 | support/texlab/crates/parser/src/test_data/latex/environment/environment_definition_optional_arg.txt -2023/06/07 | 44 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_simple.txt -2023/06/07 | 449 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_package_closed_brace.snap -2023/06/07 | 449 | graphics/asymptote/tests/arith/pair.asy -2023/06/07 | 448 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_package_open_brace.snap -2023/06/07 | 448 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@002.txt.snap -2023/06/07 | 448 | support/texlab/crates/commands/src/snapshots/commands__find_envs__tests__test.snap -2023/06/07 | 4487 | graphics/asymptote/base/plain_shipout.asy -2023/06/07 | 4481 | graphics/asymptote/v3dfile.h -2023/06/07 | 447 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path.txt.snap -2023/06/07 | 4474 | graphics/asymptote/GUI/windows/widg_editBezier.ui -2023/06/07 | 4471 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-3f1f642c3356fd8e8d2a0787613ec09a56572b3a1e38c9629b6db9e8dead1117_min -2023/06/07 | 44634 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/tutorial.png -2023/06/07 | 445 | support/texlab/crates/base-db/src/util/regex_filter.rs -2023/06/07 | 445 | graphics/asymptote/examples/sacone.asy -2023/06/07 | 445 | graphics/asymptote/cudareflect/kernel.h -2023/06/07 | 443 | graphics/asymptote/cudareflect/ReflectanceMapper.cuh -2023/06/07 | 4438 | graphics/asymptote/LspCpp/third_party/uri/include/network/uri/detail/encode.hpp -2023/06/07 | 4438 | graphics/asymptote/LspCpp/third_party/rapidjson/test/perftest/platformtest.cpp -2023/06/07 | 442 | graphics/asymptote/doc/join3.asy -2023/06/07 | 441 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_field_name.snap -2023/06/07 | 441 | graphics/asymptote/examples/triangles.asy -2023/06/07 | 4416 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/bigintegertest.cpp -2023/06/07 | 43 | support/texlab/crates/parser/src/test_data/latex/environment/environment_nested.txt -2023/06/07 | 43 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/network-uri.dir/cmake_clean_target.cmake -2023/06/07 | 43 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail13.json -2023/06/07 | 43 | graphics/asymptote/examples/spring2.asy -2023/06/07 | 439 | graphics/asymptote/examples/gamma.asy -2023/06/07 | 439 | graphics/asymptote/doc/histogram.asy -2023/06/07 | 43960 | graphics/asymptote/fftw++.h -2023/06/07 | 4385 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/ref.json -2023/06/07 | 4384 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/Win32OpenGLWindow.cpp -2023/06/07 | 43830 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/reference/testing.md -2023/06/07 | 4381 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/filestreamtest.cpp -2023/06/07 | 437 | graphics/asymptote/cudareflect/tinyexr/Makefile.gcc-mingw -2023/06/07 | 4375 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/draft-04/schema -2023/06/07 | 4371 | graphics/asymptote/cudareflect/kernel.cu -2023/06/07 | 436 | graphics/asymptote/examples/colorpatch.asy -2023/06/07 | 43670 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/simpledom.png -2023/06/07 | 4366 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/ref.json -2023/06/07 | 4362 | graphics/asymptote/LspCpp/third_party/uri/test/optional_test.cpp -2023/06/07 | 4357 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_leak_test.py -2023/06/07 | 4348 | graphics/asymptote/doc/colo-asy.tex -2023/06/07 | 433 | graphics/asymptote/examples/twoSpheres.asy -2023/06/07 | 4335 | graphics/asymptote/prc/PRCTools/describePRC.h -2023/06/07 | 43335 | graphics/asymptote/examples/100d.pdb1 -2023/06/07 | 430 | support/texlab/crates/base-db/src/diagnostics.rs -2023/06/07 | 430 | graphics/asymptote/examples/unitoctant.asy -2023/06/07 | 43051 | graphics/asymptote/picture.cc -2023/06/07 | 4300 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_745.txt.snap -2023/06/07 | 42 | support/texlab/crates/parser/src/test_data/latex/include/biblatex_include_options.txt -2023/06/07 | 42 | graphics/asymptote/base/animate.asy -2023/06/07 | 429 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_include_equality_sign.txt.snap -2023/06/07 | 428 | graphics/asymptote/LspCpp/include/LibLsp/lsp/workspace/symbol.h -2023/06/07 | 4286 | graphics/asymptote/asy.ico -2023/06/07 | 4285 | graphics/asymptote/newexp.cc -2023/06/07 | 4283 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_premature_exit_test.cc -2023/06/07 | 427 | graphics/asymptote/examples/projectrevolution.asy -2023/06/07 | 42714 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-output-test-golden-lin.txt -2023/06/07 | 426 | graphics/asymptote/examples/pathintersectsurface.asy -2023/06/07 | 426 | graphics/asymptote/doc/grid3xyz.asy -2023/06/07 | 4269 | graphics/asymptote/LspCpp/src/lsp/ParentProcessWatcher.cpp -2023/06/07 | 4254 | graphics/asymptote/cudareflect/tinyexr/deps/miniz/readme.md -2023/06/07 | 424 | graphics/asymptote/examples/spiral3.asy -2023/06/07 | 4248 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/strtodtest.cpp -2023/06/07 | 4247 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/prime_tables.h -2023/06/07 | 4244 | graphics/asymptote/examples/fin.asy -2023/06/07 | 4242 | graphics/asymptote/tests/types/keyword.asy -2023/06/07 | 423 | graphics/asymptote/doc/log2graph.asy -2023/06/07 | 423 | graphics/asymptote/doc/helix.asy -2023/06/07 | 4230 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/logo/rapidjson.svg -2023/06/07 | 422 | graphics/asymptote/v3dtypes.csv -2023/06/07 | 4227 | graphics/asymptote/LspCpp/third_party/uri/src/uri_builder.cpp -2023/06/07 | 42202 | macros/latex/contrib/examz/examz.dtx -2023/06/07 | 421 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_empty_entry_closed.snap -2023/06/07 | 420 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_empty_entry_open.snap -2023/06/07 | 420 | graphics/asymptote/examples/PythagoreanTree.asy -2023/06/07 | 4209 | graphics/asymptote/flatguide.h -2023/06/07 | 4207 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/gtest-port-arch.h -2023/06/07 | 4202 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/types/guids.json -2023/06/07 | 41 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_thmtools.txt -2023/06/07 | 41 | support/texlab/crates/parser/src/test_data/latex/include/package_include_options.txt -2023/06/07 | 41 | graphics/asymptote/doc/bigdiagonal.asy -2023/06/07 | 41 | graphics/asymptote/cudareflect/tinyexr/jni/Application.mk -2023/06/07 | 419 | graphics/asymptote/examples/torus.asy -2023/06/07 | 419 | graphics/asymptote/base/shaders/compress.glsl -2023/06/07 | 418 | graphics/asymptote/examples/planeproject.asy -2023/06/07 | 417 | graphics/asymptote/doc/knots.asy -2023/06/07 | 4173 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-env-var-test.py -2023/06/07 | 4172 | graphics/asymptote/cudareflect/tinyexr/deps/miniz/examples/example6.c -2023/06/07 | 416 | graphics/asymptote/doc/bezier2.asy -2023/06/07 | 4169 | support/texlab/crates/texlab/tests/lsp/text_document/references.rs -2023/06/07 | 4166 | graphics/asymptote/GUI/windows/widgetPointEditor.ui -2023/06/07 | 4163 | support/texlab/crates/texlab/src/util/diagnostics.rs -2023/06/07 | 4160 | graphics/asymptote/LspCpp/third_party/uri/deps/ci/linux-presubmit.sh -2023/06/07 | 415 | graphics/asymptote/doc/linetype.asy -2023/06/07 | 4158 | graphics/asymptote/examples/advection.asy -2023/06/07 | 4156 | graphics/asymptote/runpair.in -2023/06/07 | 41517 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/move2.png -2023/06/07 | 414 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_word.snap -2023/06/07 | 414 | graphics/asymptote/examples/animations/glmovie.asy -2023/06/07 | 4130 | support/texlab/crates/parser/src/test_data/build_log/006.txt -2023/06/07 | 412 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/network-uri.dir/flags.make -2023/06/07 | 4126 | support/texlab/crates/texlab/src/features/symbols.rs -2023/06/07 | 4126 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest-test-part.cc -2023/06/07 | 41219 | support/texlab/crates/texlab/src/server.rs -2023/06/07 | 411 | graphics/asymptote/examples/animations/externalmovie.asy -2023/06/07 | 4118 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lru_cache.h -2023/06/07 | 4116 | graphics/asymptote/cudareflect/tinyexr/test/exrwrite/exrwritetest.cpp -2023/06/07 | 41154 | macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.tex -2023/06/07 | 410 | graphics/asymptote/examples/Sierpinski.asy -2023/06/07 | 40 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail32.json -2023/06/07 | 40998 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-param-test-test.cc -2023/06/07 | 408 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_simple.snap -2023/06/07 | 4089 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/callHierarchy.h -2023/06/07 | 40899 | graphics/asymptote/doc/FAQ/asy-faq.bfnn -2023/06/07 | 4088 | graphics/asymptote/base/plain_boxes.asy -2023/06/07 | 40876 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-port-test.cc -2023/06/07 | 407 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_open_brace.snap -2023/06/07 | 407 | support/texlab/crates/parser/Cargo.toml -2023/06/07 | 407 | graphics/asymptote/examples/parametricsurface.asy -2023/06/07 | 407 | graphics/asymptote/examples/BezierPatch.asy -2023/06/07 | 407 | graphics/asymptote/cudareflect/tinyexr/Makefile.gcc-mingw-msys -2023/06/07 | 4072 | graphics/asymptote/tests/types/order.asy -2023/06/07 | 406 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__hover__label_theorem_child_file_mumber.snap -2023/06/07 | 4067 | graphics/asymptote/doc/diatom.csv -2023/06/07 | 40665 | graphics/asymptote/examples/tvgen.asy -2023/06/07 | 405 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_simple.snap -2023/06/07 | 4051 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/istreamwrapper.h -2023/06/07 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_open_brace.snap -2023/06/07 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_set_simple.snap -2023/06/07 | 404 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_open_brace.snap -2023/06/07 | 404 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_redundant_comma.txt.snap -2023/06/07 | 403 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_set_open_brace.snap -2023/06/07 | 4028 | support/texlab/crates/texlab/src/features/completion/include.rs -2023/06/07 | 401 | graphics/asymptote/doc/image.asy -2023/06/07 | 401 | graphics/asymptote/cudareflect/tinyexr/test/unit/README.md -2023/06/07 | 400 | graphics/asymptote/examples/sacylinder.asy -2023/06/07 | 400 | graphics/asymptote/cudareflect/tinyexr/test/unit/Makefile -2023/06/07 | 4007 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/fwd.h -2023/06/07 | 4004 | support/texlab/crates/texlab/src/util/lsp_enums.rs -2023/06/07 | 39 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_options.txt -2023/06/07 | 39 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_complicated_options.txt -2023/06/07 | 39 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_definition_simple.txt -2023/06/07 | 39 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error1.txt -2023/06/07 | 39 | support/texlab/crates/parser/src/test_data/latex/caption/caption_figure.txt -2023/06/07 | 39 | graphics/asymptote/base/nopapersize.ps -2023/06/07 | 399 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_empty.snap -2023/06/07 | 398 | graphics/asymptote/examples/epix.asy -2023/06/07 | 3978 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsp_diagnostic.h -2023/06/07 | 396 | graphics/asymptote/doc/triangulate.asy -2023/06/07 | 396 | graphics/asymptote/doc/legend.asy -2023/06/07 | 3968 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/stringbuffer.h -2023/06/07 | 3967 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/unittest.h -2023/06/07 | 395 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/2by2.exr -2023/06/07 | 3956 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/itoatest.cpp -2023/06/07 | 395513 | graphics/asymptote/doc/asymptote.texi -2023/06/07 | 394 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_only_name.txt.snap -2023/06/07 | 39458 | graphics/asymptote/cudareflect/tinyexr/examples/common/cxxopts.hpp -2023/06/07 | 3943 | support/texlab/crates/texlab/tests/lsp/text_document/hover.rs -2023/06/07 | 393 | graphics/asymptote/GUI/setup.py -2023/06/07 | 3936 | graphics/asymptote/base/interpolate.asy -2023/06/07 | 3917 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample2_unittest.cc -2023/06/07 | 3915 | graphics/asymptote/LspCpp/include/LibLsp/lsp/Markup/Markup.h -2023/06/07 | 3912 | graphics/asymptote/tr.h -2023/06/07 | 390 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/buildWorkspace.h -2023/06/07 | 390 | graphics/asymptote/doc/tile.asy -2023/06/07 | 38 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail26.json -2023/06/07 | 38 | graphics/asymptote/examples/spring0.asy -2023/06/07 | 389 | support/texlab/crates/commands/src/lib.rs -2023/06/07 | 388 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/src/common.h -2023/06/07 | 387 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_simple.txt.snap -2023/06/07 | 3870 | graphics/asymptote/LspCpp/third_party/uri/test/uri_parse_path_test.cpp -2023/06/07 | 386 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__ignored_patterns.snap -2023/06/07 | 386 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__biblatex_include_simple.txt.snap -2023/06/07 | 385 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__verbatim_include_simple.txt.snap -2023/06/07 | 3857 | graphics/asymptote/examples/pipes.asy -2023/06/07 | 384 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_at_empty.snap -2023/06/07 | 384 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__tikz_library_import_simple.txt.snap -2023/06/07 | 384 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__escaped_brackets.txt.snap -2023/06/07 | 384 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/optional/zeroTerminatedFloats.json -2023/06/07 | 384 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/optional/zeroTerminatedFloats.json -2023/06/07 | 384 | graphics/asymptote/examples/RiemannSurfaceRoot.asy -2023/06/07 | 384 | graphics/asymptote/Delaunay.h -2023/06/07 | 3842 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_assert_by_exception_test.cc -2023/06/07 | 383 | graphics/asymptote/tests/io/csv.asy -2023/06/07 | 383 | graphics/asymptote/tests/arith/real.asy -2023/06/07 | 383 | graphics/asymptote/examples/Gouraud.asy -2023/06/07 | 3838 | support/texlab/crates/commands/src/build.rs -2023/06/07 | 382 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__pgf_library_import_simple.txt.snap -2023/06/07 | 382 | graphics/asymptote/doc/loggrid.asy -2023/06/07 | 380 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_incomplete.txt.snap -2023/06/07 | 380190 | support/texlab/images/demo.gif -2023/06/07 | 37 | support/texlab/crates/parser/src/test_data/latex/issue_874.txt -2023/06/07 | 37 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail3.json -2023/06/07 | 379 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@equation.txt.snap -2023/06/07 | 37991 | graphics/asymptote/path3.cc -2023/06/07 | 3790199 | graphics/asymptote/cudareflect/tinyexr/examples/deepview/deepview_screencast.gif -2023/06/07 | 378 | graphics/asymptote/examples/sinxlex.asy -2023/06/07 | 378 | graphics/asymptote/doc/icon.asy -2023/06/07 | 37889 | graphics/asymptote/exp.cc -2023/06/07 | 3780 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest-typed-test.cc -2023/06/07 | 377 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_impl.txt.snap -2023/06/07 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_simple.txt.snap -2023/06/07 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__bibtex_include_simple.txt.snap -2023/06/07 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__math_operator_no_impl.txt.snap -2023/06/07 | 376 | graphics/asymptote/LspCpp/include/LibLsp/lsp/ParentProcessWatcher.h -2023/06/07 | 376 | graphics/asymptote/examples/sphericalharmonic.asy -2023/06/07 | 376 | graphics/asymptote/doc/generalaxis3.asy -2023/06/07 | 376913 | graphics/asymptote/cudareflect/tinyexr/test/unit/catch.hpp -2023/06/07 | 37685 | graphics/asymptote/cudareflect/tinyexr/examples/common/stb_image_write.h -2023/06/07 | 3767 | support/texlab/README.md -2023/06/07 | 3767 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_test_macro_stack_footprint_test.cc -2023/06/07 | 3765 | graphics/asymptote/prc/PRCdouble.h -2023/06/07 | 375 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_simple.txt.snap -2023/06/07 | 375 | graphics/asymptote/examples/AiryDisk.asy -2023/06/07 | 374 | graphics/asymptote/doc/monthaxis.asy -2023/06/07 | 3740 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/cursorstreamwrappertest.cpp -2023/06/07 | 373 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__inkscape_include_simple.txt.snap -2023/06/07 | 373 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@preamble.txt.snap -2023/06/07 | 373 | graphics/asymptote/examples/projectelevation.asy -2023/06/07 | 373 | graphics/asymptote/doc/lineargraph.asy -2023/06/07 | 3739 | graphics/asymptote/examples/xstitch.asy -2023/06/07 | 3737 | graphics/asymptote/cudareflect/tinyexr/cmake/sanitizers/FindSanitizers.cmake -2023/06/07 | 3734 | support/texlab/crates/base-db/src/config.rs -2023/06/07 | 372 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__svg_include_simple.txt.snap -2023/06/07 | 372 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_reference_simple.txt.snap -2023/06/07 | 3729 | support/texlab/crates/texlab/src/util/chktex.rs -2023/06/07 | 37281 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/insituparsing.png -2023/06/07 | 3723 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest-matchers.cc -2023/06/07 | 3723 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/gmock.h -2023/06/07 | 3719 | graphics/asymptote/base/three_light.asy -2023/06/07 | 37135 | graphics/asymptote/cudareflect/tinyexr/examples/exr2fptiff/tiny_dng_writer.h -2023/06/07 | 370 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/encodings/utf16lebom.json -2023/06/07 | 370 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/encodings/utf16bebom.json -2023/06/07 | 3706 | graphics/asymptote/base/plain_constants.asy -2023/06/07 | 3704 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-env-var-test_.cc -2023/06/07 | 369 | graphics/asymptote/tests/gs/ghostscript.asy -2023/06/07 | 369 | graphics/asymptote/LspCpp/third_party/rapidjson/test/valgrind.supp -2023/06/07 | 368 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_link__document_import.snap -2023/06/07 | 368 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/encodings/utf16le.json -2023/06/07 | 368 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/encodings/utf16be.json -2023/06/07 | 3676 | graphics/asymptote/constructor.cc -2023/06/07 | 366 | graphics/asymptote/doc/lineargraph0.asy -2023/06/07 | 366 | graphics/asymptote/cudareflect/tinyexr.cc -2023/06/07 | 3667 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__aho_2006.txt.snap -2023/06/07 | 3667 | graphics/asymptote/shaders.cc -2023/06/07 | 365 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_reference_simple.txt.snap -2023/06/07 | 36540 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest-printers.h -2023/06/07 | 36526 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/X11OpenGLWindow.cpp -2023/06/07 | 3640 | graphics/asymptote/bbox3.h -2023/06/07 | 363 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_include_simple.txt.snap -2023/06/07 | 363 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/npm.md -2023/06/07 | 36371 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/move3.png -2023/06/07 | 3634 | graphics/asymptote/GLTextures.h -2023/06/07 | 3630 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsResponseError.h -2023/06/07 | 362 | graphics/asymptote/examples/pipeintersection.asy -2023/06/07 | 36243 | graphics/asymptote/prc/test.cc -2023/06/07 | 361 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_equation.txt.snap -2023/06/07 | 361 | graphics/asymptote/GUI/res/icons/anchor.svg -2023/06/07 | 361 | graphics/asymptote/examples/phase.asy -2023/06/07 | 3616 | graphics/asymptote/GUI/UndoRedoStack.py -2023/06/07 | 36152 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-output-test_.cc -2023/06/07 | 360 | graphics/asymptote/examples/washer.asy -2023/06/07 | 3601 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-death-test_ex_test.cc -2023/06/07 | 3601 | graphics/asymptote/cudareflect/tinyexr/test/exrcat/exrcat.cpp -2023/06/07 | 35 | support/texlab/crates/parser/src/test_data/latex/structure/structure_siblings.txt -2023/06/07 | 35 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_package.txt -2023/06/07 | 35 | graphics/asymptote/base/fontsize.asy -2023/06/07 | 3592 | graphics/asymptote/GUI/CustMatTransform.py -2023/06/07 | 358 | support/texlab/crates/texlab/src/features/highlight.rs -2023/06/07 | 3583 | graphics/asymptote/build-scripts/build-asymptote.dos -2023/06/07 | 357 | graphics/asymptote/doc/irregularcontour.asy -2023/06/07 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_definition_simple.txt.snap -2023/06/07 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_impl_error.txt.snap -2023/06/07 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_reference_simple.txt.snap -2023/06/07 | 3567 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/pow10.h -2023/06/07 | 3563 | graphics/asymptote/LspCpp/third_party/rapidjson/example/archiver/archiver.h -2023/06/07 | 355 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_link__document_include.snap -2023/06/07 | 355 | graphics/asymptote/LspCpp/third_party/rapidjson/library.json -2023/06/07 | 355 | graphics/asymptote/doc/scaledgraph.asy -2023/06/07 | 354 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/cmake/gtest_main.pc.in -2023/06/07 | 354 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/cmake/gmock_main.pc.in -2023/06/07 | 354 | graphics/asymptote/doc/reloadpdf.tex -2023/06/07 | 354 | graphics/asymptote/doc/planes.asy -2023/06/07 | 354 | graphics/asymptote/base/pstoedit.asy -2023/06/07 | 3547800 | systems/texlive/tlnet/archive/latexindent.windows.r67296.tar.xz -2023/06/07 | 3546 | support/texlab/crates/base-db/src/diagnostics/tex.rs -2023/06/07 | 35461 | graphics/asymptote/LspCpp/third_party/rapidjson/test/perftest/misctest.cpp -2023/06/07 | 352 | graphics/asymptote/examples/cylinder.asy -2023/06/07 | 3526 | graphics/asymptote/LspCpp/include/LibLsp/lsp/language/language.h -2023/06/07 | 35217 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/gtest-param-util.h -2023/06/07 | 351 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__user_environment.snap -2023/06/07 | 351 | graphics/asymptote/examples/vectorfieldsphere.asy -2023/06/07 | 3517 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock-pp_test.cc -2023/06/07 | 35149 | support/texlab/LICENSE -2023/06/07 | 35147 | graphics/asymptote/LICENSE -2023/06/07 | 35087 | support/texlab/crates/parser/src/latex.rs -2023/06/07 | 3500 | support/texlab/crates/texlab/src/util/components.rs -2023/06/07 | 34 | support/texlab/crates/parser/src/test_data/latex/include/svg_include_options.txt -2023/06/07 | 34 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail17.json -2023/06/07 | 34 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail15.json -2023/06/07 | 34 | graphics/asymptote/examples/teapotIBL.asy -2023/06/07 | 34 | graphics/asymptote/autogen.sh -2023/06/07 | 349 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_simple.txt.snap -2023/06/07 | 349 | graphics/asymptote/examples/logdown.asy -2023/06/07 | 348 | graphics/asymptote/examples/RiemannSurface.asy -2023/06/07 | 347 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_789.txt.snap -2023/06/07 | 347 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/cmake/gmock.pc.in -2023/06/07 | 3472 | graphics/asymptote/picture.h -2023/06/07 | 3470 | graphics/asymptote/LspCpp/include/LibLsp/lsp/CodeActionParams.h -2023/06/07 | 3467 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/data/webapp.json -2023/06/07 | 3466 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-filter-unittest_.cc -2023/06/07 | 345 | graphics/asymptote/examples/rainbow.asy -2023/06/07 | 344 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_simple.txt.snap -2023/06/07 | 3441 | graphics/asymptote/rounding.h -2023/06/07 | 343 | graphics/asymptote/doc/externalprc.tex -2023/06/07 | 3437 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/dtoatest.cpp -2023/06/07 | 34316 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/MacOpenGLWindow.mm -2023/06/07 | 342 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_star.txt.snap -2023/06/07 | 342 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/community_created_documentation.md -2023/06/07 | 342 | graphics/asymptote/lexical.h -2023/06/07 | 341 | graphics/asymptote/examples/slidedemo_.bbl -2023/06/07 | 341 | graphics/asymptote/examples/sacylinder3D.asy -2023/06/07 | 341 | graphics/asymptote/doc/subpictures.asy -2023/06/07 | 3419 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/gmock-more-matchers.h -2023/06/07 | 3407 | graphics/asymptote/LspCpp/third_party/rapidjson/rapidjson.autopkg -2023/06/07 | 33 | support/texlab/crates/parser/src/test_data/latex/graphics_path_options.txt -2023/06/07 | 33 | support/texlab/crates/parser/src/test_data/latex/environment/environment_simple.txt -2023/06/07 | 33 | support/texlab/crates/parser/src/test_data/latex/color/color_definition_simple.txt -2023/06/07 | 33 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail22.json -2023/06/07 | 339 | graphics/asymptote/cudareflect/tinyexr/test/CMakeLists.txt -2023/06/07 | 3392 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_throw_on_failure_ex_test.cc -2023/06/07 | 3387 | support/texlab/crates/texlab/tests/lsp/text_document/definition.rs -2023/06/07 | 3383 | graphics/asymptote/LspCpp/include/LibLsp/lsp/general/InitializeParams.h -2023/06/07 | 33764 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/types/paragraphs.json -2023/06/07 | 3375 | graphics/asymptote/tests/types/guide.asy -2023/06/07 | 3374 | graphics/asymptote/base/roundedpath.asy -2023/06/07 | 33741 | graphics/asymptote/LspCpp/src/lsp/Markup.cpp -2023/06/07 | 33667 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock-function-mocker_test.cc -2023/06/07 | 3365 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/patternProperties.json -2023/06/07 | 3365 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/patternProperties.json -2023/06/07 | 335 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/tiled_half_1x1_alpha.exr -2023/06/07 | 3358 | graphics/asymptote/examples/slidedemo.asy -2023/06/07 | 3349 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/signature_help.h -2023/06/07 | 33482 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/src/gmock-spec-builders.cc -2023/06/07 | 3346 | graphics/asymptote/base/shaders/blend.glsl -2023/06/07 | 33417 | graphics/asymptote/path.cc -2023/06/07 | 333 | graphics/asymptote/doc/asy.1.end -2023/06/07 | 3335 | graphics/asymptote/examples/pdb.asy -2023/06/07 | 332 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__hover__label_theorem_child_file.snap -2023/06/07 | 332 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__curly_group_simple.txt.snap -2023/06/07 | 332 | support/texlab/Cargo.toml -2023/06/07 | 3329 | graphics/asymptote/LspCpp/third_party/utfcpp/source/utf8/cpp11.h -2023/06/07 | 33296 | graphics/asymptote/LspCpp/third_party/uri/test/uri_test.cpp -2023/06/07 | 33240 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest-matchers.h -2023/06/07 | 3321 | graphics/asymptote/LspCpp/third_party/utfcpp/source/utf8/cpp17.h -2023/06/07 | 330 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_brackets_with_group.txt.snap -2023/06/07 | 32 | support/texlab/crates/parser/src/test_data/latex/graphics_path_command.txt -2023/06/07 | 32 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_reference_options.txt -2023/06/07 | 32 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail21.json -2023/06/07 | 3297 | graphics/asymptote/access.cc -2023/06/07 | 3295 | graphics/asymptote/stack.h -2023/06/07 | 3294 | graphics/asymptote/LspCpp/third_party/rapidjson/travis-doxygen.sh -2023/06/07 | 32887 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/normalparsing.png -2023/06/07 | 3284 | graphics/asymptote/cudareflect/tinyexr/examples/deepview/trackball.h -2023/06/07 | 3282 | graphics/asymptote/LspCpp/third_party/uri/CMakeLists.txt -2023/06/07 | 3280 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_ex_test.cc -2023/06/07 | 327 | graphics/asymptote/examples/sin1x.asy -2023/06/07 | 327 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/piz-bug-issue-100.exr -2023/06/07 | 3278 | graphics/asymptote/base/obj.asy -2023/06/07 | 326 | graphics/asymptote/examples/polardatagraph.asy -2023/06/07 | 326 | graphics/asymptote/examples/animations/pdfmovie.asy -2023/06/07 | 3267 | graphics/asymptote/GUI/Widg_addLabel.py -2023/06/07 | 3266 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/BUILD.bazel -2023/06/07 | 3265 | graphics/asymptote/program.cc -2023/06/07 | 325 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/listOverridableMethods.h -2023/06/07 | 325 | graphics/asymptote/examples/elevation.asy -2023/06/07 | 324 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_empty.txt.snap -2023/06/07 | 324 | graphics/asymptote/doc/HermiteSpline.asy -2023/06/07 | 3240 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-break-on-failure-unittest_.cc -2023/06/07 | 323 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_empty.txt.snap -2023/06/07 | 323 | graphics/asymptote/cudareflect/tinyexr/examples/nornalmap/README.md -2023/06/07 | 3231 | macros/unicodetex/latex/njuthesis/njuthesis.ins -2023/06/07 | 3230 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_leak_test_.cc -2023/06/07 | 322 | support/texlab/crates/test-utils/Cargo.toml -2023/06/07 | 322 | graphics/asymptote/examples/unitcircle.asy -2023/06/07 | 322 | graphics/asymptote/examples/cheese.asy -2023/06/07 | 3223 | support/texlab/crates/texlab/src/client.rs -2023/06/07 | 321 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_missing_brace.txt.snap -2023/06/07 | 3219 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-shuffle-test_.cc -2023/06/07 | 3218 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_test_utils.py -2023/06/07 | 321584 | graphics/asymptote/base/geometry.asy -2023/06/07 | 320 | graphics/asymptote/runtriple.h -2023/06/07 | 320 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/Move.h -2023/06/07 | 3204 | graphics/asymptote/asymptote.spec -2023/06/07 | 31 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_full.txt -2023/06/07 | 31 | support/texlab/crates/parser/src/test_data/latex/command_definition/math_operator_simple.txt -2023/06/07 | 31 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail14.json -2023/06/07 | 31 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail12.json -2023/06/07 | 31 | graphics/asymptote/cudareflect/tinyexr/test/unit/win32-filelist-utf8.inc -2023/06/07 | 319 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/encodings/utf8bom.json -2023/06/07 | 319839 | graphics/asymptote/cudareflect/tinyexr/deps/miniz/miniz.c -2023/06/07 | 3197 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_list_output_unittest_.cc -2023/06/07 | 3194 | support/texlab/crates/parser/src/test_data/build_log/001.txt -2023/06/07 | 318 | graphics/asymptote/patches/gcc3.3.2curses.patch -2023/06/07 | 31899 | graphics/pgf/contrib/tikz-nfold/tikz-nfold-doc.tex -2023/06/07 | 317 | graphics/asymptote/cudareflect/tinyexr/vcbuild.bat -2023/06/07 | 316 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__import_incomplete.txt.snap -2023/06/07 | 316 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/encodings/utf8.json -2023/06/07 | 31609 | graphics/asymptote/config.sub -2023/06/07 | 315 | graphics/asymptote/examples/hyperboloid.asy -2023/06/07 | 315428 | systems/texlive/tlnet/archive/texshade.source.r67295.tar.xz -2023/06/07 | 3153 | graphics/asymptote/genv.cc -2023/06/07 | 3150 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/unittestschema/address.json -2023/06/07 | 314 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__hover__citation_inside_entry.snap -2023/06/07 | 314 | support/texlab/crates/parser/src/test_data/bibtex/samples/aho_2006.txt -2023/06/07 | 314 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/internal/custom/gmock-generated-actions.h -2023/06/07 | 314 | graphics/asymptote/doc/logticks.asy -2023/06/07 | 314 | graphics/asymptote/base/graph_settings.asy -2023/06/07 | 314069 | macros/unicodetex/latex/njuthesis/njuthesis.dtx -2023/06/07 | 313 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_864.snap -2023/06/07 | 313 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_acronym.snap -2023/06/07 | 3139 | graphics/asymptote/LspCpp/third_party/uri/test/uri_comparison_test.cpp -2023/06/07 | 3139 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/dependencies.json -2023/06/07 | 3135 | graphics/asymptote/cudareflect/tinyexr/examples/exr2ldr/exr2ldr.cc -2023/06/07 | 31342 | graphics/asymptote/builtin.cc -2023/06/07 | 312 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__curly_group_missing_end.txt.snap -2023/06/07 | 312 | graphics/asymptote/examples/textpath.asy -2023/06/07 | 3125 | graphics/asymptote/doc/latexusage.tex -2023/06/07 | 311 | graphics/asymptote/tests/Makefile -2023/06/07 | 311 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/cmake/gtest.pc.in -2023/06/07 | 3119 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/filewritestream.h -2023/06/07 | 3109 | graphics/asymptote/cudareflect/tinyexr/deps/miniz/examples/example1.c -2023/06/07 | 3100 | systems/texlive/tlnet/archive/censor.r67293.tar.xz -2023/06/07 | 30 | support/texlab/crates/parser/src/test_data/latex/include/inkscape_include_options.txt -2023/06/07 | 30 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error2.txt -2023/06/07 | 309 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/projectConfigurationUpdate.h -2023/06/07 | 30920 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/gmock-more-actions.h -2023/06/07 | 308 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__hover__citation_inside_cite.snap -2023/06/07 | 308 | graphics/asymptote/tests/types/shadow.asy -2023/06/07 | 308 | graphics/asymptote/examples/oneoverx.asy -2023/06/07 | 3078 | graphics/asymptote/LspCpp/include/LibLsp/lsp/ResourceOperation.h -2023/06/07 | 3075 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/optional/bignum.json -2023/06/07 | 3075 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/optional/bignum.json -2023/06/07 | 307261 | graphics/asymptote/configure -2023/06/07 | 30716 | graphics/asymptote/LspCpp/src/lsp/lsp.cpp -2023/06/07 | 306 | graphics/asymptote/doc/binarytreetest.asy -2023/06/07 | 3069 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-throw-on-failure-test_.cc -2023/06/07 | 3063 | graphics/asymptote/LspCpp/third_party/uri/src/detail/grammar.hpp -2023/06/07 | 30638 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/macro_map.h -2023/06/07 | 3061 | support/texlab/crates/texlab/src/features/completion/tikz_library.rs -2023/06/07 | 3060 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/CMakeLists.txt -2023/06/07 | 3057 | support/texlab/crates/parser/src/test_data/build_log/004.txt -2023/06/07 | 303 | graphics/asymptote/examples/tensor.asy -2023/06/07 | 3036 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/test_cpp11.cpp -2023/06/07 | 3036 | graphics/asymptote/LspCpp/third_party/uri/CMakeFiles/doc.dir/build.make -2023/06/07 | 3034 | graphics/asymptote/doc/Makefile.in -2023/06/07 | 30307 | graphics/asymptote/exp.h -2023/06/07 | 302816 | graphics/pgf/contrib/tikz-nfold/tikz-nfold-doc.pdf -2023/06/07 | 3027 | support/texlab/crates/commands/src/fwd_search.rs -2023/06/07 | 3025 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest-assertion-result.cc -2023/06/07 | 3025 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/allOf.json -2023/06/07 | 3024 | graphics/asymptote/drawimage.h -2023/06/07 | 30208 | graphics/asymptote/prc/PRC.h -2023/06/07 | 301 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/organizeImports.h -2023/06/07 | 301 | graphics/asymptote/base/shaders/count.glsl -2023/06/07 | 30147 | graphics/asymptote/getopt.c -2023/06/07 | 3011 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/src/gmock_main.cc -2023/06/07 | 300 | graphics/asymptote/examples/strokepath.asy -2023/06/07 | 3009 | support/texlab/crates/texlab/tests/lsp/text_document/formatting.rs -2023/06/07 | 3009 | support/texlab/crates/parser/src/config.rs -2023/06/07 | 30003 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/types/alotofkeys.json -2023/06/07 | 2 | support/texlab/crates/parser/src/test_data/latex/parameter.txt -2023/06/07 | 2 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_brackets.txt -2023/06/07 | 2 | support/texlab/crates/parser/src/test_data/latex/group/unmatched_braces.txt -2023/06/07 | 2 | support/texlab/crates/parser/src/test_data/latex/generic_command_escape.txt -2023/06/07 | 2 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/progress.marks -2023/06/07 | 2 | graphics/asymptote/LspCpp/third_party/uri/CMakeFiles/progress.marks -2023/06/07 | 29 | support/texlab/crates/parser/src/test_data/latex/include/graphics_include_simple.txt -2023/06/07 | 29 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_optional.txt -2023/06/07 | 29 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail25.json -2023/06/07 | 29 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail11.json -2023/06/07 | 299 | graphics/asymptote/runpair.h -2023/06/07 | 2996 | graphics/asymptote/LspCpp/third_party/uri/src/detail/uri_parse_authority.cpp -2023/06/07 | 29900 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/faq.md -2023/06/07 | 298 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-5ace655ef080932dcc7e4abc9eab1d4f82c845453464993dfa3eb6c5822a1621 -2023/06/07 | 2989 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/dependencies.json -2023/06/07 | 2982 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample2.h -2023/06/07 | 297 | graphics/asymptote/build-scripts/README-binaries -2023/06/07 | 2979 | graphics/asymptote/doc/diatom.asy -2023/06/07 | 2974 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/filereadstream.h -2023/06/07 | 2969 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/ieee754.h -2023/06/07 | 2964 | graphics/asymptote/access.h -2023/06/07 | 2960 | graphics/asymptote/material.h -2023/06/07 | 2960 | graphics/asymptote/GUI/pyUIClass/widg_addPolyOpt.py -2023/06/07 | 296015 | graphics/pgf/contrib/tikz-nfold.zip -2023/06/07 | 295 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_empty.txt.snap -2023/06/07 | 294 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/classFileContents.h -2023/06/07 | 294 | graphics/asymptote/guideflags.h -2023/06/07 | 2948 | graphics/asymptote/GUI/pyUIClass/setCustomAnchor.py -2023/06/07 | 29479 | support/texlab/CHANGELOG.md -2023/06/07 | 2941 | graphics/asymptote/GUI/windows/widg_addPolyOpt.ui -2023/06/07 | 293 | graphics/asymptote/doc/makepen.asy -2023/06/07 | 2939 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/CommonWindowInterface.h -2023/06/07 | 29242 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/encodings.h -2023/06/07 | 29203 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/gmock_for_dummies.md -2023/06/07 | 291 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_open_brace_multiple.snap -2023/06/07 | 291 | graphics/asymptote/examples/trumpet.asy -2023/06/07 | 29193 | graphics/asymptote/LspCpp/src/lsp/ProtocolJsonHandler.cpp -2023/06/07 | 2915 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/_sass/main.scss -2023/06/07 | 2901 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/json.h -2023/06/07 | 28 | support/texlab/crates/parser/src/test_data/latex/include/package_include_multiple.txt -2023/06/07 | 28 | support/texlab/crates/parser/src/test_data/latex/include/biblatex_include_simple.txt -2023/06/07 | 28 | support/texlab/crates/parser/src/test_data/latex/group/equation_missing_end.txt -2023/06/07 | 28 | support/texlab/crates/parser/src/test_data/latex/graphics_path.txt -2023/06/07 | 28 | support/texlab/crates/parser/src/test_data/latex/equation_missing_begin.txt -2023/06/07 | 28 | graphics/asymptote/cudareflect/tinyexr/test/issues/160/requirements.txt -2023/06/07 | 289 | graphics/asymptote/examples/jump.asy -2023/06/07 | 289 | graphics/asymptote/cudareflect/tinyexr/examples/testmapgen/README.md -2023/06/07 | 289 | graphics/asymptote/base/res/notes.txt -2023/06/07 | 2899 | support/texlab/crates/test-utils/src/fixture.rs -2023/06/07 | 288 | graphics/asymptote/examples/sacone3D.asy -2023/06/07 | 288 | graphics/asymptote/doc/mexicanhat.asy -2023/06/07 | 2881 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/properties.json -2023/06/07 | 2881 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/properties.json -2023/06/07 | 2880 | graphics/asymptote/drawgroup.h -2023/06/07 | 2879 | graphics/asymptote/statistics.h -2023/06/07 | 287695 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock-matchers_test.cc -2023/06/07 | 2868 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/semanticHighlighting.h -2023/06/07 | 28512 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/uritest.cpp -2023/06/07 | 284 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/cmake/Config.cmake.in -2023/06/07 | 284 | graphics/asymptote/GUI/res/icons/text.svg -2023/06/07 | 283 | support/texlab/crates/texlab/src/features/completion/begin_snippet.rs -2023/06/07 | 283 | graphics/asymptote/cudareflect/tinyexr/test/c-binding/test.c -2023/06/07 | 2832 | support/texlab/crates/texlab/src/features/completion/label.rs -2023/06/07 | 2830 | graphics/asymptote/examples/alignedaxis.asy -2023/06/07 | 28278 | graphics/asymptote/symbolmaps.h -2023/06/07 | 282668 | macros/latex/contrib/examz.zip -2023/06/07 | 2814 | graphics/asymptote/LspCpp/third_party/rapidjson/example/messagereader/messagereader.cpp -2023/06/07 | 2813 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-param-test2-test.cc -2023/06/07 | 28114 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock-internal-utils_test.cc -2023/06/07 | 2804 | graphics/asymptote/LspCpp/src/jsonrpc/message.cpp -2023/06/07 | 2800 | graphics/asymptote/doc/asycolors.sty -2023/06/07 | 27 | support/texlab/crates/parser/src/test_data/latex/structure/structure_invalid_nesting.txt -2023/06/07 | 27 | support/texlab/crates/parser/src/test_data/latex/include/verbatim_include_simple.txt -2023/06/07 | 27 | support/texlab/crates/parser/src/test_data/latex/caption/caption_default.txt -2023/06/07 | 279 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_command_definition.snap -2023/06/07 | 279 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_simple.snap -2023/06/07 | 279 | graphics/asymptote/doc/hatch.asy -2023/06/07 | 27958 | graphics/asymptote/pen.h -2023/06/07 | 278 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_open_brace.snap -2023/06/07 | 2787 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/code_action.h -2023/06/07 | 277 | graphics/asymptote/LspCpp/src/jsonrpc/GCThreadContext.cpp -2023/06/07 | 277 | graphics/asymptote/doc/generalaxis.asy -2023/06/07 | 2776 | graphics/asymptote/symbol.h -2023/06/07 | 2772 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/src/nfd_common.c -2023/06/07 | 2771 | graphics/asymptote/doc/pixel.pdf -2023/06/07 | 276 | graphics/asymptote/tests/bench/6000circles.asy -2023/06/07 | 2766 | graphics/asymptote/lnkX64IconFix.nsh -2023/06/07 | 2749 | support/texlab/crates/parser/src/latex/lexer/types.rs -2023/06/07 | 2745 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/additionalProperties.json -2023/06/07 | 2745 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/additionalProperties.json -2023/06/07 | 2741 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/findOpenGLGlewGlut.lua -2023/06/07 | 273 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__user_command.snap -2023/06/07 | 273602 | macros/latex/contrib/examz/examz.pdf -2023/06/07 | 2732 | graphics/asymptote/record.h -2023/06/07 | 2731 | graphics/asymptote/tests/types/resolve.asy -2023/06/07 | 272 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__hover__string_inside_reference.snap -2023/06/07 | 2729 | graphics/asymptote/LspCpp/third_party/rapidjson/contrib/natvis/rapidjson.natvis -2023/06/07 | 2721 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/strfunc.h -2023/06/07 | 271 | support/texlab/crates/parser/src/test_data/latex/issue_745.txt -2023/06/07 | 271 | graphics/asymptote/patches/gc6.8_AIX.patch -2023/06/07 | 2707 | graphics/asymptote/settings.h -2023/06/07 | 2707 | graphics/asymptote/runtriple.in -2023/06/07 | 270390 | graphics/asymptote/cudareflect/tinyexr/tinyexr.h -2023/06/07 | 26 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_description_and_counter.txt -2023/06/07 | 26 | support/texlab/crates/parser/src/test_data/latex/command_definition/math_operator_no_impl.txt -2023/06/07 | 26 | support/texlab/crates/parser/src/test_data/latex/caption/caption_default_error.txt -2023/06/07 | 26 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail7.json -2023/06/07 | 26 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail6.json -2023/06/07 | 26 | graphics/asymptote/doc/filegraph.dat -2023/06/07 | 26 | graphics/asymptote/_config.yml -2023/06/07 | 269 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation_open_brace.snap -2023/06/07 | 269 | graphics/asymptote/runmath.h -2023/06/07 | 2697 | graphics/asymptote/table.h -2023/06/07 | 268 | graphics/asymptote/base/asy-init.el -2023/06/07 | 2688 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsTextEdit.h -2023/06/07 | 26844 | graphics/asymptote/runpath.cc -2023/06/07 | 2682 | graphics/asymptote/LspCpp/third_party/uri/test/uri_reference_test.cpp -2023/06/07 | 26817 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/writer.h -2023/06/07 | 2680 | graphics/asymptote/examples/soccerball.asy -2023/06/07 | 26804587 | graphics/asymptote.zip -2023/06/07 | 267 | graphics/asymptote/examples/hyperboloidsilhouette.asy -2023/06/07 | 2675 | graphics/asymptote/cudareflect/tinyexr/deps/miniz/examples/example4.c -2023/06/07 | 2674 | graphics/asymptote/doc/markers1.asy -2023/06/07 | 26693 | graphics/asymptote/dec.cc -2023/06/07 | 2665 | support/texlab/crates/citeproc/src/field/date.rs -2023/06/07 | 2662 | graphics/asymptote/LspCpp/third_party/rapidjson/appveyor.yml -2023/06/07 | 2661 | graphics/asymptote/runbacktrace.cc -2023/06/07 | 265 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_ref_empty.snap -2023/06/07 | 2653 | graphics/asymptote/doc/TeXShopAndAsymptote.tex -2023/06/07 | 264 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__glossary_ref_simple.snap -2023/06/07 | 264 | graphics/asymptote/LspCpp/include/LibLsp/lsp/Directory.h -2023/06/07 | 264 | graphics/asymptote/examples/labelbox.asy -2023/06/07 | 264 | graphics/asymptote/examples/coag.asy -2023/06/07 | 2649 | graphics/asymptote/base/patterns.asy -2023/06/07 | 2642 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/memorystream.h -2023/06/07 | 26404 | support/texlab/texlab.pdf -2023/06/07 | 263 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__glossary_ref_open_brace.snap -2023/06/07 | 2631 | graphics/asymptote/GUI/windows/setCustomAnchor.ui -2023/06/07 | 262 | graphics/asymptote/doc/loggraph.asy -2023/06/07 | 2626 | graphics/asymptote/examples/worldmap.asy -2023/06/07 | 2623 | graphics/asymptote/jsfile.h -2023/06/07 | 261 | graphics/asymptote/doc/join.asy -2023/06/07 | 261756 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_unittest.cc -2023/06/07 | 2615 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsWorkspaceEdit.h -2023/06/07 | 2614 | graphics/asymptote/pipestream.h -2023/06/07 | 2613 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/uniqueItems.json -2023/06/07 | 2613 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/uniqueItems.json -2023/06/07 | 2611 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/test_cpp17.cpp -2023/06/07 | 2610 | support/texlab/crates/symbols/src/types.rs -2023/06/07 | 26102 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/regex.h -2023/06/07 | 260 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/MessageProducer.h -2023/06/07 | 2608 | graphics/asymptote/LspCpp/third_party/uri/deps/ci/macos-presubmit.sh -2023/06/07 | 2605 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/premake4.lua -2023/06/07 | 260289 | graphics/asymptote/cudareflect/tinyexr/examples/common/stb_image.h -2023/06/07 | 25 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_reference_options.txt -2023/06/07 | 25 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error3.txt -2023/06/07 | 25 | support/texlab/crates/parser/src/test_data/bibtex/preamble.txt -2023/06/07 | 25 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/remotes/integer.json -2023/06/07 | 25 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/remotes/folder/folderInteger.json -2023/06/07 | 25 | graphics/asymptote/cudareflect/tinyexr/experimental/js/Makefile -2023/06/07 | 2598 | graphics/asymptote/cudareflect/simpson.cuh -2023/06/07 | 2591 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/extends.json -2023/06/07 | 2586 | support/texlab/texlab.tex -2023/06/07 | 2586 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_symbol__smoke.snap -2023/06/07 | 257 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_class.snap -2023/06/07 | 2578 | graphics/asymptote/LspCpp/third_party/uri/test/uri_parse_scheme_test.cpp -2023/06/07 | 2576 | support/texlab/crates/texlab/src/server/extensions.rs -2023/06/07 | 2576 | graphics/asymptote/LspCpp/third_party/rapidjson/example/capitalize/capitalize.cpp -2023/06/07 | 25701 | graphics/asymptote/runpath3d.cc -2023/06/07 | 256 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/misc/footer.html -2023/06/07 | 256 | graphics/asymptote/doc/shadedtiling.asy -2023/06/07 | 25651 | graphics/asymptote/bezierpatch.cc -2023/06/07 | 2561 | graphics/asymptote/program.h -2023/06/07 | 255 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__theorem_end.snap -2023/06/07 | 25584 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/rapidjson.h -2023/06/07 | 2555 | graphics/asymptote/cudareflect/tinyexr/cmake/sanitizers/FindTSan.cmake -2023/06/07 | 2554 | graphics/asymptote/cudareflect/tinyexr/examples/ldr2exr/ldr2exr.cc -2023/06/07 | 25503 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/gmock-function-mocker.h -2023/06/07 | 254 | graphics/asymptote/examples/parametricelevation.asy -2023/06/07 | 254 | graphics/asymptote/examples/contextfonts.asy -2023/06/07 | 2543 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/Win32Window.h -2023/06/07 | 2542 | graphics/asymptote/policy.h -2023/06/07 | 25357 | graphics/asymptote/base/lmfit.asy -2023/06/07 | 2534 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/memorybuffer.h -2023/06/07 | 25284 | support/texlab/crates/texlab/src/features/completion/builder.rs -2023/06/07 | 2526 | graphics/asymptote/LspCpp/third_party/uri/src/detail/uri_resolve.cpp -2023/06/07 | 252536 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest.cc -2023/06/07 | 251 | graphics/asymptote/examples/triceratops.asy -2023/06/07 | 251 | graphics/asymptote/base/metapost.asy -2023/06/07 | 2518 | graphics/asymptote/prc/PRCbitStream.h -2023/06/07 | 2515 | support/texlab/crates/parser/src/test_data/build_log/003.txt -2023/06/07 | 25154 | graphics/asymptote/doc/extra/intro.asy -2023/06/07 | 2514 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/MacOpenGLWindow.h -2023/06/07 | 2514 | graphics/asymptote/cudareflect/EXRFiles.cc -2023/06/07 | 250 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__theorem_begin.snap -2023/06/07 | 250 | graphics/asymptote/examples/transparentCubes.asy -2023/06/07 | 2505 | graphics/asymptote/README -2023/06/07 | 2505 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-color-test_.cc -2023/06/07 | 2505 | graphics/asymptote/binaries/x86_64-windows/README -2023/06/07 | 2505 | graphics/asymptote/binaries/i386-windows/README -2023/06/07 | 2504 | graphics/asymptote/examples/mosquito.asy -2023/06/07 | 24 | support/texlab/crates/parser/src/test_data/latex/include/svg_include_simple.txt -2023/06/07 | 24 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail5.json -2023/06/07 | 24 | graphics/asymptote/doc/diagonal.asy -2023/06/07 | 2499 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest_prod.h -2023/06/07 | 2499 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/completion.h -2023/06/07 | 2496 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_testbridge_test.py -2023/06/07 | 2495 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-uninitialized-test.py -2023/06/07 | 2492 | graphics/asymptote/base/three_margins.asy -2023/06/07 | 24924 | graphics/asymptote/examples/uhrturm.obj -2023/06/07 | 248 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error4.txt.snap -2023/06/07 | 248 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/exr-io.h -2023/06/07 | 247 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_883.snap -2023/06/07 | 2479 | graphics/asymptote/cudareflect/tinyexr/CMakeLists.txt -2023/06/07 | 2477 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/ostreamwrappertest.cpp -2023/06/07 | 2477 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/src/SConstruct -2023/06/07 | 24777 | graphics/asymptote/symbolmaps.cc -2023/06/07 | 2471 | graphics/asymptote/build-scripts/build-asymptote -2023/06/07 | 24712 | graphics/asymptote/drawsurface.cc -2023/06/07 | 2470 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample1.cc -2023/06/07 | 246 | graphics/asymptote/doc/axis3.asy -2023/06/07 | 2467 | support/texlab/crates/distro/src/miktex.rs -2023/06/07 | 245 | graphics/asymptote/examples/alignbox.asy -2023/06/07 | 2459 | graphics/asymptote/LspCpp/third_party/uri/include/network/uri/uri_errors.hpp -2023/06/07 | 2455 | support/texlab/crates/parser/src/test_data/build_log/002.txt -2023/06/07 | 2451 | graphics/asymptote/base/labelpath3.asy -2023/06/07 | 244 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_brackets.txt.snap -2023/06/07 | 244 | graphics/asymptote/tests/arith/triple.asy -2023/06/07 | 24483 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-json-output-unittest.py -2023/06/07 | 24474 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-listener-test.cc -2023/06/07 | 2445 | graphics/asymptote/GUI/PrimitiveShape.py -2023/06/07 | 243 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/WorkspaceSymbolParams.h -2023/06/07 | 243 | graphics/asymptote/doc/cube.asy -2023/06/07 | 242 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@hello_world.txt.snap -2023/06/07 | 242 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_braces.txt.snap -2023/06/07 | 242 | graphics/asymptote/examples/equilateral.asy -2023/06/07 | 242 | graphics/asymptote/cudareflect/tinyexr/appveyor.yml -2023/06/07 | 242 | graphics/asymptote/BUGS -2023/06/07 | 2424 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/WebSocketServer.h -2023/06/07 | 241 | graphics/asymptote/cudareflect/common.h -2023/06/07 | 2418 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/MessageJsonHandler.h -2023/06/07 | 2411 | support/texlab/crates/texlab/src/server/dispatch.rs -2023/06/07 | 2411 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_skip_check_output_test.py -2023/06/07 | 2411 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_json_test_utils.py -2023/06/07 | 24104 | graphics/asymptote/LspCpp/src/jsonrpc/RemoteEndPoint.cpp -2023/06/07 | 240 | graphics/asymptote/doc/parametricgraph.asy -2023/06/07 | 2407 | graphics/asymptote/LspCpp/include/LibLsp/lsp/windows/MessageNotify.h -2023/06/07 | 2404 | graphics/asymptote/common.h -2023/06/07 | 24043 | graphics/asymptote/LspCpp/include/LibLsp/lsp/general/lsTextDocumentClientCapabilities.h -2023/06/07 | 2403 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_no_test_unittest.cc -2023/06/07 | 2400 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-param-test-invalid-name1-test.py -2023/06/07 | 23 | support/texlab/crates/parser/src/test_data/latex/include/class_include_simple.txt -2023/06/07 | 23 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_simple.txt -2023/06/07 | 23 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail20.json -2023/06/07 | 23 | graphics/asymptote/GUI/__init__.py -2023/06/07 | 2398 | graphics/asymptote/examples/SierpinskiSponge.asy -2023/06/07 | 2396 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest-typed-test_test.h -2023/06/07 | 2396 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/namespacetest.cpp -2023/06/07 | 23904 | graphics/asymptote/process.cc -2023/06/07 | 238 | graphics/asymptote/tests/TestLib.asy -2023/06/07 | 238 | graphics/asymptote/GUI/xasyValidator.py -2023/06/07 | 238 | graphics/asymptote/doc/filegraph.asy -2023/06/07 | 2378 | graphics/asymptote/profile.py -2023/06/07 | 23717 | graphics/asymptote/base/three_arrows.asy -2023/06/07 | 236 | graphics/asymptote/tests/string/erase.asy -2023/06/07 | 236 | graphics/asymptote/examples/annotation.asy -2023/06/07 | 2362 | graphics/asymptote/examples/spectrum.asy -2023/06/07 | 2360 | support/texlab/crates/symbols/src/workspace/tests.rs -2023/06/07 | 235 | graphics/asymptote/examples/cos2theta.asy -2023/06/07 | 235 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/shader.frag -2023/06/07 | 235780 | systems/texlive/tlnet/archive/censor.doc.r67293.tar.xz -2023/06/07 | 23567 | graphics/asymptote/drawsurface.h -2023/06/07 | 2355 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-param-test-invalid-name2-test.py -2023/06/07 | 2353 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/getRefactorEdit.h -2023/06/07 | 234 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__hover__field_known.snap -2023/06/07 | 234 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@comment.txt.snap -2023/06/07 | 234 | graphics/asymptote/doc/beziercurve.asy -2023/06/07 | 2341 | graphics/asymptote/prc/PRCTools/iPRCFile.h -2023/06/07 | 233 | graphics/asymptote/examples/cardioid.asy -2023/06/07 | 2335 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_all_test.cc -2023/06/07 | 2333 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/network-uri.dir/DependInfo.cmake -2023/06/07 | 2328 | graphics/asymptote/virtualfieldaccess.h -2023/06/07 | 2328 | graphics/asymptote/LspCpp/third_party/uri/README.rst -2023/06/07 | 23281 | macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty -2023/06/07 | 2319 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/_layouts/default.html -2023/06/07 | 2313 | graphics/asymptote/LspCpp/third_party/uri/src/detail/uri_advance_parts.cpp -2023/06/07 | 2310 | graphics/asymptote/base/plain_margins.asy -2023/06/07 | 2303 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/ostreamwrapper.h -2023/06/07 | 22 | support/texlab/crates/parser/src/test_data/latex/include/bibtex_include_simple.txt -2023/06/07 | 22 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_argc.txt -2023/06/07 | 22 | support/texlab/crates/parser/src/test_data/latex/caption/caption_minimal.txt -2023/06/07 | 22 | graphics/asymptote/tests/output/line.asy -2023/06/07 | 22 | graphics/asymptote/LspCpp/third_party/uri/CMakeFiles/doc.dir/progress.make -2023/06/07 | 22 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail9.json -2023/06/07 | 22 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail19.json -2023/06/07 | 22 | graphics/asymptote/GUI/configs/__init__.py -2023/06/07 | 229 | graphics/asymptote/LspCpp/third_party/rapidjson/RapidJSON.pc.in -2023/06/07 | 229 | graphics/asymptote/LspCpp/third_party/rapidjson/docker/debian/Dockerfile -2023/06/07 | 2295920 | macros/latex/contrib/tagpdf.zip -2023/06/07 | 22946 | graphics/asymptote/base/syzygy.asy -2023/06/07 | 2292 | support/texlab/crates/texlab/src/features/rename/entry.rs -2023/06/07 | 2292 | graphics/asymptote/cudareflect/tinyexr/cmake/sanitizers/FindMSan.cmake -2023/06/07 | 228 | graphics/asymptote/examples/circumcircle.asy -2023/06/07 | 2289 | graphics/asymptote/LspCpp/src/lsp/lsp_diagnostic.cpp -2023/06/07 | 22873 | graphics/asymptote/examples/piicon.png -2023/06/07 | 2286 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-global-environment-unittest_.cc -2023/06/07 | 2282 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-param-test-test.h -2023/06/07 | 2282 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/additionalItems.json -2023/06/07 | 2281 | graphics/asymptote/LspCpp/third_party/uri/src/detail/algorithm_split.hpp -2023/06/07 | 227 | support/texlab/crates/syntax/Cargo.toml -2023/06/07 | 227 | support/texlab/crates/distro/Cargo.toml -2023/06/07 | 227 | support/texlab/crates/base-db/src/util.rs -2023/06/07 | 2279 | graphics/asymptote/errormsg.cc -2023/06/07 | 2277 | graphics/asymptote/base/texcolors.asy -2023/06/07 | 2276 | graphics/asymptote/prc/PRCTools/inflation.cc -2023/06/07 | 2272 | graphics/asymptote/cudareflect/tinyexr/examples/rgbe2exr/rgbe2exr.cc -2023/06/07 | 226 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_package_ref.snap -2023/06/07 | 2269 | graphics/asymptote/build-scripts/HOWTO-MSWindows -2023/06/07 | 2266 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/not.json -2023/06/07 | 2266 | graphics/asymptote/align.h -2023/06/07 | 22663 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest-param-test.h -2023/06/07 | 2265 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-setuptestsuite-test.py -2023/06/07 | 22642 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-filepath-test.cc -2023/06/07 | 2260 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample2.cc -2023/06/07 | 2260 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/cursorstreamwrapper.h -2023/06/07 | 22580 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/allocators.h -2023/06/07 | 2257 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/additionalItems.json -2023/06/07 | 2255 | graphics/asymptote/LspCpp/third_party/rapidjson/example/simplepullreader/simplepullreader.cpp -2023/06/07 | 22526 | graphics/asymptote/LspCpp/third_party/uri/test/uri_builder_test.cpp -2023/06/07 | 224 | graphics/asymptote/tests/types/init.asy -2023/06/07 | 2245 | graphics/asymptote/LspCpp/third_party/rapidjson/example/prettyauto/prettyauto.cpp -2023/06/07 | 22426 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/internals.md -2023/06/07 | 223 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_simple.snap -2023/06/07 | 223 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/resolveCodeLens.h -2023/06/07 | 223 | graphics/asymptote/cudareflect/tinyexr/jni/Android.mk -2023/06/07 | 2239 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_all_test.cc -2023/06/07 | 2239 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/insituparsing.dot -2023/06/07 | 22345 | graphics/asymptote/knot.cc -2023/06/07 | 2230 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_skip_environment_check_output_test.py -2023/06/07 | 222 | graphics/asymptote/wce -2023/06/07 | 222 | graphics/asymptote/examples/yingyang.asy -2023/06/07 | 2223 | graphics/asymptote/LspCpp/third_party/uri/deps/CONTRIBUTORS -2023/06/07 | 2222 | graphics/asymptote/tests/frames/loop.asy -2023/06/07 | 22210 | support/texlab/crates/citeproc/src/driver.rs -2023/06/07 | 221591 | info/spanish/antique-spanish-units/antique-spanish-units.pdf -2023/06/07 | 22121 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/tutorial.md -2023/06/07 | 2205 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/RequestInMessage.h -2023/06/07 | 2201 | support/texlab/crates/base-db/src/diagnostics/log.rs -2023/06/07 | 2201 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest-all.cc -2023/06/07 | 21 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_description.txt -2023/06/07 | 21 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_counter.txt -2023/06/07 | 21 | support/texlab/crates/parser/src/test_data/latex/label/label_number.txt -2023/06/07 | 21 | support/texlab/crates/parser/src/test_data/latex/inline_double_dollar.txt -2023/06/07 | 21 | support/texlab/crates/parser/src/test_data/latex/caption/caption_minimal_error.txt -2023/06/07 | 219 | graphics/asymptote/doc/penimage.asy -2023/06/07 | 219 | graphics/asymptote/doc/graphwithderiv.asy -2023/06/07 | 21998 | graphics/asymptote/LspCpp/third_party/uri/include/network/uri/uri.hpp -2023/06/07 | 21956 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/internals.zh-cn.md -2023/06/07 | 2194 | graphics/asymptote/locate.cc -2023/06/07 | 2191 | graphics/asymptote/examples/splitpatch.asy -2023/06/07 | 218 | graphics/asymptote/LspCpp/include/LibLsp/lsp/ProtocolJsonHandler.h -2023/06/07 | 218 | graphics/asymptote/doc/datagraph.asy -2023/06/07 | 2187 | graphics/asymptote/base/plain_debugger.asy -2023/06/07 | 21874 | graphics/asymptote/runmath.cc -2023/06/07 | 2182 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/willSave.h -2023/06/07 | 2182 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/documentColor.h -2023/06/07 | 217 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/GCThreadContext.h -2023/06/07 | 2175 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_sole_header_test.cc -2023/06/07 | 2175 | graphics/asymptote/LspCpp/third_party/rapidjson/contrib/natvis/LICENSE -2023/06/07 | 216 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_empty.txt.snap -2023/06/07 | 2164 | graphics/asymptote/frame.h -2023/06/07 | 2161 | graphics/asymptote/LspCpp/include/LibLsp/lsp/working_files.h -2023/06/07 | 215 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_escape.txt.snap -2023/06/07 | 21546 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/tutorial.zh-cn.md -2023/06/07 | 21535 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/reference/assertions.md -2023/06/07 | 2151 | graphics/asymptote/LspCpp/third_party/uri/include/network/uri/detail/translate.hpp -2023/06/07 | 21493 | graphics/asymptote/lspserv.cc -2023/06/07 | 2147 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_prod_test.cc -2023/06/07 | 2146 | graphics/asymptote/abs3doutfile.h -2023/06/07 | 21466 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-filter-unittest.py -2023/06/07 | 2144 | graphics/asymptote/cudareflect/tinyexr/cmake/sanitizers/FindASan.cmake -2023/06/07 | 21448 | graphics/asymptote/base/feynman.asy -2023/06/07 | 2143 | support/texlab/crates/texlab/src/features/folding.rs -2023/06/07 | 2142 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/negative.cpp -2023/06/07 | 2138 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-param-test-invalid-name2-test_.cc -2023/06/07 | 2134 | graphics/asymptote/drawlabel.h -2023/06/07 | 21343 | graphics/asymptote/fileio.h -2023/06/07 | 2132 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample4.h -2023/06/07 | 2130 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/production.h -2023/06/07 | 212 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__hover__section.snap -2023/06/07 | 21276 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/sax.md -2023/06/07 | 21271 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/documenttest.cpp -2023/06/07 | 21271 | graphics/asymptote/LspCpp/include/LibLsp/lsp/general/lsServerCapabilities.h -2023/06/07 | 212087 | info/spanish/antique-spanish-units.zip -2023/06/07 | 211 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_word.snap -2023/06/07 | 2115 | graphics/asymptote/LspCpp/third_party/uri/src/detail/algorithm_find.hpp -2023/06/07 | 2113 | graphics/asymptote/LspCpp/third_party/utfcpp/samples/docsample.cpp -2023/06/07 | 2110 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample4.cc -2023/06/07 | 210 | graphics/asymptote/examples/spiral.asy -2023/06/07 | 210 | graphics/asymptote/build-scripts/asy-indent.el -2023/06/07 | 2109 | graphics/asymptote/seconds.h -2023/06/07 | 2109 | graphics/asymptote/base/drawtree.asy -2023/06/07 | 2107 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/src/gmock-all.cc -2023/06/07 | 2101 | graphics/asymptote/examples/truncatedIcosahedron.asy -2023/06/07 | 2100 | graphics/asymptote/LspCpp/third_party/uri/src/detail/algorithm.hpp -2023/06/07 | 20 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_simple.txt -2023/06/07 | 20 | support/texlab/crates/parser/src/test_data/latex/include/tikz_library_import_simple.txt -2023/06/07 | 20 | support/texlab/crates/parser/src/test_data/latex/include/package_include_simple.txt -2023/06/07 | 20 | support/texlab/crates/parser/src/test_data/latex/include/latex_input_path_brackets.txt -2023/06/07 | 20 | support/texlab/crates/parser/src/test_data/latex/include/inkscape_include_simple.txt -2023/06/07 | 20 | support/texlab/crates/parser/src/test_data/latex/citation/citation_prenote_postnote.txt -2023/06/07 | 20 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail23.json -2023/06/07 | 20989 | graphics/asymptote/base/plain_bounds.asy -2023/06/07 | 20974 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/reference/mocking.md -2023/06/07 | 2094 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/custom/gtest-printers.h -2023/06/07 | 20942 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/network-uri.dir/build.make -2023/06/07 | 209230 | graphics/asymptote/asy.list -2023/06/07 | 208908 | graphics/asymptote/doc/asy-latex.pdf -2023/06/07 | 2088 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_help_test_.cc -2023/06/07 | 20829 | graphics/asymptote/cudareflect/tinyexr/test/fuzzer/issue-77-heap-buffer-overflow -2023/06/07 | 20816 | graphics/asymptote/runtime.in -2023/06/07 | 207 | graphics/asymptote/examples/triangle.asy -2023/06/07 | 207686 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/gmock-matchers.h -2023/06/07 | 2074 | support/texlab/crates/citeproc/src/field/author.rs -2023/06/07 | 2073 | graphics/asymptote/LspCpp/third_party/uri/include/network/uri/detail/uri_parts.hpp -2023/06/07 | 206 | graphics/asymptote/examples/log.asy -2023/06/07 | 2069 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_skip_in_environment_setup_test.cc -2023/06/07 | 2068 | support/texlab/crates/texlab/src/features/formatting/latexindent.rs -2023/06/07 | 20639 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_xml_output_unittest.py -2023/06/07 | 205 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_complete_entry.snap -2023/06/07 | 205495 | graphics/asymptote/base/colormap.asy -2023/06/07 | 2053 | graphics/asymptote/LspCpp/third_party/uri/test/test_uri.hpp -2023/06/07 | 2045 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/clzll.h -2023/06/07 | 2040 | support/texlab/crates/parser/src/latex/lexer.rs -2023/06/07 | 2040 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/X11OpenGLWindow.h -2023/06/07 | 2035 | graphics/asymptote/LspCpp/third_party/uri/src/detail/uri_normalize.cpp -2023/06/07 | 2034 | graphics/asymptote/doc/elliptic.asy -2023/06/07 | 2033 | graphics/asymptote/LspCpp/include/LibLsp/lsp/location_type.h -2023/06/07 | 202 | graphics/asymptote/tests/frames/stat2.asy -2023/06/07 | 202 | graphics/asymptote/glew.c -2023/06/07 | 202 | graphics/asymptote/doc/exp.asy -2023/06/07 | 202 | graphics/asymptote/build-scripts/run-in-indent.el -2023/06/07 | 202947 | graphics/asymptote/cudareflect/tinyexr/asakusa.png -2023/06/07 | 20277 | graphics/asymptote/base/contour.asy -2023/06/07 | 2023 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-param-test-invalid-name1-test_.cc -2023/06/07 | 2023 | graphics/asymptote/examples/slope.asy -2023/06/07 | 2013 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/lsResponseMessage.h -2023/06/07 | 20135 | graphics/asymptote/runpicture.in -2023/06/07 | 2012 | graphics/asymptote/varinit.h -2023/06/07 | 20123 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/reference/matchers.md -2023/06/07 | 2011 | graphics/asymptote/cudareflect/tinyexr/cmake/sanitizers/asan-wrapper -2023/06/07 | 2009 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/getMoveDestinations.h -2023/06/07 | 2005 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_skip_test.cc -2023/06/07 | 20051 | graphics/asymptote/doc/asyRefCard.tex -2023/06/07 | 2004 | graphics/asymptote/varinit.cc -2023/06/07 | 20029 | graphics/asymptote/camp.y -2023/06/07 | 20010 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/test_data/utf8_invalid.txt -2023/06/07 | 1 | support/texlab/crates/parser/src/test_data/latex/parameter_error.txt -2023/06/07 | 19 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_error.txt -2023/06/07 | 19 | support/texlab/crates/parser/src/test_data/latex/label/label_definition_line_break.txt -2023/06/07 | 19 | support/texlab/crates/parser/src/test_data/latex/issue_789.txt -2023/06/07 | 19 | support/texlab/crates/parser/src/test_data/latex/inline.txt -2023/06/07 | 19 | support/texlab/crates/parser/src/test_data/latex/include/pgf_library_import_simple.txt -2023/06/07 | 19 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_reference_simple.txt -2023/06/07 | 199 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/network-uri.dir/progress.make -2023/06/07 | 199 | graphics/asymptote/examples/upint.asy -2023/06/07 | 199 | graphics/asymptote/examples/BezierTriangle.asy -2023/06/07 | 1997 | support/texlab/crates/distro/src/lib.rs -2023/06/07 | 19967 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/sax.zh-cn.md -2023/06/07 | 1995 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample4_unittest.cc -2023/06/07 | 198 | graphics/asymptote/examples/tanh.asy -2023/06/07 | 198488 | graphics/asymptote/doc/CAD.pdf -2023/06/07 | 1982 | graphics/asymptote/inst.h -2023/06/07 | 1980 | support/texlab/crates/symbols/src/document/bib.rs -2023/06/07 | 197 | support/texlab/crates/texlab/src/features.rs -2023/06/07 | 1977 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock-port_test.cc -2023/06/07 | 1975 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/enum.json -2023/06/07 | 1975 | graphics/asymptote/array.h -2023/06/07 | 19752 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/uri.h -2023/06/07 | 19735 | graphics/asymptote/base/plain_arrows.asy -2023/06/07 | 1971 | graphics/asymptote/base/slopefield.asy -2023/06/07 | 196 | graphics/asymptote/LspCpp/include/LibLsp/lsp/general/exit.h -2023/06/07 | 196 | graphics/asymptote/examples/lowint.asy -2023/06/07 | 196 | graphics/asymptote/examples/label3ribbon.asy -2023/06/07 | 196 | graphics/asymptote/examples/animations/embeddedu3d.asy -2023/06/07 | 1968 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest_main.cc -2023/06/07 | 1968 | graphics/asymptote/examples/mergeExample.asy -2023/06/07 | 1964 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/enum.json -2023/06/07 | 1961 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/refRemote.json -2023/06/07 | 1961 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/refRemote.json -2023/06/07 | 19604 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_link_test.h -2023/06/07 | 19597 | graphics/asymptote/doc/external-proposal.html -2023/06/07 | 1955 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_xml_outfile2_test_.cc -2023/06/07 | 1955 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_xml_outfile1_test_.cc -2023/06/07 | 1955 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest-typed-test2_test.cc -2023/06/07 | 1955 | graphics/asymptote/cudareflect/tinyexr/experimental/js/binding.cc -2023/06/07 | 1953 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/internal/custom/gmock-port.h -2023/06/07 | 1950 | graphics/asymptote/cudareflect/utils.cuh -2023/06/07 | 1950 | graphics/asymptote/cudareflect/tinyexr/examples/testmapgen/testmapgen.cc -2023/06/07 | 194 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_after_preamble.snap -2023/06/07 | 1949 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-setuptestsuite-test_.cc -2023/06/07 | 19479 | graphics/asymptote/psfile.cc -2023/06/07 | 19462 | graphics/asymptote/patches/gl-matrix-2.4.0-pruned.patch -2023/06/07 | 193 | graphics/asymptote/tests/gc/shipout.asy -2023/06/07 | 193 | graphics/asymptote/tests/arith/random.asy -2023/06/07 | 1936 | graphics/asymptote/refaccess.h -2023/06/07 | 1936 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/disallow.json -2023/06/07 | 19321 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/encodingstest.cpp -2023/06/07 | 192 | graphics/asymptote/base/shaders/zero.glsl -2023/06/07 | 1927 | graphics/asymptote/tests/array/fields.asy -2023/06/07 | 1927 | graphics/asymptote/prc/PRCTools/bitSearchDouble.cc -2023/06/07 | 1925 | graphics/asymptote/LspCpp/third_party/utfcpp/CMakeLists.txt -2023/06/07 | 1923 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_testbridge_test_.cc -2023/06/07 | 1922 | support/texlab/crates/texlab/tests/lsp/workspace/snapshots/lsp__workspace__symbol__smoke.snap -2023/06/07 | 1921 | support/texlab/crates/base-db/src/diagnostics/bib.rs -2023/06/07 | 191 | graphics/asymptote/runpicture.h -2023/06/07 | 1919 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/samples/sample1.h -2023/06/07 | 1919 | graphics/asymptote/examples/animations/earthmoon.asy -2023/06/07 | 1918 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/internal/custom/gmock-matchers.h -2023/06/07 | 1917 | support/texlab/crates/texlab/src/features/completion.rs -2023/06/07 | 1916 | graphics/asymptote/LspCpp/third_party/uri/src/uri_errors.cpp -2023/06/07 | 1915 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/iterative-parser-states-diagram.dot -2023/06/07 | 19136 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/primer.md -2023/06/07 | 1910 | graphics/asymptote/examples/linearregression.asy -2023/06/07 | 19105 | macros/unicodetex/latex/njuthesis/LICENSE -2023/06/07 | 190044 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/DroidSans.ttf -2023/06/07 | 18 | graphics/asymptote/tests/output/circle.asy -2023/06/07 | 18 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/_config.yml -2023/06/07 | 189 | graphics/asymptote/cudareflect/tinyexr/examples/exr2ldr/Makefile -2023/06/07 | 1899 | graphics/asymptote/GUI/res/icons/social-python.svg -2023/06/07 | 18991 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/Win32Window.cpp -2023/06/07 | 1898 | support/texlab/crates/texlab/src/features/reference/entry.rs -2023/06/07 | 1898 | graphics/asymptote/LspCpp/third_party/uri/include/network/uri/detail/decode.hpp -2023/06/07 | 1896 | graphics/asymptote/cudareflect/tinyexr/config-msvc.py -2023/06/07 | 188 | graphics/asymptote/runstring.h -2023/06/07 | 188 | graphics/asymptote/LspCpp/third_party/uri/CMakeFiles/doc.dir/cmake_clean.cmake -2023/06/07 | 188 | graphics/asymptote/examples/transparency.asy -2023/06/07 | 188 | graphics/asymptote/cudareflect/tinyexr/examples/resize/Makefile -2023/06/07 | 18860 | graphics/asymptote/LspCpp/src/lsp/utils.cpp -2023/06/07 | 1884 | graphics/asymptote/GUI/res/icons/filledbucket.svg -2023/06/07 | 1883 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__paragraphs.txt.snap -2023/06/07 | 187 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@parameter_error.txt.snap -2023/06/07 | 187 | graphics/asymptote/tests/string/rfind.asy -2023/06/07 | 187 | graphics/asymptote/examples/label3solid.asy -2023/06/07 | 1878 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-uninitialized-test_.cc -2023/06/07 | 1876 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_link_test.cc -2023/06/07 | 1876 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_link2_test.cc -2023/06/07 | 1876 | graphics/asymptote/cc-mode2.el -2023/06/07 | 1875 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/foldingRange.h -2023/06/07 | 1873 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/custom/gtest-port.h -2023/06/07 | 18739 | graphics/asymptote/runstring.cc -2023/06/07 | 1871 | support/texlab/crates/symbols/src/workspace/snapshots/symbols__workspace__tests__filter_type_section.snap -2023/06/07 | 186 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_after_string.snap -2023/06/07 | 186 | support/texlab/crates/texlab/tests/lsp/text_document.rs -2023/06/07 | 186 | graphics/asymptote/runpath3d.h -2023/06/07 | 186 | graphics/asymptote/doc/unitcircle3.asy -2023/06/07 | 186 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/shader.vert -2023/06/07 | 1866 | graphics/asymptote/LspCpp/third_party/rapidjson/example/simplereader/simplereader.cpp -2023/06/07 | 1863 | graphics/asymptote/prc/PRCTools/bitSearchUI.cc -2023/06/07 | 1860 | graphics/asymptote/prc/PRCTools/bitData.h -2023/06/07 | 185 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_preamble.snap -2023/06/07 | 185 | graphics/asymptote/cudareflect/tinyexr/test/fuzzer/README.md -2023/06/07 | 1858 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/custom/gtest.h -2023/06/07 | 18578 | graphics/asymptote/application.cc -2023/06/07 | 1856 | support/texlab/crates/texlab/src/features/definition.rs -2023/06/07 | 1851 | graphics/asymptote/drawclipbegin.h -2023/06/07 | 184 | graphics/asymptote/examples/roll.asy -2023/06/07 | 18474 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest-printers.cc -2023/06/07 | 18448 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/internal/gmock-internal-utils.h -2023/06/07 | 1841 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest_main_unittest.cc -2023/06/07 | 183 | graphics/asymptote/build-scripts/cc-indent.el -2023/06/07 | 18382 | graphics/asymptote/LspCpp/third_party/uri/src/uri.cpp -2023/06/07 | 1835 | graphics/asymptote/examples/cyclohexane.asy -2023/06/07 | 1832 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/NotificationInMessage.h -2023/06/07 | 18327 | graphics/asymptote/LspCpp/third_party/uri/test/uri_parse_test.cpp -2023/06/07 | 1831 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/Endpoint.h -2023/06/07 | 1830 | graphics/asymptote/LspCpp/third_party/uri/src/detail/uri_percent_encode.hpp -2023/06/07 | 182 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_article.snap -2023/06/07 | 182 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@parameter.txt.snap -2023/06/07 | 182 | graphics/asymptote/tests/string/find.asy -2023/06/07 | 182 | graphics/asymptote/examples/label3.asy -2023/06/07 | 1829 | support/texlab/crates/texlab/src/features/completion/color.rs -2023/06/07 | 1829 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/document_symbol.h -2023/06/07 | 1828 | graphics/asymptote/beziercurve.cc -2023/06/07 | 18222 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/schema.md -2023/06/07 | 181 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_join_strings.snap -2023/06/07 | 181 | support/texlab/CONTRIBUTING.md -2023/06/07 | 1819 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/colorPresentation.h -2023/06/07 | 1814 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__label.snap -2023/06/07 | 1813 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/OpenGLInclude.h -2023/06/07 | 1812 | support/texlab/crates/distro/src/file_name_db.rs -2023/06/07 | 18095 | graphics/asymptote/doc/asy-latex.dtx -2023/06/07 | 1808 | graphics/asymptote/GUI/res/icons.qrc -2023/06/07 | 1805 | graphics/asymptote/patches/cygwin_freeglut-3.0.0.patch -2023/06/07 | 17 | support/texlab/crates/test-utils/src/lib.rs -2023/06/07 | 17 | support/texlab/crates/parser/src/test_data/latex/include/latex_include_simple.txt -2023/06/07 | 17 | support/texlab/crates/parser/src/test_data/latex/include/latex_include_equality_sign.txt -2023/06/07 | 17 | support/texlab/crates/parser/src/test_data/latex/include/import_simple.txt -2023/06/07 | 17 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_impl.txt -2023/06/07 | 17 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail2.json -2023/06/07 | 179 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_string.snap -2023/06/07 | 179 | support/texlab/crates/base-db/src/lib.rs -2023/06/07 | 17991 | graphics/asymptote/asy-keywords.el -2023/06/07 | 17987 | graphics/asymptote/entry.cc -2023/06/07 | 1796 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/hover.h -2023/06/07 | 17951 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/src/gmock-matchers.cc -2023/06/07 | 1794 | graphics/asymptote/fftw++.cc -2023/06/07 | 1791 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_853.txt.snap -2023/06/07 | 17907 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/writertest.cpp -2023/06/07 | 178 | graphics/asymptote/fftw++asy.cc -2023/06/07 | 17858 | support/texlab/crates/syntax/src/latex/cst.rs -2023/06/07 | 1781 | support/texlab/crates/texlab/Cargo.toml -2023/06/07 | 177 | graphics/asymptote/runpath.h -2023/06/07 | 177 | graphics/asymptote/examples/curvedlabel.asy -2023/06/07 | 17798 | graphics/asymptote/runfile.cc -2023/06/07 | 1778 | graphics/asymptote/examples/conicurv.asy -2023/06/07 | 1775 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/utilityclass.dot -2023/06/07 | 17734 | graphics/asymptote/dec.h -2023/06/07 | 177246 | graphics/asymptote/prc/PRCdouble.cc -2023/06/07 | 176 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/makefile -2023/06/07 | 17693 | graphics/asymptote/configure.ac -2023/06/07 | 17676 | systems/texlive/tlnet/archive/tilings.source.r67292.tar.xz -2023/06/07 | 17671 | graphics/asymptote/texfile.cc -2023/06/07 | 1765 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/ScopeExit.h -2023/06/07 | 17614 | graphics/asymptote/cudareflect/tinyexr/README.md -2023/06/07 | 1760 | support/texlab/crates/citeproc/src/output.rs -2023/06/07 | 1760 | graphics/asymptote/examples/animations/heatequation.asy -2023/06/07 | 175 | support/texlab/crates/symbols/src/lib.rs -2023/06/07 | 175 | graphics/asymptote/examples/strokeshade.asy -2023/06/07 | 175503 | graphics/asymptote/GUI/icons_rc.py -2023/06/07 | 1753 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/custom/README.md -2023/06/07 | 1753 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/Win32OpenGLWindow.h -2023/06/07 | 1752 | graphics/asymptote/base/shaders/sum3.glsl -2023/06/07 | 1751 | graphics/asymptote/GUI/GuidesManager.py -2023/06/07 | 174 | graphics/asymptote/cudareflect/tinyexr/examples/testmapgen/Makefile -2023/06/07 | 1746 | graphics/asymptote/doc/westnile.asy -2023/06/07 | 1745 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_nested.txt.snap -2023/06/07 | 1743 | support/texlab/crates/texlab/tests/lsp/text_document/rename.rs -2023/06/07 | 1740 | support/texlab/crates/texlab/src/features/rename.rs -2023/06/07 | 173 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/readme.txt -2023/06/07 | 173 | graphics/asymptote/cudareflect/tinyexr/test/c-binding/Makefile -2023/06/07 | 173 | graphics/asymptote/cudareflect/tinyexr/examples/exrfilter/Makefile -2023/06/07 | 1737 | support/texlab/crates/texlab/tests/lsp/text_document/inlay_hint.rs -2023/06/07 | 17346 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/src/nfd_win.cpp -2023/06/07 | 1733 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/src/include/nfd.h -2023/06/07 | 1732 | support/texlab/crates/texlab/src/main.rs -2023/06/07 | 1732 | graphics/asymptote/GUI/res/icons/grid.svg -2023/06/07 | 1728 | graphics/asymptote/webgl/vertex.glsl -2023/06/07 | 172708 | systems/texlive/tlnet/archive/l3kernel.r67294.tar.xz -2023/06/07 | 17258 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/regextest.cpp -2023/06/07 | 1717 | support/texlab/crates/texlab/src/features/completion/argument.rs -2023/06/07 | 1710 | graphics/asymptote/tests/arith/roots.asy -2023/06/07 | 1710 | graphics/asymptote/LspCpp/third_party/uri/include/network/uri/uri_io.hpp -2023/06/07 | 170 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/apitests.cpp -2023/06/07 | 1708 | support/texlab/crates/syntax/src/latex/kind.rs -2023/06/07 | 16 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_only_name.txt -2023/06/07 | 16 | support/texlab/crates/parser/src/test_data/latex/include/class_include_empty.txt -2023/06/07 | 16 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_impl_error.txt -2023/06/07 | 16 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail8.json -2023/06/07 | 16 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail4.json -2023/06/07 | 16 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail24.json -2023/06/07 | 169 | graphics/asymptote/runbacktrace.h -2023/06/07 | 1698 | graphics/asymptote/record.cc -2023/06/07 | 1698 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/types/floats.json -2023/06/07 | 1696 | graphics/asymptote/cudareflect/tinyexr/cmake/sanitizers/FindUBSan.cmake -2023/06/07 | 1694 | graphics/asymptote/LspCpp/third_party/uri/cmake_install.cmake -2023/06/07 | 168 | graphics/asymptote/examples/lines.asy -2023/06/07 | 1688 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/test/SConstruct -2023/06/07 | 1681371 | graphics/asymptote/ChangeLog -2023/06/07 | 167 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_command.snap -2023/06/07 | 167 | graphics/asymptote/cudareflect/tinyexr/examples/nornalmap/Makefile -2023/06/07 | 1679 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__enumerate.snap -2023/06/07 | 1675 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/production.cc -2023/06/07 | 1673 | support/texlab/crates/commands/src/find_envs.rs -2023/06/07 | 1672 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@006.txt.snap -2023/06/07 | 16705 | graphics/asymptote/cudareflect/tinyexr/deps/miniz/ChangeLog.md -2023/06/07 | 1667 | support/texlab/crates/texlab/src/util.rs -2023/06/07 | 16661 | graphics/asymptote/LspCpp/third_party/uri/src/Makefile -2023/06/07 | 1658 | graphics/asymptote/prc/PRCTools/Makefile -2023/06/07 | 1658 | graphics/asymptote/LspCpp/include/LibLsp/lsp/client/registerCapability.h -2023/06/07 | 1658 | graphics/asymptote/GUI/Widg_editBezier.py -2023/06/07 | 16569 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/architecture.png -2023/06/07 | 16552 | graphics/asymptote/LspCpp/third_party/uri/include/network/optional.hpp -2023/06/07 | 1654 | support/texlab/crates/texlab/src/features/completion/citation.rs -2023/06/07 | 16492 | graphics/asymptote/base/plain_Label.asy -2023/06/07 | 1648 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/OpenGL2Include.h -2023/06/07 | 16483 | graphics/asymptote/runpair.cc -2023/06/07 | 1640 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/CMakeLists.txt -2023/06/07 | 1640 | graphics/asymptote/callable.h -2023/06/07 | 163 | graphics/asymptote/examples/1overx.asy -2023/06/07 | 1638 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/did_change.h -2023/06/07 | 1630 | graphics/asymptote/builtin.h -2023/06/07 | 162 | graphics/asymptote/examples/stereoscopic.asy -2023/06/07 | 162 | graphics/asymptote/examples/sphereskeleton.asy -2023/06/07 | 16298 | graphics/asymptote/LspCpp/third_party/rapidjson/test/perftest/rapidjsontest.cpp -2023/06/07 | 1626 | support/texlab/crates/citeproc/src/field/number.rs -2023/06/07 | 1626 | graphics/asymptote/genv.h -2023/06/07 | 1620 | graphics/asymptote/doc/colors.asy -2023/06/07 | 161 | graphics/asymptote/runhistory.h -2023/06/07 | 161 | graphics/asymptote/cudareflect/tinyexr/examples/exr2rgbe/Makefile -2023/06/07 | 16188 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/screens/open_win8.png -2023/06/07 | 1612 | graphics/asymptote/asy-list.pl -2023/06/07 | 1611 | support/texlab/crates/texlab/src/util/line_index_ext.rs -2023/06/07 | 1610 | graphics/asymptote/LspCpp/third_party/rapidjson/example/sortkeys/sortkeys.cpp -2023/06/07 | 160 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_preamble.snap -2023/06/07 | 160 | graphics/asymptote/cudareflect/tinyexr/jni/Makefile -2023/06/07 | 1608 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__inlay_hint__label_definition.snap -2023/06/07 | 1608 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/anyOf.json -2023/06/07 | 16089 | graphics/asymptote/base/slide.asy -2023/06/07 | 16081 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/move1.png -2023/06/07 | 1607 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/oneOf.json -2023/06/07 | 160672 | graphics/asymptote/examples/animations/dice.u3d -2023/06/07 | 1604 | graphics/asymptote/v3dheadertypes.py -2023/06/07 | 15 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_incomplete.txt -2023/06/07 | 15 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error4.txt -2023/06/07 | 15 | support/texlab/crates/parser/src/test_data/latex/citation/citation_prenote.txt -2023/06/07 | 15 | support/texlab/crates/parser/src/test_data/latex/citation/citation_multiple_keys.txt -2023/06/07 | 15 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail28.json -2023/06/07 | 15 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-efe9007bfdcbbe8a1569bf01fa9acadb8261ead49cb83f6e91fcdc4dae2e99a3_min -2023/06/07 | 15 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-df76d1f27adb8927a1446a603028272140905c168a336128465a1162ec7af270.mini -2023/06/07 | 159 | graphics/asymptote/tests/types/cast.asy -2023/06/07 | 159 | graphics/asymptote/cudareflect/tinyexr/examples/rgbe2exr/Makefile -2023/06/07 | 1598 | graphics/asymptote/examples/NURBSsurface.asy -2023/06/07 | 1596 | systems/texlive/tlnet/archive/collection-pictures.r67297.tar.xz -2023/06/07 | 15959 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest-typed-test.h -2023/06/07 | 1594 | graphics/asymptote/pen.cc -2023/06/07 | 1590 | support/texlab/crates/commands/src/dep_graph.rs -2023/06/07 | 158 | graphics/asymptote/tests/frames/stat.asy -2023/06/07 | 158 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/optionalVersion.h -2023/06/07 | 15895 | graphics/asymptote/GUI/InplaceAddObj.py -2023/06/07 | 1588 | graphics/asymptote/build-scripts/asy-format.el -2023/06/07 | 1583 | support/texlab/crates/commands/src/placeholders.rs -2023/06/07 | 157 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_trailing_comma.snap -2023/06/07 | 157 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_insert_braces.snap -2023/06/07 | 157 | graphics/asymptote/runsystem.h -2023/06/07 | 157 | graphics/asymptote/doc/saddle.asy -2023/06/07 | 157 | graphics/asymptote/cudareflect/tinyexr/examples/ldr2exr/Makefile -2023/06/07 | 1579 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsp_code_action.h -2023/06/07 | 1578 | graphics/asymptote/build-scripts/cc-format.el -2023/06/07 | 1566 | graphics/asymptote/examples/near_earth.asy -2023/06/07 | 15645 | graphics/asymptote/install-sh -2023/06/07 | 15617 | graphics/asymptote/cudareflect/tinyexr/test_tinyexr.cc -2023/06/07 | 15601 | graphics/asymptote/base/ode.asy -2023/06/07 | 155 | graphics/asymptote/tests/types/ecast.asy -2023/06/07 | 1556 | support/texlab/crates/texlab/src/features/completion/import.rs -2023/06/07 | 15529 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock-nice-strict_test.cc -2023/06/07 | 1550 | support/texlab/crates/commands/src/clean.rs -2023/06/07 | 1550 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/selectionRange.h -2023/06/07 | 155069 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/issue-160-piz-decode.exr -2023/06/07 | 154 | graphics/asymptote/examples/billboard.asy -2023/06/07 | 1548 | graphics/asymptote/examples/BezierSurface.asy -2023/06/07 | 1548 | graphics/asymptote/cudareflect/tinyexr/test/issues/160/main.py -2023/06/07 | 15464 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/dom.md -2023/06/07 | 1545 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/lsRequestId.h -2023/06/07 | 15451 | graphics/asymptote/types.h -2023/06/07 | 1544 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/divisibleBy.json -2023/06/07 | 1542 | graphics/asymptote/GUI/xasyUtils.py -2023/06/07 | 153 | graphics/asymptote/runlabel.h -2023/06/07 | 15393 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/dom.zh-cn.md -2023/06/07 | 1538 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/README.md -2023/06/07 | 15382 | graphics/asymptote/base/palette.asy -2023/06/07 | 1537 | graphics/asymptote/examples/refs.bib -2023/06/07 | 15364 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/faq.md -2023/06/07 | 1532 | graphics/asymptote/LspCpp/src/jsonrpc/MessageJsonHandler.cpp -2023/06/07 | 1531 | graphics/asymptote/LspCpp/third_party/uri/src/cmake_install.cmake -2023/06/07 | 15318 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/BUILD.bazel -2023/06/07 | 15277 | graphics/asymptote/base/flowchart.asy -2023/06/07 | 1525 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/multipleOf.json -2023/06/07 | 15253 | graphics/asymptote/runlabel.cc -2023/06/07 | 1524 | graphics/asymptote/patches/flex.patch -2023/06/07 | 1523 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/unittest.cpp -2023/06/07 | 1521 | graphics/asymptote/LspCpp/third_party/utfcpp/source/utf8.h -2023/06/07 | 151 | graphics/asymptote/LspCpp/third_party/utfcpp/utf8cppConfig.cmake.in -2023/06/07 | 15199868 | macros/latex/contrib/jeuxcartes.zip -2023/06/07 | 15192 | graphics/asymptote/base/v3d.asy -2023/06/07 | 15142 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/types/mixed.json -2023/06/07 | 150 | graphics/asymptote/examples/spheresilhouette.asy -2023/06/07 | 150 | graphics/asymptote/doc/latexmkrc_asydir -2023/06/07 | 1509 | support/texlab/crates/symbols/src/document.rs -2023/06/07 | 150794 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/schematest.cpp -2023/06/07 | 1505 | support/texlab/crates/texlab/tests/lsp/text_document/document_symbol.rs -2023/06/07 | 15043 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest_pred_impl.h -2023/06/07 | 15030 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/faq.zh-cn.md -2023/06/07 | 1502 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/move2.dot -2023/06/07 | 15018 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/main.cc -2023/06/07 | 14 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_multiple.txt -2023/06/07 | 14 | support/texlab/crates/parser/src/test_data/latex/generic_command_args.txt -2023/06/07 | 14 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail27.json -2023/06/07 | 1498 | graphics/asymptote/examples/animations/wavepacket.asy -2023/06/07 | 14980 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/gmock_faq.md -2023/06/07 | 1492 | graphics/asymptote/runarray.h -2023/06/07 | 14915 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-failfast-unittest.py -2023/06/07 | 148 | support/texlab/crates/parser/src/lib.rs -2023/06/07 | 148 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/pass3.json -2023/06/07 | 1480 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/Condition.h -2023/06/07 | 1479 | graphics/asymptote/prc/PRCTools/inflationMain.cc -2023/06/07 | 14795 | graphics/asymptote/stm.cc -2023/06/07 | 1475 | graphics/asymptote/LspCpp/third_party/uri/deps/LICENSE -2023/06/07 | 1475 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsCommand.h -2023/06/07 | 14749 | graphics/asymptote/base/contour3.asy -2023/06/07 | 146 | graphics/asymptote/doc/slopefield1.asy -2023/06/07 | 146 | graphics/asymptote/cudareflect/tinyexr/examples/deepview/Makefile -2023/06/07 | 1469 | graphics/asymptote/doc/png/Makefile.in -2023/06/07 | 1467 | graphics/asymptote/GUI/res/icons/android-hand.svg -2023/06/07 | 146751 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/schema.h -2023/06/07 | 14651 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest-death-test.h -2023/06/07 | 1464 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_declaration.txt.snap -2023/06/07 | 1461 | graphics/asymptote/examples/logo3.asy -2023/06/07 | 145 | graphics/asymptote/examples/star.asy -2023/06/07 | 14575 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/cmake/internal_utils.cmake -2023/06/07 | 1456 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/tutorial.dot -2023/06/07 | 1454 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/move3.dot -2023/06/07 | 14532 | graphics/asymptote/stack.cc -2023/06/07 | 14531 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/stream.md -2023/06/07 | 1452 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/platformtest.cpp -2023/06/07 | 145014 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/gmock_cook_book.md -2023/06/07 | 144 | graphics/asymptote/doc/latexmkrc -2023/06/07 | 1449 | graphics/asymptote/GUI/SetCustomAnchor.py -2023/06/07 | 1443 | support/texlab/crates/symbols/src/workspace/snapshots/symbols__workspace__tests__filter_type_item.snap -2023/06/07 | 1441 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/pass1.json -2023/06/07 | 143 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_string.snap -2023/06/07 | 143 | graphics/asymptote/tests/gc/label.asy -2023/06/07 | 14378 | graphics/asymptote/examples/teapot.asy -2023/06/07 | 1436 | graphics/asymptote/GUI/res/icons/bucket.svg -2023/06/07 | 1435 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/simpledom.dot -2023/06/07 | 14325 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/stream.zh-cn.md -2023/06/07 | 14296 | support/texlab/crates/texlab/tests/lsp/text_document/completion.rs -2023/06/07 | 14283 | graphics/asymptote/testv3d.asy -2023/06/07 | 1427 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/diagram/normalparsing.dot -2023/06/07 | 1423 | graphics/asymptote/LspCpp/include/LibLsp/lsp/workspace/didChangeWorkspaceFolders.h -2023/06/07 | 1421 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/linkedEditingRange.h -2023/06/07 | 141 | graphics/asymptote/examples/sphere.asy -2023/06/07 | 141 | graphics/asymptote/examples/ring.asy -2023/06/07 | 1419 | graphics/asymptote/LspCpp/third_party/uri/test/uri_stream_test.cpp -2023/06/07 | 1415 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__mvbook_nietzsche_1988.snap -2023/06/07 | 14139 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/RemoteEndPoint.h -2023/06/07 | 1412 | support/texlab/crates/texlab/src/server/progress.rs -2023/06/07 | 140 | graphics/asymptote/doc/vectorfield.asy -2023/06/07 | 14089 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest-typed-test_test.cc -2023/06/07 | 14081 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/src/gtest-filepath.cc -2023/06/07 | 14072 | graphics/asymptote/types.cc -2023/06/07 | 1406 | graphics/asymptote/cudareflect/EXRFiles.h -2023/06/07 | 1402 | support/texlab/crates/texlab/src/features/reference/string.rs -2023/06/07 | 13 | support/texlab/crates/parser/src/test_data/latex/include/package_include_empty.txt -2023/06/07 | 13 | support/texlab/crates/parser/src/test_data/latex/group/curly_group_simple.txt -2023/06/07 | 13 | support/texlab/crates/parser/src/test_data/latex/equation.txt -2023/06/07 | 13 | support/texlab/crates/parser/src/test_data/latex/color/color_reference_simple.txt -2023/06/07 | 139 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/docs/README.md -2023/06/07 | 139 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/docs/README.md -2023/06/07 | 1399 | graphics/asymptote/parallel.cc -2023/06/07 | 1398 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__book_averroes_1998.snap -2023/06/07 | 1398 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/swap.h -2023/06/07 | 13980 | graphics/asymptote/arrayop.h -2023/06/07 | 13944 | graphics/asymptote/runtriple.cc -2023/06/07 | 1391 | graphics/asymptote/LspCpp/include/LibLsp/lsp/general/initialize.h -2023/06/07 | 1391 | graphics/asymptote/doc/CAD1.asy -2023/06/07 | 138 | graphics/asymptote/Pipfile -2023/06/07 | 1389 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsFormattingOptions.h -2023/06/07 | 1388 | graphics/asymptote/LspCpp/src/jsonrpc/Endpoint.cpp -2023/06/07 | 13867 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/nuklear_btgui_gl2.h -2023/06/07 | 1384 | graphics/asymptote/tests/pic/trans.asy -2023/06/07 | 13816 | graphics/asymptote/GUI/xasyBezierInterface.py -2023/06/07 | 13787 | graphics/asymptote/GUI/ContextWindow.py -2023/06/07 | 13776 | graphics/asymptote/LspCpp/src/lsp/textDocument.cpp -2023/06/07 | 1376 | graphics/asymptote/LspCpp/src/lsp/initialize.cpp -2023/06/07 | 1375 | graphics/asymptote/base/tree.asy -2023/06/07 | 136 | graphics/asymptote/examples/latticeshading.asy -2023/06/07 | 13663 | graphics/asymptote/doc/install-sh -2023/06/07 | 13663 | graphics/asymptote/doc/FAQ/install-sh -2023/06/07 | 13615 | graphics/asymptote/entry.h -2023/06/07 | 13612 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock_output_test_golden.txt -2023/06/07 | 13605 | graphics/asymptote/base/grid3.asy -2023/06/07 | 135 | support/texlab/crates/parser/src/test_data/latex/issue_853.txt -2023/06/07 | 1359 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_definition_options.txt.snap -2023/06/07 | 1354 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsCodeAction.h -2023/06/07 | 1352 | graphics/asymptote/LspCpp/include/LibLsp/lsp/workspace/did_change_watched_files.h -2023/06/07 | 1352 | graphics/asymptote/examples/Klein.asy -2023/06/07 | 134 | support/texlab/crates/parser/src/test_data/latex/structure/paragraphs.txt -2023/06/07 | 134 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tox.ini -2023/06/07 | 13491 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/internal/gmock-pp.h -2023/06/07 | 1347 | graphics/asymptote/cudareflect/tinyexr/test/unit/config-posix.py -2023/06/07 | 13477 | graphics/asymptote/base/asy.vim -2023/06/07 | 1345 | graphics/asymptote/interact.h -2023/06/07 | 13440 | graphics/asymptote/texfile.h -2023/06/07 | 1341 | graphics/asymptote/runtimebase.in -2023/06/07 | 133 | graphics/asymptote/cudareflect/tinyexr/test/unit/vcbuild.bat -2023/06/07 | 1338 | graphics/asymptote/LspCpp/third_party/utfcpp/LICENSE -2023/06/07 | 1338 | graphics/asymptote/LspCpp/third_party/uri/LICENSE_1_0.txt -2023/06/07 | 133685 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/document.h -2023/06/07 | 13366 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/internal/gtest-death-test-internal.h -2023/06/07 | 13357 | graphics/asymptote/camp.l -2023/06/07 | 13355 | graphics/asymptote/LspCpp/third_party/utfcpp/source/utf8/core.h -2023/06/07 | 13353 | support/texlab/crates/parser/src/test_data/build_log/005.txt -2023/06/07 | 13353 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/error/error.h -2023/06/07 | 1331 | graphics/asymptote/tests/types/spec.asy -2023/06/07 | 1330 | support/texlab/crates/texlab/src/features/inlay_hint/label.rs -2023/06/07 | 1330 | graphics/asymptote/base/v3dheadertypes.asy -2023/06/07 | 132 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_parens.snap -2023/06/07 | 132 | graphics/asymptote/tests/string/length.asy -2023/06/07 | 132 | graphics/asymptote/cudareflect/tinyexr/test/unit/regression/poc-d5c9c893e559277a3320c196523095b94db93985620ac338d037487e0e613047_min -2023/06/07 | 1325036 | systems/texlive/tlnet/archive/latexindent.doc.r67296.tar.xz -2023/06/07 | 1324600 | macros/unicodetex/latex/njuthesis.zip -2023/06/07 | 1322 | support/texlab/crates/texlab/tests/lsp/text_document/document_highlight.rs -2023/06/07 | 1321 | support/texlab/crates/symbols/src/workspace.rs -2023/06/07 | 13217 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/type.json -2023/06/07 | 1318 | graphics/asymptote/LspCpp/include/LibLsp/lsp/ProcessIoService.h -2023/06/07 | 1318 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/OpenGLWindow/Win32InternalWindowData.h -2023/06/07 | 1317 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__article_blom_2021.snap -2023/06/07 | 1317 | graphics/asymptote/beziercurve.h -2023/06/07 | 1316 | graphics/asymptote/base/shaders/sum2fast.glsl -2023/06/07 | 1315 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/unittestschema/idandref.json -2023/06/07 | 1312 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/strfunctest.cpp -2023/06/07 | 1310 | graphics/asymptote/prc/PRCTools/extractSections.cc -2023/06/07 | 1309 | graphics/asymptote/examples/roundpath.asy -2023/06/07 | 13060 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/gtest-unittest-api_test.cc -2023/06/07 | 1305 | support/texlab/crates/texlab/src/features/rename/command.rs -2023/06/07 | 1302 | graphics/asymptote/GUI/res/icons/android-color-palette.svg -2023/06/07 | 13025 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/error/en.h -2023/06/07 | 1301 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__article_kastenholz_2006.snap -2023/06/07 | 1300 | support/texlab/crates/texlab/src/features/definition/command.rs -2023/06/07 | 12 | support/texlab/crates/texlab/tests/lsp/workspace.rs -2023/06/07 | 12 | support/texlab/crates/parser/src/test_data/latex/hello_world.txt -2023/06/07 | 12 | support/texlab/crates/parser/src/test_data/latex/group/curly_group_missing_end.txt -2023/06/07 | 12 | support/texlab/crates/parser/src/test_data/latex/citation/citation_redundant_comma.txt -2023/06/07 | 12 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonchecker/fail33.json -2023/06/07 | 129 | graphics/asymptote/tests/gc/struct.asy -2023/06/07 | 129 | graphics/asymptote/base/shaders/screen.glsl -2023/06/07 | 1299 | graphics/asymptote/patches/dvipdf -2023/06/07 | 1299 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/StreamMessageProducer.h -2023/06/07 | 1298 | support/texlab/crates/texlab/src/features/inlay_hint.rs -2023/06/07 | 1298 | graphics/asymptote/examples/electromagnetic.asy -2023/06/07 | 129563 | graphics/asymptote/camp.tab.cc -2023/06/07 | 1293 | graphics/asymptote/TODO -2023/06/07 | 1291 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsPosition.h -2023/06/07 | 1288468 | graphics/asymptote/doc/asymptote.pdf -2023/06/07 | 1287 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/README.md -2023/06/07 | 12870 | graphics/asymptote/Makefile.in -2023/06/07 | 1284 | graphics/asymptote/tests/output/Makefile -2023/06/07 | 1282 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/required.json -2023/06/07 | 12823 | graphics/asymptote/impdatum.cc -2023/06/07 | 127 | graphics/asymptote/index.html -2023/06/07 | 1276 | graphics/asymptote/base/asymptote.py -2023/06/07 | 1274 | support/texlab/crates/texlab/benches/bench_main.rs -2023/06/07 | 1274 | graphics/asymptote/newexp.h -2023/06/07 | 1273 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/default.json -2023/06/07 | 1273 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/default.json -2023/06/07 | 1268 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/performance.md -2023/06/07 | 1266 | graphics/asymptote/drawverbatim.h -2023/06/07 | 12648 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-output-test.py -2023/06/07 | 12630 | graphics/asymptote/cudareflect/tinyexr/examples/cube2longlat/cube2longlat.cc -2023/06/07 | 1261761 | graphics/asymptote/examples/worldmap.dat -2023/06/07 | 1260 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_enum_item.txt.snap -2023/06/07 | 12604 | graphics/asymptote/runsystem.cc -2023/06/07 | 125 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/docker/Dockerfile -2023/06/07 | 1253 | graphics/asymptote/keywords.pl -2023/06/07 | 12539 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-shuffle-test.py -2023/06/07 | 12534 | graphics/asymptote/ax_pthread.m4 -2023/06/07 | 1251 | graphics/asymptote/examples/odetest.asy -2023/06/07 | 1250747 | macros/unicodetex/latex/njuthesis/njuthesis.pdf -2023/06/07 | 124 | graphics/asymptote/tests/gc/path.asy -2023/06/07 | 124 | graphics/asymptote/GUI/res/icons/centerorigin.asy -2023/06/07 | 1247 | graphics/asymptote/examples/animations/slidemovies.asy -2023/06/07 | 1247400 | systems/texlive/tlnet/archive/texshade.doc.r67295.tar.xz -2023/06/07 | 1245 | graphics/asymptote/prc/PRCTools/describeMain.cc -2023/06/07 | 1245 | graphics/asymptote/findsym.pl -2023/06/07 | 1243 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/references.h -2023/06/07 | 1240 | graphics/asymptote/examples/arrows3.asy -2023/06/07 | 123 | graphics/asymptote/examples/Coons.asy -2023/06/07 | 123 | graphics/asymptote/doc/superpath.asy -2023/06/07 | 1239 | graphics/asymptote/LspCpp/include/LibLsp/lsp/workspace/configuration.h -2023/06/07 | 1238 | support/texlab/crates/texlab/src/features/completion/color_model.rs -2023/06/07 | 1236 | graphics/asymptote/primitives.h -2023/06/07 | 1236 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/performance.zh-cn.md -2023/06/07 | 1235 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/document_link.h -2023/06/07 | 1235 | graphics/asymptote/examples/animations/inlinemovie.tex -2023/06/07 | 1235678 | graphics/asymptote/GL/glew.c -2023/06/07 | 1232 | graphics/asymptote/v3dheadertypes.h -2023/06/07 | 1232 | graphics/asymptote/build-scripts/build-asygl -2023/06/07 | 12321 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/test/gmock-cardinalities_test.cc -2023/06/07 | 1226 | graphics/asymptote/GUI/res/icons/triangle-stroked-15.svg -2023/06/07 | 12259 | graphics/asymptote/knot.h -2023/06/07 | 12216 | graphics/asymptote/LspCpp/CMakeLists.txt -2023/06/07 | 121 | graphics/asymptote/doc/labelsquare.asy -2023/06/07 | 121 | graphics/asymptote/cudareflect/tinyexr/tinyexr.cc -2023/06/07 | 1216 | graphics/asymptote/LspCpp/third_party/uri/CHANGELOG.md -2023/06/07 | 1216 | graphics/asymptote/examples/dragon.asy -2023/06/07 | 1215 | graphics/asymptote/GUI/configs/xasyconfig.cson -2023/06/07 | 1213 | graphics/asymptote/base/plain_arcs.asy -2023/06/07 | 121145 | graphics/asymptote/doc/asyRefCard.pdf -2023/06/07 | 1210 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__book_knuth_1984.snap -2023/06/07 | 1210929 | graphics/asymptote/gc-8.2.4.tar.gz -2023/06/07 | 1209 | graphics/asymptote/tests/imp/unravel.asy -2023/06/07 | 1208 | support/texlab/crates/texlab/tests/lsp/text_document/folding_range.rs -2023/06/07 | 1206 | graphics/asymptote/parallel.h -2023/06/07 | 1203 | graphics/asymptote/LspCpp/README.md -2023/06/07 | 12012 | graphics/asymptote/base/solids.asy -2023/06/07 | 1200 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/_data/navigation.yml -2023/06/07 | 11 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_equation.txt -2023/06/07 | 11 | support/texlab/crates/parser/src/test_data/latex/label/label_definition_simple.txt -2023/06/07 | 11 | support/texlab/crates/parser/src/test_data/latex/include/import_incomplete.txt -2023/06/07 | 11996 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/encodedstreamtest.cpp -2023/06/07 | 11993904 | systems/texlive/tlnet/archive/l3kernel.doc.r67294.tar.xz -2023/06/07 | 1198 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/exr-io.cc -2023/06/07 | 1197 | graphics/asymptote/drawclipend.h -2023/06/07 | 11937 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/CMakeLists.txt -2023/06/07 | 1192 | graphics/asymptote/LspCpp/include/LibLsp/lsp/SimpleTimer.h -2023/06/07 | 1191 | support/texlab/crates/texlab/src/features/definition/entry.rs -2023/06/07 | 1191 | support/texlab/crates/texlab/src/features/completion/glossary_ref.rs -2023/06/07 | 1191 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_nested_missing_braces.txt.snap -2023/06/07 | 1190 | graphics/asymptote/camperror.cc -2023/06/07 | 11907 | graphics/asymptote/tests/gsl/random.asy -2023/06/07 | 118 | graphics/asymptote/tests/string/substr.asy -2023/06/07 | 118 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/network-uri.dir/compiler_depend.ts -2023/06/07 | 1189 | support/texlab/crates/texlab/src/features/hover/string_ref.rs -2023/06/07 | 1189 | graphics/asymptote/tests/types/var.asy -2023/06/07 | 1188 | graphics/asymptote/EXRFiles.cc -2023/06/07 | 1187 | graphics/asymptote/GUI/res/icons/closedcurve.svg -2023/06/07 | 11868 | support/texlab/crates/citeproc/src/tests.rs -2023/06/07 | 1186601 | graphics/asymptote/GL/glew.h -2023/06/07 | 1185 | graphics/asymptote/examples/functionshading.asy -2023/06/07 | 1184 | graphics/asymptote/LspCpp/include/LibLsp/lsp/general/lsClientCapabilities.h -2023/06/07 | 1183 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsVersionedTextDocumentIdentifier.h -2023/06/07 | 1183 | graphics/asymptote/GUI/xasyArgs.py -2023/06/07 | 1182 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/TcpServer.h -2023/06/07 | 1180 | graphics/asymptote/GUI/res/icons/code.svg -2023/06/07 | 117 | graphics/asymptote/cudareflect/tinyexr/examples/exr2fptiff/README.md -2023/06/07 | 1178 | graphics/asymptote/base/embed.asy -2023/06/07 | 1177 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_with_begin.txt.snap -2023/06/07 | 11766 | graphics/asymptote/LspCpp/include/LibLsp/lsp/ClientPreferences.h -2023/06/07 | 1175 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/didRenameFiles.h -2023/06/07 | 1174 | graphics/asymptote/LspCpp/include/LibLsp/lsp/lsMarkedString.h -2023/06/07 | 1171 | support/texlab/crates/texlab/src/features/hover.rs -2023/06/07 | 1171 | graphics/asymptote/parser.h -2023/06/07 | 1170 | support/texlab/crates/base-db/src/semantics/auxiliary.rs -2023/06/07 | 1170 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/code_lens.h -2023/06/07 | 1168 | graphics/asymptote/LspCpp/include/LibLsp/lsp/workspace/applyEdit.h -2023/06/07 | 1166 | support/texlab/crates/texlab/src/features/definition/label.rs -2023/06/07 | 11663 | graphics/asymptote/path.h -2023/06/07 | 11656 | graphics/asymptote/base/binarytree.asy -2023/06/07 | 1164 | graphics/asymptote/examples/genustwo.asy -2023/06/07 | 11642 | graphics/asymptote/coder.h -2023/06/07 | 1163 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__inproceedings_combi_2004.snap -2023/06/07 | 1163 | graphics/asymptote/runtime.h -2023/06/07 | 1162 | graphics/asymptote/cudareflect/tinyexr/deps/miniz/LICENSE -2023/06/07 | 116010 | graphics/asymptote/predicates.cc -2023/06/07 | 115 | graphics/asymptote/doc/onecontour.asy -2023/06/07 | 1158 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/codeActionResult.h -2023/06/07 | 11580 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/diyfp.h -2023/06/07 | 1157 | support/texlab/crates/texlab/tests/lsp/text_document/document_link.rs -2023/06/07 | 1156 | graphics/asymptote/cudareflect/tinyexr/premake4.lua -2023/06/07 | 11564 | graphics/asymptote/LspCpp/third_party/utfcpp/source/utf8/checked.h -2023/06/07 | 11541 | graphics/asymptote/aspy.py -2023/06/07 | 11526 | graphics/asymptote/LspCpp/include/LibLsp/JsonRpc/serializer.h -2023/06/07 | 1151 | graphics/asymptote/callable.cc -2023/06/07 | 11513 | graphics/asymptote/runlabel.in -2023/06/07 | 1149 | graphics/asymptote/guide.cc -2023/06/07 | 1149 | graphics/asymptote/examples/animations/wheel.asy -2023/06/07 | 1147 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/test_checked_iterator.h -2023/06/07 | 1147 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/rename.h -2023/06/07 | 11468 | graphics/asymptote/drawelement.h -2023/06/07 | 1142 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/checkHashCodeEqualsStatus.h -2023/06/07 | 1142 | graphics/asymptote/envcompleter.cc -2023/06/07 | 11420 | support/texlab/crates/parser/src/bibtex.rs -2023/06/07 | 1140 | graphics/asymptote/absyn.h -2023/06/07 | 113 | graphics/asymptote/patches/fixmem.reg -2023/06/07 | 113 | graphics/asymptote/LspCpp/third_party/uri/CMakeFiles/doc.dir/compiler_depend.make -2023/06/07 | 1139 | graphics/asymptote/GUI/res/icons/opencurve.svg -2023/06/07 | 1138 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/onTypeFormatting.h -2023/06/07 | 1137 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/misc/header.html -2023/06/07 | 11373 | graphics/asymptote/base/plain_markers.asy -2023/06/07 | 1136 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/items.json -2023/06/07 | 1136 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/items.json -2023/06/07 | 113565 | graphics/asymptote/cudareflect/tinyexr/examples/common/stb_image_resize.h -2023/06/07 | 1131 | graphics/asymptote/gl-matrix-2.4.0-pruned/LICENSE.js -2023/06/07 | 1131 | graphics/asymptote/cudareflect/tinyexr/experimental/js/index.html -2023/06/07 | 1127425 | graphics/asymptote/cudareflect/tinyexr/asakusa.exr -2023/06/07 | 1126 | graphics/asymptote/coenv.cc -2023/06/07 | 1124 | support/texlab/crates/distro/src/language.rs -2023/06/07 | 11227 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/SemanticTokens.h -2023/06/07 | 11221 | graphics/asymptote/jsfile.cc -2023/06/07 | 1121 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__theorem_thmtools.snap -2023/06/07 | 1121 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_nested.txt.snap -2023/06/07 | 1120 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__theorem_amsthm.snap -2023/06/07 | 1120 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/test_unchecked_iterator.h -2023/06/07 | 1120 | graphics/asymptote/base/external.asy -2023/06/07 | 111 | graphics/asymptote/GUI/res/icons/center.asy -2023/06/07 | 111 | graphics/asymptote/examples/shadestroke.asy -2023/06/07 | 1118 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/samples.md -2023/06/07 | 1116 | graphics/asymptote/LspCpp/third_party/uri/test/valid_urls.txt -2023/06/07 | 1114 | graphics/asymptote/examples/laserlattice.asy -2023/06/07 | 11146 | graphics/asymptote/LspCpp/third_party/rapidjson/readme.md -2023/06/07 | 1112 | support/texlab/crates/parser/src/test_data/bibtex/samples/nietzsche_1998.txt -2023/06/07 | 11122 | graphics/asymptote/base/math.asy -2023/06/07 | 1111 | graphics/asymptote/examples/imagehistogram.asy -2023/06/07 | 110 | obsolete/info/spanish/tipos.zip -2023/06/07 | 110 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/remotes/subSchemas.json -2023/06/07 | 1108 | graphics/asymptote/GUI/res/icons/android-locate.svg -2023/06/07 | 1104 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeFiles/network-uri.dir/cmake_clean.cmake -2023/06/07 | 1103 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_definition.txt.snap -2023/06/07 | 1103 | graphics/asymptote/LspCpp/include/LibLsp/lsp/client/unregisterCapability.h -2023/06/07 | 1101 | graphics/asymptote/cudareflect/tinyexr/examples/resize/resize.cc -2023/06/07 | 11015 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__nietzsche_1998.txt.snap -2023/06/07 | 10 | support/texlab/crates/parser/src/test_data/latex/citation/citation_star.txt -2023/06/07 | 10 | support/texlab/crates/parser/src/test_data/latex/citation/citation_simple.txt -2023/06/07 | 109 | graphics/asymptote/tests/string/insert.asy -2023/06/07 | 109 | graphics/asymptote/GUI/res/icons/closedpolygon.asy -2023/06/07 | 109 | graphics/asymptote/GUI/res/icons/closedcurve.asy -2023/06/07 | 10994 | info/spanish/antique-spanish-units/antique-spanish-units.tex -2023/06/07 | 1098 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/types/integers.json -2023/06/07 | 1096 | graphics/asymptote/tests/array/transpose.asy -2023/06/07 | 1096 | graphics/asymptote/refaccess.cc -2023/06/07 | 1096 | graphics/asymptote/drawlayer.h -2023/06/07 | 1090 | graphics/asymptote/GUI/res/icons/redo.svg -2023/06/07 | 108 | support/texlab/crates/texlab/src/lib.rs -2023/06/07 | 108 | graphics/asymptote/GUI/res/icons/subdirectory-left.svg -2023/06/07 | 108 | graphics/asymptote/cudareflect/tinyexr/jni/README.md -2023/06/07 | 1088 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/clzlltest.cpp -2023/06/07 | 1088 | graphics/asymptote/examples/NURBSsphere.asy -2023/06/07 | 10840 | graphics/asymptote/base/CAD.asy -2023/06/07 | 1083 | support/texlab/crates/texlab/src/features/formatting.rs -2023/06/07 | 1082 | graphics/asymptote/patches/README -2023/06/07 | 107 | graphics/asymptote/LspCpp/third_party/uri/CMakeFiles/doc.dir/compiler_depend.ts -2023/06/07 | 1077 | macros/unicodetex/latex/njuthesis/README.md -2023/06/07 | 1076 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_885.snap -2023/06/07 | 1075 | graphics/asymptote/v3dheadertypes.csv -2023/06/07 | 1075 | graphics/asymptote/LspCpp/include/LibLsp/lsp/extention/jdtls/OverridableMethod.h -2023/06/07 | 1074 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_asymptote.txt.snap -2023/06/07 | 1072 | graphics/asymptote/cudareflect/tinyexr/examples/cube2longlat/README.md -2023/06/07 | 1070 | support/texlab/crates/texlab/src/features/reference.rs -2023/06/07 | 1070 | graphics/asymptote/cudareflect/IrradianceGenerator.sln -2023/06/07 | 1067 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_options.txt.snap -2023/06/07 | 1066 | support/texlab/crates/texlab/src/features/rename/label.rs -2023/06/07 | 1066 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_options.txt.snap -2023/06/07 | 1066 | graphics/asymptote/LspCpp/LICENSE -2023/06/07 | 1065 | graphics/asymptote/LspCpp/include/LibLsp/lsp/textDocument/prepareRename.h -2023/06/07 | 1065 | graphics/asymptote/examples/shellmethod.asy -2023/06/07 | 10648 | systems/texlive/tlnet/archive/tilings.r67292.tar.xz -2023/06/07 | 10641 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/encodedstream.h -2023/06/07 | 1063 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/minimum.json -2023/06/07 | 1063 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft4/maximum.json -2023/06/07 | 1063 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/minimum.json -2023/06/07 | 1063 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/tests/draft3/maximum.json -2023/06/07 | 10632 | graphics/asymptote/LspCpp/src/jsonrpc/WebSocketServer.cpp -2023/06/07 | 10632 | graphics/asymptote/EnvVarUpdate.nsh -2023/06/07 | 105 | graphics/asymptote/LspCpp/third_party/utfcpp/tests/noexceptionstests.cpp -2023/06/07 | 1058 | graphics/asymptote/GUI/res/icons/closedpolygon.svg -2023/06/07 | 10585 | graphics/asymptote/path3.h -2023/06/07 | 1057 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/jsonschema/LICENSE -2023/06/07 | 10571 | graphics/asymptote/cudareflect/tinyexr/deps/miniz/examples/example5.c -2023/06/07 | 10563 | graphics/asymptote/cudareflect/tinyexr/test/unit/kuroga.py -2023/06/07 | 10561 | graphics/asymptote/cudareflect/tinyexr/kuroga.py -2023/06/07 | 1055 | graphics/asymptote/examples/partitionExample.asy -2023/06/07 | 1053 | graphics/asymptote/doc/fillcontour.asy -2023/06/07 | 1052 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__article_aksin_2006.snap -2023/06/07 | 1052 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/CMakeLists.txt -2023/06/07 | 1051 | support/texlab/crates/texlab/tests/lsp/workspace/symbol.rs -2023/06/07 | 1051 | graphics/asymptote/prc/PRCTools/inflation.h -2023/06/07 | 1051 | graphics/asymptote/doc/eetomumu.asy -2023/06/07 | 1050 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__article_jain_1999.snap -2023/06/07 | 1050 | graphics/asymptote/opsymbols.pl -2023/06/07 | 10504 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/prettywriter.h -2023/06/07 | 104 | graphics/asymptote/examples/tiling.asy -2023/06/07 | 1049 | support/texlab/crates/texlab/src/features/highlight/label.rs -2023/06/07 | 1047 | graphics/asymptote/GUI/res/icons/undo.svg -2023/06/07 | 10476 | graphics/asymptote/LspCpp/third_party/uri/deps/googlemock/include/gmock/gmock-nice-strict.h -2023/06/07 | 1044671 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/screenshots/exrview.png -2023/06/07 | 10445 | graphics/asymptote/INSTALL -2023/06/07 | 1043 | graphics/asymptote/GUI/res/icons/openpolygon.svg -2023/06/07 | 10429 | graphics/asymptote/LspCpp/third_party/rapidjson/CMakeLists.txt -2023/06/07 | 10414 | graphics/asymptote/LspCpp/third_party/uri/src/detail/uri_parse.cpp -2023/06/07 | 1040 | graphics/asymptote/examples/lmfit1.asy -2023/06/07 | 103 | graphics/asymptote/LspCpp/third_party/rapidjson/bin/data/readme.txt -2023/06/07 | 1039 | graphics/asymptote/LspCpp/third_party/uri/test/CMakeLists.txt -2023/06/07 | 1038 | support/texlab/crates/citeproc/src/snapshots/citeproc__tests__inproceedings_erwin_2007.snap -2023/06/07 | 10380 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__averroes_1998.txt.snap -2023/06/07 | 1037 | support/texlab/crates/texlab/src/features/definition/string.rs -2023/06/07 | 1037 | graphics/asymptote/examples/animations/inlinemovie3.tex -2023/06/07 | 1034 | graphics/asymptote/LspCpp/third_party/uri/deps/docs/index.md -2023/06/07 | 103478 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/Doxyfile.zh-cn.in -2023/06/07 | 1033 | graphics/asymptote/examples/basealign.asy -2023/06/07 | 103393 | graphics/asymptote/LspCpp/third_party/rapidjson/doc/Doxyfile.in -2023/06/07 | 1031 | graphics/asymptote/LspCpp/third_party/uri/include/network/uri.hpp -2023/06/07 | 10310 | graphics/asymptote/LspCpp/third_party/rapidjson/test/unittest/prettywritertest.cpp -2023/06/07 | 1030 | graphics/asymptote/examples/workcone.asy -2023/06/07 | 102 | graphics/asymptote/tests/gc/file.asy -2023/06/07 | 102 | graphics/asymptote/GUI/res/icons/openpolygon.asy -2023/06/07 | 102 | graphics/asymptote/GUI/res/icons/opencurve.asy -2023/06/07 | 1028 | support/texlab/crates/texlab/src/features/completion/matcher.rs -2023/06/07 | 10271 | graphics/asymptote/GUI/windows/custMatTransform.ui -2023/06/07 | 1026 | graphics/asymptote/LspCpp/third_party/rapidjson/example/simplewriter/simplewriter.cpp -2023/06/07 | 1022 | graphics/asymptote/GUI/res/icons/centerorigin.svg -2023/06/07 | 10224 | graphics/asymptote/tr.cc -2023/06/07 | 1020 | graphics/asymptote/flatguide.cc -2023/06/07 | 1019 | graphics/asymptote/LspCpp/third_party/rapidjson/example/pretty/pretty.cpp -2023/06/07 | 10196 | graphics/asymptote/doc/CAD.tex -2023/06/07 | 10168 | graphics/asymptote/LspCpp/third_party/uri/test/uri_resolve_test.cpp -2023/06/07 | 1015 | graphics/asymptote/GUI/xasyTransform.py -2023/06/07 | 1014 | graphics/asymptote/LspCpp/third_party/rapidjson/example/condense/condense.cpp -2023/06/07 | 101347 | graphics/asymptote/webgl/gl.js -2023/06/07 | 10131 | graphics/asymptote/util.cc -2023/06/07 | 10110 | graphics/asymptote/LspCpp/third_party/rapidjson/include/rapidjson/internal/itoa.h -2023/06/07 | 1010 | graphics/asymptote/examples/washermethod.asy -2023/06/07 | 100 | graphics/asymptote/tests/io/input_with_nan.csv -2023/06/07 | 100 | graphics/asymptote/GUI/DebugFlags.py -2023/06/07 | 1009 | support/texlab/crates/symbols/src/workspace/snapshots/symbols__workspace__tests__filter_type_math.snap -2023/06/07 | 1008 | support/texlab/crates/parser/src/test_data/bibtex/samples/averroes_1998.txt -2023/06/07 | 1008 | graphics/asymptote/LspCpp/third_party/uri/src/CMakeLists.txt -2023/06/07 | 1008 | graphics/asymptote/LspCpp/include/LibLsp/lsp/workspace/workspaceFolders.h -2023/06/07 | 1008 | graphics/asymptote/doc/leastsquares.asy -2023/06/07 | 1007 | support/texlab/crates/texlab/src/features/reference/label.rs -2023/06/07 | 10073 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/include/gtest/gtest-spi.h -2023/06/07 | 1005 | graphics/asymptote/doc/asy.1.begin -2023/06/07 | 1004588 | systems/texlive/tlnet/archive/tilings.doc.r67292.tar.xz -2023/06/07 | 10038 | graphics/asymptote/GUI/pyUIClass/custMatTransform.py -2023/06/07 | 10023 | graphics/asymptote/LspCpp/third_party/uri/deps/googletest/test/googletest-catch-exceptions-test.py -2023/06/07 | 1000 | graphics/asymptote/GUI/res/icons/chevron-with-circle-left.svg -2023/06/07 | 1000 | graphics/asymptote/doc/FAQ/Makefile -2023/06/07 | 10006 | graphics/asymptote/base/rationalSimplex.asy -2023/06/07 | 100007 | graphics/asymptote/cudareflect/tinyexr/examples/exrview/ThirdPartyLibs/nativefiledialog/screens/open_cocoa.png diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib index 05ecff42da..2c95021265 100644 --- a/biblio/ctan-bibdata/ctan.bib +++ b/biblio/ctan-bibdata/ctan.bib @@ -1,7 +1,7 @@ %% bib file of all CTAN packages %% (C) Herbert Voß %% -%% created at 14-06-2023, 02:01:15 +%% created at 15-06-2023, 02:00:49 %% %% This file is provided under the terms of the LPPL v1.3 or @@ -10118,8 +10118,8 @@ title = {The \texttt{BXjscls} package}, subtitle = {Japanese document class collection for all major engines}, author = {Takayuki Yato}, - date = {2022-04-12}, - version = {2.7a}, + date = {2023-06-14}, + version = {2.8}, license = {bsd2}, mirror = {https://mirror.ctan.org/language/japanese/BX/bxjscls}, url = {https://ctan.org/pkg/bxjscls}, @@ -24674,8 +24674,8 @@ title = {The \texttt{FenetreCas} package}, subtitle = {Commands for CAS-like windows (Xcas or Geogebra) in TikZ}, author = {Cédric Pierquet}, - date = {2023-05-21}, - version = {0.1.2}, + date = {2023-06-14}, + version = {0.1.3}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/graphics/pgf/contrib/fenetrecas}, url = {https://ctan.org/pkg/fenetrecas}, @@ -30469,7 +30469,7 @@ title = {The \texttt{GUTenberg} package}, subtitle = {French \TeX{} Users Group information}, author = {Jérémy Just}, - date = {2023-01-23}, + date = {2023-06-14}, version = {}, license = {cc-by-4}, mirror = {https://mirror.ctan.org/usergrps/gutenberg}, @@ -57465,8 +57465,8 @@ title = {The \texttt{quizztex} package}, subtitle = {Create quizzes like in TV shows}, author = {Cédric Pierquet}, - date = {2023-06-13}, - version = {0.1.0}, + date = {2023-06-14}, + version = {0.1.1}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/quizztex}, url = {https://ctan.org/pkg/quizztex}, @@ -59462,8 +59462,8 @@ title = {The \texttt{runcode} package}, subtitle = {Execute foreign source code and embed the result in the pdf file}, author = {Haim Bar and HaiYing Wang}, - date = {2023-01-19}, - version = {1.8}, + date = {2023-06-14}, + version = {1.9}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/runcode}, url = {https://ctan.org/pkg/runcode}, @@ -63339,8 +63339,8 @@ title = {The \texttt{soul} package}, subtitle = {Hyphenation for letterspacing, underlining, and more}, author = {Heiko Oberdiek}, - date = {2023-04-16}, - version = {3.0}, + date = {2023-06-14}, + version = {3.1}, license = {lppl1.3}, mirror = {https://mirror.ctan.org/macros/generic/soul}, url = {https://ctan.org/pkg/soul}, @@ -63625,8 +63625,8 @@ @manual{ctan-spie, title = {The \texttt{spie} package}, subtitle = {Support for formatting SPIE Proceedings manuscripts}, - author = {Kenneth M Hanson}, - date = {2017-04-18}, + author = {Kenneth M Hanson and {SPIE Support}}, + date = {2023-06-14}, version = {3.25}, license = {lppl}, mirror = {https://mirror.ctan.org/macros/latex/contrib/spie}, @@ -64432,8 +64432,8 @@ title = {The \texttt{string-diagrams} package}, subtitle = {Create string diagrams with \LaTeX{} and TikZ}, author = {Paolo Brasolin}, - date = {2023-06-12}, - version = {0.2.0}, + date = {2023-06-14}, + version = {0.2.1}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/graphics/pgf/contrib/string-diagrams}, url = {https://ctan.org/pkg/string-diagrams}, @@ -65864,8 +65864,8 @@ title = {The \texttt{tagpdf} package}, subtitle = {Tools for experimenting with tagging using pdf\LaTeX{} and LuaLaTeX}, author = {Ulrike Fischer}, - date = {2023-06-07}, - version = {0.98h}, + date = {2023-06-14}, + version = {0.98i}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/tagpdf}, url = {https://ctan.org/pkg/tagpdf}, @@ -78132,8 +78132,8 @@ title = {The \texttt{zref-check} package}, subtitle = {Flexible cross-references with contextual checks based on zref}, author = {Gustavo Barros}, - date = {2022-07-07}, - version = {0.3.2}, + date = {2023-06-14}, + version = {0.3.3}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/zref-check}, url = {https://ctan.org/pkg/zref-check}, @@ -78159,8 +78159,8 @@ title = {The \texttt{zref-clever} package}, subtitle = {Clever \LaTeX{} cross-references based on zref}, author = {Gustavo Barros}, - date = {2023-02-21}, - version = {0.3.6}, + date = {2023-06-14}, + version = {0.4.0}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/zref-clever}, url = {https://ctan.org/pkg/zref-clever}, @@ -78181,8 +78181,8 @@ title = {The \texttt{zref-vario} package}, subtitle = {Extended \LaTeX{} page cross-references with varioref and zref-clever}, author = {Gustavo Barros}, - date = {2023-01-03}, - version = {0.1.7}, + date = {2023-06-14}, + version = {0.1.8}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/zref-vario}, url = {https://ctan.org/pkg/zref-vario}, diff --git a/biblio/ctan-bibdata/ctan.pdf b/biblio/ctan-bibdata/ctan.pdf index 362d79cfb8..3bf8957619 100644 Binary files a/biblio/ctan-bibdata/ctan.pdf and b/biblio/ctan-bibdata/ctan.pdf differ diff --git a/graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.pdf b/graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.pdf index ac533e9a3a..85c5fe3f8b 100644 Binary files a/graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.pdf and b/graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.pdf differ diff --git a/graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.tex b/graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.tex index 355aad1580..827d667357 100644 --- a/graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.tex +++ b/graphics/pgf/contrib/fenetrecas/doc/FenetreCas-doc.tex @@ -3,8 +3,8 @@ % arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)') \documentclass[french,a4paper,11pt]{article} -\def\TPversion{0.1.2} -\def\TPdate{21 mai 2023} +\def\TPversion{0.1.3} +\def\TPdate{14 juin 2023} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{amsmath,amssymb} @@ -74,9 +74,9 @@ \tcbset{vignetteMaJ/.style={% fontupper={\vphantom{pf}\footnotesize\ttfamily}, - vignettes,colframe=ForestGreen!50!black,coltitle=white,colback=purple!25,% + vignettes,colframe=green!50!black,coltitle=white,colback=purple!25,% overlay={\begin{tcbclipinterior}% - \fill[fill=purple!75]($(interior.south west)$) rectangle node[rotate=90]{\tiny \sffamily{\textcolor{Black}{\scalebox{0.85}[0.75]{\textbf{MàJ}}}}} ($(interior.north west)+(5pt,0pt)$);% + \fill[fill=purple!75]($(interior.south west)$) rectangle node[rotate=90]{\tiny \sffamily{\textcolor{black}{\scalebox{0.85}[0.75]{\textbf{MàJ}}}}} ($(interior.north west)+(5pt,0pt)$);% \end{tcbclipinterior}} } } @@ -175,7 +175,7 @@ \vspace{0.5cm} -%\hfill{}\textit{Merci à Denis Bitouzé et à Gilles Le Bourhis pour leurs retours et idées !} +\hfill{}\textit{Merci à Christophe Bal pour ses retours !} \smallskip @@ -265,9 +265,12 @@ Le fonctionnement global est : \section{Historique} -\verb|v0.1.2|~:~~~~Clés [Select] pour le \textit{rond} de sélection sur Geogebra -\verb|v0.1.1|~:~~~~Clés [Fond] et [FondCouleur] pour le fond des lignes +\verb|v0.1.3|~:~~~~Clé \textsf{[PosRes]} pour la réponse (gauche/centre/droite) + correction de bugs mineurs. + +\verb|v0.1.2|~:~~~~Clé \textsf{[Select]} pour le \textit{rond} de sélection sur Geogebra. + +\verb|v0.1.1|~:~~~~Clés \textsf{[Fond]} et \textsf{[FondCouleur]} pour le fond des lignes. \verb|v0.1.0|~:~~~~Version initiale. @@ -367,6 +370,9 @@ Le premier argument, optionnel et entre \texttt{[...]} propose les \Cle{clés} s \hfill~défaut : \Cle{true} \item \Cle{TailleCommande} pour la taille de la commande ; \hfill~défaut : \Cle{\textbackslash normalsize} \item \Cle{TailleResultat} pour la taille du résultat ; \hfill~défaut : \Cle{\textbackslash large} + \item \cmaj{0.1.3} \Cle{PosRes} pour la position du résultat parmi \Cle{gauche/centre/droite} ; + + \hfill~défaut : \Cle{gauche} \item le booléen \Cle{Fond} pour activer la coloration de fond de la ligne ; \hfill~défaut : \Cle{false} \item \Cle{CouleurFond} pour spécifier une couleur de fond si \Cle{Fond=true} ; \hfill~défaut : \Cle{white} \item le booléen \Cle{Select} pour (dés)activer le \textit{rond} de sélection ; \hfill~défaut : \Cle{true} @@ -408,7 +414,7 @@ Les arguments obligatoires, et entre \texttt{\{...\}}, correspondent à la comma {(1/4+1/3)/(1/5+2/7)} {$\rightarrow$ \: $\dfrac{\dfrac14+\dfrac13}{\dfrac15+\dfrac27}= \fpeval{(1/4+1/3)/(1/5+2/7)}$} - \LigneCalculsGeogebra[HauteurAuto=false,HauteurLigne=5,Fond,CouleurFond=cyan!10] + \LigneCalculsGeogebra[HauteurAuto=false,HauteurLigne=5,Fond,CouleurFond=cyan!10, PosRes=droite] {(1+i)\textasciicircum{}2} {$2\text{i}$} \end{CalculFormelGeogebra} @@ -505,7 +511,9 @@ Le premier argument, optionnel et entre \texttt{[...]} propose les \Cle{clés} s \begin{itemize} \item \Cle{CouleurCmd} pour la couleur de la commande ; \hfill~défaut : \Cle{red} \item \Cle{CouleurRes} pour la couleur du résultat ; \hfill~défaut : \Cle{blue} - \item \Cle{PosRes} pour la position du résultat ; \hfill~défaut : \Cle{centre} + \item \cmaj{0.1.3} \Cle{PosRes} pour la position du résultat parmi \Cle{gauche/centre/droite} ; + + \hfill~défaut : \Cle{centre} \item \Cle{TailleCommande} pour la taille de la commande ; \hfill~défaut : \Cle{\textbackslash normalsize} \item \Cle{TailleResultat} pour la taille du résultat ; \hfill~défaut : \Cle{\textbackslash large} \item le booléen \Cle{Fond} activer la coloration de fond de la ligne ; \hfill~défaut : \Cle{false} @@ -539,7 +547,7 @@ Un exemple en ligne :~ \LigneCalculsXcas% {\sffamily g(x):=4/(1+e\textasciicircum(-k x))} {$\mathsf{x \rightarrow \dfrac{4}{e^{-kx}+1}}$} - \LigneCalculsXcas[TailleCommande=\Large,TailleResultat=\LARGE]% + \LigneCalculsXcas[TailleCommande=\Large,TailleResultat=\LARGE,PosRes=droite]% {\sffamily g(x):=4/(1+e\textasciicircum(-k x))} {$\mathsf{x \rightarrow \dfrac{4}{e^{-kx}+1}}$} \LigneCalculsXcas @@ -548,7 +556,7 @@ Un exemple en ligne :~ \LigneCalculsXcas[,Fond,CouleurFond=yellow!10] {\texttt{Dériver[exp(0.1*x)]}} {\texttt{x $\rightarrow$ 0.1*exp(0.1*x)}} - \LigneCalculsXcas[TailleResultat=\Huge,Fond,CouleurFond=orange!5/cyan!5] + \LigneCalculsXcas[TailleResultat=\Huge,Fond,CouleurFond=orange!5/cyan!5, PosRes=gauche] {(1/4+1/3)/(1/5+2/7)} {$\rightarrow$ \: $\dfrac{\dfrac14+\dfrac13}{\dfrac15+\dfrac27}$} \end{CalculFormelXcas} diff --git a/graphics/pgf/contrib/fenetrecas/tex/FenetreCas.sty b/graphics/pgf/contrib/fenetrecas/tex/FenetreCas.sty index e7d41da444..a55c8ba894 100644 --- a/graphics/pgf/contrib/fenetrecas/tex/FenetreCas.sty +++ b/graphics/pgf/contrib/fenetrecas/tex/FenetreCas.sty @@ -3,10 +3,11 @@ % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{FenetreCas}[2023/05/21 0.1.2 Simuler une fenetre CAS type Geogebra ou Xcas] -% 0.1.2 Clés [Select] pour les numéros avec des ronds -% 0.1.1 Clés [FondCouleur] pour le fond des cases -% 0.1.0 Version initiale +\ProvidesPackage{FenetreCas}[2023/06/14 0.1.3 Simuler une fenetre CAS type Geogebra ou Xcas] +% 0.1.3 Clé [PosRes] pour positionner la réponse (gauche/centre/droite) + Correction de bugs mineurs. +% 0.1.2 Clés [Select] pour les numéros avec des ronds. +% 0.1.1 Clés [FondCouleur] pour le fond des cases. +% 0.1.0 Version initiale. %------Option(s) @@ -90,7 +91,8 @@ MargeV=\def\GEOCFoffset{#1},% MargeH=\def\GEOCFoffseth{#1},% CouleurFond=\def\GEOCFcolfond{#1},% - CouleurSelect=\def\GEOCFcolselect{#1} + CouleurSelect=\def\GEOCFcolselect{#1},% + PosRes=\def\GEOCFposrep{#1} } \setKVdefault[paramlgeogebra]{% HauteurLigne=2,% @@ -103,7 +105,8 @@ Fond=false,% CouleurFond=white,% Select=true,% - CouleurSelect=white + CouleurSelect=white,% + PosRes=gauche } \NewDocumentCommand\LigneCalculsGeogebra{ O{} m m }{% @@ -147,16 +150,43 @@ \ifboolKV[paramlgeogebra]{Fond} {\draw[semithick,fill=\GEOCFcolfond] (A2\GGBL) rectangle++({\GEOCFlarg-\GEOCFlargnum},{-\GEOCFhauteur}) ;} {\draw[semithick] (A2\GGBL) rectangle++({\GEOCFlarg-\GEOCFlargnum},{-\GEOCFhauteur}) ;} - %les commande/résultat \ifboolKV[paramlgeogebra]{HauteurAuto} {% + %commande \draw ($(A2\GGBL) + ({\GEOCFoffseth},{-\the\offsetcfgeogebra-0.5*\GEOCFelargirauto*\the\hauteurboiteggbcmd})$) node[font=\GEOCFtaillecmd,right] {#2} ; - \draw ($(A3\GGBL) + ({\GEOCFoffseth},{\the\offsetcfgeogebra+0.5*\GEOCFelargirauto*\the\hauteurboiteggbres})$) node[font=\GEOCFtailleres,right] {#3} ; - } + %résultat + \IfStrEq{\GEOCFposrep}{gauche} + {% + \draw ($(A3\GGBL) + ({\GEOCFoffseth},{\the\offsetcfgeogebra+0.5*\GEOCFelargirauto*\the\hauteurboiteggbres})$) node[font=\GEOCFtailleres,right] {#3} ; + }{}% + \IfStrEq{\GEOCFposrep}{droite} + {% + \draw ($(A3\GGBL) + ({\GEOCFlarg-\GEOCFlargnum},0) + ({-\GEOCFoffseth},{\the\offsetcfgeogebra+0.5*\GEOCFelargirauto*\the\hauteurboiteggbres})$) node[font=\GEOCFtailleres,left] {#3} ; + %\draw ($(A3\GGBL) + ({\GEOCFlarg-\GEOCFlargnum},0) + ({-\GEOCFoffseth},{\the\offsetcfgeogebra+0.5*\GEOCFelargirauto*\the\hauteurboiteggbres})$) node[font=\GEOCFtailleres,left] {#3} ; + }{}% + \IfStrEq{\GEOCFposrep}{centre} + {% + \draw ($(A3\GGBL) + ({0.5*(\GEOCFlarg-\GEOCFlargnum)},{\the\offsetcfgeogebra+0.5*\GEOCFelargirauto*\the\hauteurboiteggbres})$) node[font=\GEOCFtailleres] {#3} ; + }{}% + }% {% + %commande \draw ($(A2\GGBL) + ({\GEOCFoffseth},{-0.25*\GEOCFhauteur})$) node[font=\GEOCFtaillecmd,right] {#2} ; - \draw ($(A2\GGBL) + ({\GEOCFoffseth},{-0.66*\GEOCFhauteur})$) node[font=\GEOCFtailleres,right] {#3} ; + %résultat + \IfStrEq{\GEOCFposrep}{gauche} + {% + \draw ($(A2\GGBL) + ({\GEOCFoffseth},{-0.66*\GEOCFhauteur})$) node[font=\GEOCFtailleres,right] {#3} ; + }{}% + \IfStrEq{\GEOCFposrep}{droite} + {% + \draw ($(A2\GGBL) + ({\GEOCFlarg-\GEOCFlargnum},0) + ({-\GEOCFoffseth},{-0.66*\GEOCFhauteur})$) node[font=\GEOCFtailleres,left] {#3} ; + }{}% + \IfStrEq{\GEOCFposrep}{centre} + {% + \draw ($(A2\GGBL) + ({0.5*(\GEOCFlarg-\GEOCFlargnum)},0) + (0,{-0.66*\GEOCFhauteur})$) node[font=\GEOCFtailleres] {#3} ; + }% + {}% } } @@ -290,7 +320,13 @@ }{} \IfStrEq{\XCCFposres}{droite}%si posrep=right {% - \draw ($(A1\XCL) + ({\XCCFlarg-{\XCCFoffseth}},{\the\offsetcfxcas+0.5*\XCCFelargirauto*\the\hauteurboiteresxcas})$) node[\XCCFcoulres,font=\XCCFtailleres,left] {#3} ; + \ifboolKV[paramfenxcascf]{Menu}%si menu=true + {% + \draw ($(A1\XCL) + ({\XCCFlarg-1},0) + ({-\XCCFoffseth},{\the\offsetcfxcas+0.5*\XCCFelargirauto*\the\hauteurboiteresxcas})$) node[\XCCFcoulres,font=\XCCFtailleres,left] {#3} ; + }% + {% + \draw ($(A1\XCL) + ({\XCCFlarg},0) + ({-\XCCFoffseth},{\the\offsetcfxcas+0.5*\XCCFelargirauto*\the\hauteurboiteresxcas})$) node[\XCCFcoulres,font=\XCCFtailleres,left] {#3} ; + }% }{} %LA LIGNE DE SÉPARATION \ifboolKV[paramfenxcascf]{Sep}%si sep=true diff --git a/graphics/pgf/contrib/string-diagrams/string-diagrams.dtx b/graphics/pgf/contrib/string-diagrams/string-diagrams.dtx index 7bad0f7a63..d6480673a2 100644 --- a/graphics/pgf/contrib/string-diagrams/string-diagrams.dtx +++ b/graphics/pgf/contrib/string-diagrams/string-diagrams.dtx @@ -1,7 +1,7 @@ % \iffalse meta-comment %% ============================================================================= %% -%% string-diagrams 0.2.0 (2023/06/12) +%% string-diagrams 0.2.1 (2023/06/13) %% %% Copyright (C) 2023 by Paolo Brasolin %% SPDX-License-Identifier: LPPL-1.3c @@ -75,6 +75,8 @@ \documentclass[a4paper,full]{l3doc} \usepackage{parskip} +\NewDocumentCommand{\TikZ}{}{Ti\emph{k}Z} + \EnableCrossrefs \CodelineIndex \RecordChanges @@ -168,7 +170,7 @@ % \end{tikzpicture} % \end{tcblisting} % -% You can draw multiple boxes using any of your standard Ti\emph{k}Z positioning techniques. +% You can draw multiple boxes using any of your standard \TikZ\ positioning techniques. % Don't forget to label the nodes so you can easily reference them. % % \begin{tcblisting}{example} @@ -247,13 +249,13 @@ % % \end{function} % -% \begin{function}[added=2023-05-31]{\wires} +% \begin{function}[added=2023-05-31,updated=2023-06-13]{\wires} % \begin{syntax} -% \cs{wires}\oarg{Ti\emph{k}Z keys}\marg{connectivity}\marg{loose ends} +% \cs{wires}\oarg{\TikZ\ keys}\marg{connectivity}\marg{loose ends} % \end{syntax} % % To connect boxes, you can use the \cmd\wires\ macro. -% The first argument is Ti\emph{k}Z styling for the wires; the second argument is a nested dicionary specifying the connectivity; the third argument is a list of the loose ends to draw. +% The first argument is \TikZ\ styling for the wires; the second argument is a nested dicionary specifying the connectivity; the third argument is a list of the loose ends to draw. % \texttt{box}es have the following anchors: \texttt{west}, \texttt{west.0}, \texttt{west.1}, \texttt{east}, \texttt{east.0}, and \texttt{east.1}. % % \begin{tcblisting}{example} @@ -262,7 +264,7 @@ % \node[box=0/1/0/2] (B) at (+2, 0) {B}; % \node[box=0/1/0/1] (C) at ( 0,+1) {C}; % \node[box=0/1/0/1] (D) at ( 0,-1) {D}; -% \wires[]{ +% \wires{ % A = { east.1 = C.west, east.2 = D.west }, % C = { east = B.west.1 }, % D = { east = B.west.2 }, @@ -322,8 +324,8 @@ % \begin{macrocode} \ProvidesExplPackage {string-diagrams} - {2023/06/12} - {0.2.0} + {2023/06/13} + {0.2.1} {Draw string diagrams using TikZ} % \end{macrocode} % @@ -401,7 +403,7 @@ % \end{macro} % % \begin{macro}{box} -% \changes{0.2.0}{2023/06/12}{make ports configurable through Ti\emph{k}Z keys} +% \changes{0.2.0}{2023/06/12}{make ports configurable through \TikZ\ keys} % % Define a rectangular shape with configurable ports. % \begin{macrocode} @@ -487,31 +489,34 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}{\wires} -% Define our main actor. +% \begin{macro}{\@@_draw_bound_wires:nn} +% Draws bound wires. +% \begin{arguments} +% \item \TikZ\ keys +% \item dictionary of port labels +% \end{arguments} % \begin{macrocode} -\NewDocumentCommand{\wires}{ o m m } -{ +\cs_new:Nn \@@_draw_bound_wires:nn { \prop_set_from_keyval:Nn \l_tmpa_prop { #2 } \prop_map_inline:Nn \l_tmpa_prop { \prop_set_from_keyval:Nn \l_tmpb_prop { ##2 } \prop_map_inline:Nn \l_tmpb_prop { - \regex_match_case:nnTF + \regex_match_case:nn { { \. north } { \tl_gset:Nn \g_tmpa_tl { 90 } } { \. south } { \tl_gset:Nn \g_tmpa_tl { -90 } } { \. west } { \tl_gset:Nn \g_tmpa_tl { 180 } } { \. east } { \tl_gset:Nn \g_tmpa_tl { 0 } } - } { ####2 } {} {} - \regex_match_case:nnTF + } { ####2 } + \regex_match_case:nn { { north } { \tl_gset:Nn \g_tmpb_tl { 90 } } { south } { \tl_gset:Nn \g_tmpb_tl { -90 } } { west } { \tl_gset:Nn \g_tmpb_tl { 180 } } { east } { \tl_gset:Nn \g_tmpb_tl { 0 } } - } { ####1 } {} {} + } { ####1 } \draw [ out={\tl_use:N \g_tmpb_tl}, in={\tl_use:N \g_tmpa_tl}, @@ -519,9 +524,21 @@ ] (##1.####1) to (####2); } } - \clist_set:Nn \l_tmpa_clist { #3 } +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\@@_draw_loose_wires:nn} +% Draws loose wires. +% \begin{arguments} +% \item \TikZ\ keys +% \item list of port labels +% \end{arguments} +% \begin{macrocode} +\cs_new:Nn \@@_draw_loose_wires:nn { + \clist_set:Nn \l_tmpa_clist { #2 } \clist_map_inline:Nn \l_tmpa_clist { - \regex_match_case:nnTF + \regex_match_case:nn { { \. north } { \draw[#1] (##1) -- +( 0,+1); } % TODO: cleaner solution? { \. south } @@ -531,12 +548,24 @@ } % TODO: not sure why this works { \. west } { \draw[#1] (##1) -- +(-1, 0); } { \. east } { \draw[#1] (##1) -- +(+1, 0); } - } { ##1 } {} {} + } { ##1 } } } % \end{macrocode} % \end{macro} % +% \begin{macro}{\wires} +% \changes{0.2.1}{2023/06/13}{now correctly handles optional style parameter} +% Define our main actor. +% \begin{macrocode} +\NewDocumentCommand{\wires}{ O{} m m } +{ + \@@_draw_bound_wires:nn { #1 } { #2 } + \@@_draw_loose_wires:nn { #1 } { #3 } +} +% \end{macrocode} +% \end{macro} +% % Close the \pkg{DocStrip} guards and call it a day. % \begin{macrocode} % diff --git a/graphics/pgf/contrib/string-diagrams/string-diagrams.ins b/graphics/pgf/contrib/string-diagrams/string-diagrams.ins index 9d4304f591..96d08b2a9f 100644 --- a/graphics/pgf/contrib/string-diagrams/string-diagrams.ins +++ b/graphics/pgf/contrib/string-diagrams/string-diagrams.ins @@ -8,7 +8,7 @@ %% %% ============================================================================= %% -%% string-diagrams 0.2.0 (2023/06/12) +%% string-diagrams 0.2.1 (2023/06/13) %% %% Copyright (C) 2023 by Paolo Brasolin %% SPDX-License-Identifier: LPPL-1.3c diff --git a/graphics/pgf/contrib/string-diagrams/string-diagrams.pdf b/graphics/pgf/contrib/string-diagrams/string-diagrams.pdf index a0db3e4625..3eb4e9ca2e 100644 Binary files a/graphics/pgf/contrib/string-diagrams/string-diagrams.pdf and b/graphics/pgf/contrib/string-diagrams/string-diagrams.pdf differ diff --git a/language/japanese/BX/bxjscls/LICENSE b/language/japanese/BX/bxjscls/LICENSE index 0ab060e9e9..56cb62927a 100644 --- a/language/japanese/BX/bxjscls/LICENSE +++ b/language/japanese/BX/bxjscls/LICENSE @@ -2,8 +2,8 @@ The BSD 2-Clause License Copyright 1995-1999 ASCII Corporation. Copyright 1999-2016 Haruhiko Okumura -Copyright 2016-2020 Japanese TeX Development Community -Copyright 2013-2022 Takayuki YATO (aka. "ZR") +Copyright 2016-2023 Japanese TeX Development Community +Copyright 2013-2023 Takayuki YATO (aka. "ZR") All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/language/japanese/BX/bxjscls/README-ja.md b/language/japanese/BX/bxjscls/README-ja.md index 0c0a0bb196..82022ffce5 100644 --- a/language/japanese/BX/bxjscls/README-ja.md +++ b/language/japanese/BX/bxjscls/README-ja.md @@ -21,7 +21,7 @@ XeLaTeX / LuaLaTeX の上でも日本語処理パッケージと連携して使 * 必須パッケージ: - calc - geometry v5.0以降 - - ifpdf + - iftex - keyval * 場合により必須となるパッケージ: - bxwareki: 日付の和暦表示機能を使う場合 @@ -43,7 +43,6 @@ XeLaTeX / LuaLaTeX の上でも日本語処理パッケージと連携して使 + bxorigcapt: Babel 使用時 + etoolbox v2.0以降: e-TeX なら + filehook v0.5d以降: e-TeX なら - + iftex + pdftexcmds v0.5以降 + pxbabel: (u)pLaTeX かつ Babel 使用時 * エンジンが (u)pTeX 以外で、かつ和文ドライバが standard 以外の場合、 @@ -111,6 +110,9 @@ XeLaTeX / LuaLaTeX の上でも日本語処理パッケージと連携して使 更新履歴 -------- + * Version 2.8 〈2023/06/14〉 + - jsclasses の 2023/02/23 と同期。 + - hyperref の unicode 設定に対する調整処理の見直し。 * Version 2.7a 〈2022/04/10〉 - (試験的) `nodvidriver*` オプションを追加。 * Version 2.7 〈2022/03/30〉 diff --git a/language/japanese/BX/bxjscls/README.md b/language/japanese/BX/bxjscls/README.md index b792168e8e..9e82959175 100644 --- a/language/japanese/BX/bxjscls/README.md +++ b/language/japanese/BX/bxjscls/README.md @@ -21,7 +21,7 @@ packages that provide capability of Japanese typesetting. * Prerequisite packages: - calc - geometry v5.0+ - - ifpdf + - iftex - keyval * Packages required on occasion: - bxwareki: when the wareki feature is used @@ -43,7 +43,6 @@ packages that provide capability of Japanese typesetting. + bxorigcapt: if use Babel + etoolbox v2.0+ + filehook v0.5d+ - + iftex + pdftexcmds v0.5+ + pxbabel: if use (u)pLaTeX and Babel * When you use ja-drivers other than standard, you generally need @@ -101,6 +100,8 @@ This package is distributed under the BSD 2-Clause License. Revision History ---------------- + * Version 2.8 〈2023/06/14〉 + - Sync with jsclasses 2023/02/23. * Version 2.7a 〈2022/04/10〉 * Version 2.7 〈2022/03/30〉 * Version 2.6 〈2022/03/20〉 diff --git a/language/japanese/BX/bxjscls/bxjscls-manual.pdf b/language/japanese/BX/bxjscls/bxjscls-manual.pdf index f8b567e1a2..3bc2ebe507 100644 Binary files a/language/japanese/BX/bxjscls/bxjscls-manual.pdf and b/language/japanese/BX/bxjscls/bxjscls-manual.pdf differ diff --git a/language/japanese/BX/bxjscls/bxjscls-manual.tex b/language/japanese/BX/bxjscls/bxjscls-manual.tex index 1f9192e9fe..6e350db358 100644 --- a/language/japanese/BX/bxjscls/bxjscls-manual.tex +++ b/language/japanese/BX/bxjscls/bxjscls-manual.tex @@ -12,8 +12,8 @@ \bxtexlogoimport{*} \usepackage{shortvrb} \MakeShortVerb{\|} -\newcommand{\PkgVersion}{2.7a} -\newcommand{\PkgDate}{2022/04/10} +\newcommand{\PkgVersion}{2.8} +\newcommand{\PkgDate}{2023/06/14} \newcommand{\Pkg}[1]{\textsf{#1}} \newcommand{\Meta}[1]{$\langle$\mbox{}\nobr#1\nobr\mbox{}$\rangle$} \newcommand{\Note}{\par\noindent ※} diff --git a/language/japanese/BX/bxjscls/bxjscls.dtx b/language/japanese/BX/bxjscls/bxjscls.dtx index 443d869a59..ab230dfedb 100644 --- a/language/japanese/BX/bxjscls/bxjscls.dtx +++ b/language/japanese/BX/bxjscls/bxjscls.dtx @@ -25,15 +25,15 @@ % %--------------------------------------- % -% Copyright 1993-2020 +% Copyright 1993-2022 % The LaTeX3 Project and any individual authors listed elsewhere % in this file. % % Copyright 1995-1999 ASCII Corporation. % Copyright 1999-2016 Haruhiko Okumura -% Copyright 2016-2020 Japanese TeX Development Community +% Copyright 2016-2023 Japanese TeX Development Community % -% Copyright 2013-2022 Takayuki YATO (aka. "ZR") +% Copyright 2013-2023 Takayuki YATO (aka. "ZR") % % \fi % \CheckSum{0} @@ -56,7 +56,9 @@ %<*driver> \ProvidesFile{bxjscls.dtx} % - [2022/04/10 v2.7a BXJS document classes] + [2023/06/14 v2.8 BXJS document classes] +% based on jsclasses [2023/02/23] +% [2022/04/10 v2.7a BXJS document classes] % [2022/03/30 v2.7 BXJS document classes] % [2022/03/20 v2.6 BXJS document classes] % [2021/05/18 v2.5a BXJS document classes] @@ -320,8 +322,12 @@ % をあてる場合があります。この処理に使用するフラグを定義します。 % % \begin{macrocode} +% +%<*class|minijs> \newif\ifjsc@needsp@tch \jsc@needsp@tchfalse +% +%<*class> % \end{macrocode} % \end{macro} % @@ -339,7 +345,7 @@ % \end{macrocode} % クラスの本体ではこの他に以下のパッケージが読み込まれる。 % \begin{quote} -% |geometry|、|ifpdf| +% |geometry|、|iftex| % \end{quote} % また状況によっては以下のパッケージが読み込まれる可能性がある。 % \begin{quote} @@ -481,23 +487,6 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}{\ifjsInPdfMode} -% 〔スイッチ〕 -% {\pdfTeX}/{\LuaTeX}がPDFモードで動作しているか。 -% \Note {\LuaTeX} 0.8x版でのプリミティブ名変更に対応。 -% \TODO |iftex| パッケージ(+自前実装)に置き換える。 -% \begin{macrocode} -\newif\ifjsInPdfMode -\@nameuse{ImposeOldLuaTeXBehavior} -\let\bxjs@tmpa\PackageWarningNoLine -\let\PackageWarningNoLine\PackageInfo % suppress warning -\RequirePackage{ifpdf} -\let\PackageWarningNoLine\bxjs@tmpa -\@nameuse{RevokeOldLuaTeXBehavior} -\let\ifjsInPdfMode\ifpdf -% \end{macrocode} -% \end{macro} -% % \begin{macro}{\ifbxjs@explIII} % 〔スイッチ〕 % expl3がカーネルに組み込まれているか。 @@ -578,6 +567,20 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\ifjsInPdfMode} +% 〔スイッチ〕 +% {\pdfTeX}/{\LuaTeX}がPDFモードで動作しているか。 +% \begin{macrocode} +\RequirePackage{iftex} +\newif\ifjsInPdfMode +\@nameuse{jsInPdfMode\ifnum0% + \ifx\pdfoutput\@undefined\else\the\pdfoutput\fi + \ifx\outputmode\@undefined\else\the\outputmode\fi + >0 true\else false\fi} +\ifx\pdffalse\@undefined\else \bxjs@csletcs{ifjsInPdfMode}{ifpdf}\fi +% \end{macrocode} +% \end{macro} +% % \begin{macro}{\bxjs@catopt} % |\bxjs@catopt{|\Meta{文字列1}|}{|\Meta{文字列2}|}|\Means % 2つの文字列を |,| で繋いだ文字列。 @@ -1170,10 +1173,14 @@ % ようですので,少し小さくします。 % また,中央の要素も |\displaystyle| にします。 % +% [2022-09-13] \LaTeXe~2021-11-15 (ltmath.dtx 2021/10/14 v1.2j)で +% |\@currentcounter|が追加されましたので,追随します。 +% % \begin{macrocode} \def\eqnarray{% \stepcounter{equation}% \def\@currentlabel{\p@equation\theequation}% + \def\@currentcounter{equation}% \global\@eqnswtrue \m@th \global\@eqcnt\z@ @@ -1193,6 +1200,9 @@ % \texttt{fleqn} で数式が本文左端から一定距離のところに出力されます。 % 森本さんにしたがって訂正しました。 % +% [2022-09-13] \LaTeXe~2021-11-15 (ltmath.dtx 2021/10/14 v1.2j)で +% |\@currentcounter|が追加されましたので,追随します。 +% % \begin{macrocode} \DeclareOption{leqno}{\input{leqno.clo}} \DeclareOption{fleqn}{\input{fleqn.clo}% @@ -1200,6 +1210,7 @@ \def\eqnarray{% \stepcounter{equation}% \def\@currentlabel{\p@equation\theequation}% + \def\@currentcounter{equation}% \global\@eqnswtrue\m@th \global\@eqcnt\z@ \tabskip\mathindent @@ -2122,6 +2133,7 @@ % 〔スイッチ〕 |plautopatch| の指定値。 % \begin{macrocode} \bxjs@declare@bool@option{plautopatch}{plautopatch}{false} +\g@addto@macro\bxjs@plautopatchtrue{\let\bxjs@plautopatch@given\@undefined} \g@addto@macro\bxjs@plautopatchfalse{\def\bxjs@plautopatch@given{false}} % \end{macrocode} % \end{macro} @@ -2214,21 +2226,18 @@ % % \paragraph{使用エンジンの検査・自動判定} % -% ユーザが |uplatex| オプションの有無により指定したエンジンが,実際に -% 使われているものと一致しているかを検査し,一致しない場合はエラー -% メッセージを表示します。 +% デフォルトで現在使われているエンジンが p\LaTeX か up\LaTeX かを判定します。 +% ユーザによって |platex| オプションまたは |uplatex| オプションが明示的に +% 指定されている場合は、実際に使われているエンジンと一致しているかを検査し,一致 +% しない場合はエラーメッセージを表示します。 % % [2016-11-09] p\LaTeX / up\LaTeX を自動判別するオプション |autodetect-engine| を新設しました。 % up\LaTeX の場合は,グローバルオプションに |uplatex| を追加することで, % 自動判定に応じて |otf| パッケージにも |uplatex| オプションが渡るようにします。 % -% \begin{ZRnote} -% ここのコードを削除。 -% \end{ZRnote} -% -% [2016-11-11] p\LaTeX の場合は,オプション |uplatex| が指定されていれば必ずエラーを出します。 -% |autodetect-engine| が有効になっていてもエラーを出しますが,これは |otf| パッケージに -% |uplatex| オプションが渡ってしまうのを防ぐためです。 +% [2023-02-12] |autodetect-engine| 指定時の挙動を規定化しました。 +% また |platex| を新設しました。オプション |autodetect-engine|, |platex|, |uplatex| の +% うち最後に指定されたものが有効になります。 % % \begin{ZRnote} % @@ -2381,6 +2390,14 @@ % % \paragraph{その他のBXJS特有の後処理 \ZRX} % +% |\documentclass| より前に |plautopatch| パッケージが読み込まれて +% いる場合は |bxjs@plautopatch| を真にする。 +% \begin{macrocode} +\@ifpackageloaded{plautopatch}{% + \bxjs@plautopatchtrue +}{} +% \end{macrocode} +% % 標準の和文ドライバの名前の定数。 % \begin{macrocode} \def\bxjs@@minimal{minimal} @@ -2412,7 +2429,7 @@ % % |plautopatch| が真の場合はここで |plautopatch| を読み込む。 % \Note この時点で既に読み込まれているパッケージは、 -% |calc|、|keyval|、|ifpdf|。 +% |calc|、|keyval|、|iftex|。 % \Note Pandocモードでは |plautopatch| の既定値を真とする。 % \begin{macrocode} \ifx\bxjs@jadriver\bxjs@@pandoc \ifx\bxjs@plautopatch@given\@undefined @@ -2566,13 +2583,19 @@ % 発行する |\special| の中身を展開しておくようにしました。 % こうしないと,用紙サイズ設定を間違ってしまいます(Issue \#72)。 % +% [2022-09-12] 次期\LaTeXe カーネルに|\stockwidth|,|\stockheight|が +% 追加されるようですので, +% クラスファイル側では未定義のときのみこれらの長さ変数を定義します。 +% h20y6mさん,ありがとうございます。 +% % \begin{ZRnote} % BXJSでは出力用紙サイズ記録は |geometry| パッケージが行う。 % % また、JSクラスと異なり、|\stockwidth|、|\stockheight| は常に定義される。 % \end{ZRnote} % \begin{macrocode} -\newdimen\stockwidth \newdimen\stockheight +\ifx\stockwidth\@undefined\newdimen\stockwidth\fi +\ifx\stockheight\@undefined\newdimen\stockheight\fi \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname iftombow\expandafter\endcsname\csname iftrue\endcsname % \newdimen\stockwidth \newdimen\stockheight @@ -4751,6 +4774,7 @@ % |\subtitle| の定義を |\title| の実行まで遅延させることにする。 % もしどうしても主題より前に副題を設定したい場合は、 % |\jsSubtitle| 命令を直接用いればよい。 +% \TODO |\subtitle| の遅延処理はPandocモードに移す。 % % 本体を |\jsSubtitle| として定義する。 % \begin{macrocode} @@ -7678,6 +7702,13 @@ % % [2018-03-11] |\next|などいくつかの内部命令を |\jsc@...| 付きの % ユニークな名前にしました。 +% +% [2022-09-13] \LaTeXe~2021-11-15 (ltfloat.dtx 2021/10/14 v1.2g)で +% |\@currentcounter|が追加されましたので,追随します。 +% なお,\LaTeXe~2021-06-01 (ltfloat.dtx 2021/02/10 v1.2e)で +% parhook対応として |\par| が追加されていますが, +% 実は同時に |\color@endgroup| も |\endgraf| するように変更 +% されていますので,不要だと思います。というわけで追加しません。 % \begin{macrocode} \long\def\@footnotetext{% \insert\footins\bgroup @@ -7686,6 +7717,7 @@ \splittopskip\footnotesep \splitmaxdepth \dp\strutbox \floatingpenalty \@MM \hsize\columnwidth \@parboxrestore + \def\@currentcounter{footnote}% \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark }% @@ -8184,9 +8216,11 @@ % \end{macro} % % \begin{macro}{\jayear} -% 和暦における年の表記(元号+年数)。 +% 和暦における年の表記の「年」以前の部分(元号+年数)。 +% \Note |\heisei| の代替となる機能(だから常に和暦を扱う)。 % \begin{macro}{\heisei} % 年数を表す整数レジスタで、元号が「平成」である場合にのみ定義される。 +% \Note JSクラスと互換の機能。 % \begin{macrocode} \ifbxjs@bxwareki@avail \let\jayear\warekiyear @@ -8194,7 +8228,7 @@ \newcount\heisei \heisei=\value{warekiyear} \fi % \end{macrocode} -% |bxwareki| が使えない場合は西暦表示にする。 +% ただし |bxwareki| が使えない場合は西暦表示にフォールバックする。 % \begin{macrocode} \else \edef\jayear{\the\year \bxjs@iai} @@ -9726,6 +9760,8 @@ % \begin{macro}{\jsCheckHyperrefUnicode} % 「|hyperref| の |unicode| オプションの値を検証する」ための % 本体開始時のフック。 +% \Note |pxjahyper-uni.def| はこのフックを |\relax| に上書きする +% ことで検証を無効化している。 % \begin{macrocode} \@onlypreamble\jsCheckHyperrefUnicode \let\jsCheckHyperrefUnicode\@empty @@ -9937,19 +9973,85 @@ % \end{macrocode} % % \paragraph{hyperref対策} +% |hyperref| の |unicode| オプションに対する調整を行う。 +% \Note |pxjahyper| パッケージの「|unicode| 対応」サポートの履歴: +% \begin{itemize} +% \item 0.7版[2021-02-13]:{\upLaTeX}上に限り|unicode|対応。 +% \item 0.9c版[2021-06-06]:|pxjahyper-uni.def| ファイルを追加。 +% \item 1.0版[2022-04-01]:{\pLaTeX}上の|unicode|対応を試験的サポート。 +% \item 1.3版[2023-03-01]:{\pLaTeX}上の|unicode|対応を正式サポート。 +% \end{itemize} % -% |unicode| にしてはいけない。 % \begin{macrocode} \ifbxjs@hyperref@enc +% \end{macrocode} +% |unicode| オプションが偽であることを検証する。 +% ただし、|pxjahyper| パッケージまたは |pxjahyper-uni.def| が読み込まれて +% (前提条件を満たしていて)「|unicode| 対応」が行われた場合は +% 検証は無効化される。 +% \begin{macrocode} \bxjs@check@hyperref@unicode{false} % \end{macrocode} -% 暫定的なナニカ。 +% |\bxjs@plautopatch@new| は「|pxjahyper| の自動読込に対応した +% 版の |plautopatch| が読み込まれているか」のフラグ。 +% \begin{macrocode} + \@ifpackagelater{plautopatch}{2020/05/25}{% v0.9g + \let\bxjs@plautopatch@new=t}{} +% \end{macrocode} +% 「|unicode| を有効にできるか」を判定する。 +% まず必要条件として +% 「|pxjahyper-uni.def| が存在すること」 +% 「|\bxjs@plautopatch@new| が真、または、ファイルフックが利用可能 +% であること」 +% を検査する。 +% \Note |pxjahyper-uni.def| をもつ |pxjahyper| の版であれば、 +% {\upLaTeX}上の |unicode| には対応していることに注意。 +% \begin{macrocode} + \let\bxjs@avail@hy@unicode=f + \if \ifx t\bxjs@plautopatch@new T% + \else\ifbxjs@old@hook@system F\else T\fi\fi T% + \IfFileExists{pxjahyper-uni.def}{\let\bxjs@avail@hy@unicode=t}{} + \fi + \if t\bxjs@avail@hy@unicode + \ifjsWithupTeX +% \end{macrocode} +% 必要条件が満たされていて、かつ{\upLaTeX}である場合の処理。 +% もしファイルフックが利用可能ならば、|hyperref| が読み込まれた場合に +% その直後に |pxjahyper-uni.def| が読まれるようにする。 +% \Note そうでないなら、前提条件より |pxjahyper| が読み込まれるはず +% なので何もしなくてよい。 +% \begin{macrocode} + \ifbxjs@old@hook@system\else + \AddToHook{\bxjs@CGHN{package/hyperref/after}}{% + \input{pxjahyper-uni.def}} + \fi + \else +% \end{macrocode} +% 必要条件が満たされていて、かつ{\pLaTeX}である場合の処理。 +% |pxjahyper| が +% 「{\pLaTeX}上の |unicode| 対応をもつほど新しい版(1.3版以降)」 +% であるかを判定する方法はない。 +% しかし、新しい{\LaTeX}システムで |unicode| を無効にするのは +% 避けたいので、{\LaTeX}カーネルが2023-06-01以降である場合に +% |pxjahyper| も十分に新しいと推定することにする。 +% すなわち「|pxjahyper| が読み込まれるはず」かつ +% 「{\LaTeX}がカーネルが新しい」かを判定する。 +% \begin{macrocode} + \let\bxjs@avail@hy@unicode=f + \ifx t\bxjs@plautopatch@new + \@ifl@t@r\fmtversion{2023/06/01}{\let\bxjs@avail@hy@unicode=t}{} + \fi + \fi + \fi +% \end{macrocode} +% この時点で「|unicode| を有効にできるか」の判定結果が +% フラグ |\bxjs@avail@hy@unicode| に入っている。 +% |unicode| を有効にできない場合は |unicode| の既定値を +% 偽に設定する。 % \begin{macrocode} - \ifjsWithupTeX\ifbxjs@old@hook@system\else - \IfFileExists{pxjahyper-uni.def}{% - \AddToHook{\bxjs@CGHN{package/hyperref/after}}{\input{pxjahyper-uni.def}} - }{} - \fi\fi + \if f\bxjs@avail@hy@unicode + \PassOptionsToPackage{unicode=false}{hyperref} + \fi \fi % \end{macrocode} % @@ -10817,7 +10919,7 @@ \let\bxjs@kv@orblockheading@true\bxjs@jp@or@block@headingtrue \let\bxjs@kv@orblockheading@false\bxjs@jp@or@block@headingfalse \define@key{bxjsPan}{or-block-heading}[true]{% - \bxjs@set@keyval{blockheading}{#1}{}} + \bxjs@set@keyval{orblockheading}{#1}{}} % \end{macrocode} % % 実際の |japaram| の値を適用する。 @@ -10886,12 +10988,27 @@ %^^A---------------- % \subsection{lang変数} % |lang=ja| という言語指定が行われると、 -% Pandocはこれに対応していないため -% 不完全なBabelやPolyglossiaの設定を出力してしまう。 -% これを防ぐための対策を行う。 -% \Note Pandoc 2.12版で |lang=ja| 指定に対応し、 -% 正しく{\LaTeX}側の言語名 |japanese| に変換されるようになった。 -% しかし、日本語指定の場合は相変わらず調整処理が必要である。 +% 2.12版より前のPandocはこれに対応していなかったため +% 不完全なBabelやPolyglossiaの設定を出力してしまっていた。 +% 現在では |lang=ja| 指定について +% 正しく{\LaTeX}側の言語名 |japanese| に変換されるようになっているが、 +% それでも日本語指定の場合は相変わらず調整処理が必要である。 +% \Note そもそもBXJSクラスは日本語用の文書クラスであるため、 +% もし言語設定が行われているのであれば +% 「メイン言語は日本語である」であるはずなので、 +% 「サブ言語が日本語である」ことは考慮しない。 +% +% \paragraph{Polyglossiaについて} +% 現在CTANに登録されている日本語用のglossファイルは超絶アレでかつ +% 有害な設定を行うため、これの読込を避ける必要がある。 +% そのため、メイン言語が |japanese| である場合 +% (古いPandocではこの場合に引数が空の |\setmainlanguage{}| が +% 実行されるがこのパターンも同様に扱う) +% には、Polyglossiaの処理を無効化してしまうことにする。 +% つまり、Polyglossiaが提供する命令について、何もしないダミーの +% 定義を与える。 +% \Note Polyglossiaは古いPandocのテンプレートにおいて、 +% エンジンが{\XeTeX}か{\LuaTeX}の場合に利用されていた。 % % \begin{macro}{\bxjs@polyglossia@options} % Polyglossiaのオプション列のテキスト。 @@ -10901,16 +11018,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}{\bxjs@babel@options} -% Babelのオプション列のテキスト。 -% “実際には読み込まれていない”場合は |\relax| になる。 -% \begin{macrocode} -\let\bxjs@babel@options\relax -% \end{macrocode} -% \end{macro} -% -% \paragraph{Polyglossiaについて} -% つまり{\XeTeX}および{\LuaTeX}(古いPandocで)の場合。 +% エンジンが{\XeTeX}か{\LuaTeX}の場合が対象になる。 % \Note この場合 |etoolbox| が使用可能になっている。 % \begin{macrocode} \ifnum0\if x\jsEngine1\fi\if l\jsEngine1\fi>0 @@ -10930,13 +11038,12 @@ % |polyglossia| の読込が指示された場合、 % 直後に |\setmainlanguage| が実行されることを想定して、 % フック用の |\setmainlanguage| を定義する。 -% \Note 先に |\setmainlanguage| 以外が実行された場合はエラーになる。 +% \Note 最初に |\setmainlanguage| 以外が実行された場合はエラーになる。 % \begin{macrocode} \newcommand*\setmainlanguage[2][]{% % \end{macrocode} -% もし、言語名が空の |\setmainlanguage{}| が実行された場合は、 -% |lang=ja| が指定されたと見なす。 -% 言語名が |japanese| だった場合も同様。 +% もし、|\setmainlanguage| の引数が空または |japanese| だった +% 場合はメインが日本語である(|lang=ja| 指定)と見なす。 % \begin{macrocode} \ifboolexpr{test{\ifblank{##2}}or test{\ifstrequal{##2}{japanese}}}{% \ClassWarning\bxjs@clsname @@ -10961,7 +11068,7 @@ % % プレアンブルで |polyglossia| の読込が指示されなかった場合、 % Polyglossiaと連携するパッケージの誤動作を防ぐため、 -% 読込済マークを外す。 +% (|\AtEndPreamble| において)読込済マークを外す。 % \begin{macrocode} \g@addto@macro\bxjs@endpreamble@hook{% \ifx\bxjs@polyglossia@options\relax @@ -10972,10 +11079,10 @@ % \begin{macro}{\bxjs@pandoc@polyglossia@ja} % Pandoc側で |lang=ja| が指定されていた場合の処理。 % この場合はPolyglossiaの処理を無効化するためにダミーの定義を行う。 -% その時点でダミーの |\setotherlanguage(s)| を定義する。 -% \Note 現在ではPolyglossiaの日本語用の定義ファイル -% (|gloss-japanese.ldf|)が存在するので、本来なら普通に処理できる -% はずであるが、現状の定義ファイルはアレなので回避したい。 +% すなわち、サブ言語 |xxx| の各々について、|xxx| 環境と |\textxxx| +% 命令を(特に何も加工しないものとして)定義する。 +% この目的のため、|\setotherlanguage(s)| をダミーを定義する +% 命令として定義する。 % \begin{macrocode} \@onlypreamble\bxjs@pandoc@polyglossia@ja \def\bxjs@pandoc@polyglossia@ja{% @@ -10999,10 +11106,18 @@ % \end{macrocode} % % \paragraph{Babelについて} -% {\XeTeX}以外の場合。 -% \Note Pandoc 2.15版から、テンプレートで用いられる多言語パッケージが -% Babelに統一された。 -% ({\LuaTeX}は2.6版でPolyglossiaからBabelに変更されている。) +% 現在のPandocでは、テンプレートで用いられる多言語パッケージとして +% エンジンの種別によらずにBabelが使われる。 +% \Note {\XeTeX}では2.15版で、{\LuaTeX}は2.6版で +% PolyglossiaからBabelに変更されている。 +% +% \begin{macro}{\bxjs@babel@options} +% Babelのオプション列のテキスト。 +% “実際には読み込まれていない”場合は |\relax| になる。 +% \begin{macrocode} +\let\bxjs@babel@options\relax +% \end{macrocode} +% \end{macro} % % パッケージの読込を検知するため読込済のマークを付けて % duploadの処理を仕込む。 @@ -11013,34 +11128,19 @@ \ClassWarning\bxjs@clsname {Package babel is requested}% % \end{macrocode} -% パッケージオプションに言語名が空の |main=| があるかを調べる。 -% ある場合は |lang=ja| 対策を実行する。 -% \Note |\bxjs@babel@options| には |main=| を除いたオプション列を -% 格納する。 +% パッケージオプションに言語名が空の |main=| がある場合は、 +% |main=japanese| に置き換える。 % \begin{macrocode} \@tempswafalse \let\bxjs@babel@options\@empty \def\bxjs@tmpb{main=}% - \def\bxjs@next{main=japanese}% \@for\bxjs@tmpa:=#1\do{% - \ifx\bxjs@tmpa\bxjs@tmpb \@tempswatrue - \else\ifx\bxjs@tmpa\bxjs@next \@tempswatrue - \else \edef\bxjs@babel@options{\bxjs@babel@options,\bxjs@tmpa}% - \fi\fi}% - \if@tempswa - \ClassWarning\bxjs@clsname - {Main language is 'japanese', thus fallback\MessageBreak - definitions will be employed}% - \bxjs@pandoc@babel@ja -% \end{macrocode} -% ない場合は、本来の |babel| の処理を実行する。 -% \begin{macrocode} - \else - \ClassWarning\bxjs@clsname - {Main language is not 'japanese',\MessageBreak - thus babel will be loaded}% - \bxjs@cslet{ver@babel.sty}\@undefined - \RequirePackage[#1]{babel}[]% - \fi} + \ifx\bxjs@tmpa\bxjs@tmpb \def\bxjs@tmpa{main=japanese}\fi + \edef\bxjs@babel@options{\bxjs@babel@options,\bxjs@tmpa}}% + \bxjs@cslet{ver@babel.sty}\@undefined + \edef\bxjs@next{% + \noexpand\RequirePackage[\bxjs@babel@options]{babel}\relax + }\bxjs@next + \RequirePackage{bxorigcapt}\relax} % \end{macrocode} % % プレアンブルで |babel| の読込が指示されなかった場合、 @@ -11051,23 +11151,63 @@ \bxjs@cslet{ver@babel.sty}\@undefined \fi} % \end{macrocode} -% -% \begin{macro}{\bxjs@pandoc@babel@ja} -% Pandoc側で |lang=ja| が指定されていた場合の処理。 +% +% 3.0版より前の |japanese.ldf| はサポート対象エンジンが限られていた。 +% ここでは、エンジンの種類を問わず、「|japanese.ldf| が古い場合は +% 読込を回避してダミー定義で代替する」という対策を入れる。 +% 実は |japanese.ldf| で行う定義は |bxorigcapt| の機能等により +% 実質的に全て無効化されている。 +% 最新の環境においては +% 「|japanese| 指定のBabel+|bxorigrcapt| パッケージ」 +% の状態にしておきたい。 +% % \begin{macrocode} -\@onlypreamble\bxjs@pandoc@babel@ja -\def\bxjs@pandoc@babel@ja{% - \bxjs@cslet{ver@babel.sty}\@undefined - \edef\bxjs@next{% - \noexpand\RequirePackage[\bxjs@babel@options,english]{babel}[]% - }\bxjs@next - \if j\jsEngine - \RequirePackage[main=japanese]{pxbabel}[]% - \else - \RequirePackage{bxorigcapt}[]% +\ifjsWitheTeX +% \end{macrocode} +% |filehook| の機能を用いて |japanese.ldf| の読込にフックを仕込む。 +% \begin{macrocode} +\AtBeginOfFile{japanese.ldf}{\bxjs@begin@japanese@ldf@hook} +\def\bxjs@begin@japanese@ldf@hook{% + \let\bxjs@begin@japanese@ldf@hook\relax + \let\bxjs@save@ProvidesLanguage\ProvidesLanguage + \let\bxjs@save@LdfInit\LdfInit + \def\ProvidesLanguage##1[##2]{\bxjs@do@japanese@ldf{##2}}% + \def\LdfInit##1##2{\bxjs@do@japanese@ldf{0000/00/00}}} +% \end{macrocode} +% バージョンを判定する部分。 +% \Note |\LdfInit| にも細工を入れている理由は、初期の |japanese.ldf| +% には |\ProvidesLanguage| が記述されていないため。 +% \begin{macrocode} +\def\bxjs@do@japanese@ldf#1{\bxjs@do@japanese@ldf@a#1\@nil} +\def\bxjs@do@japanese@ldf@a#1/#2/#3#4#5\@nil{% + \let\LdfInit\bxjs@save@LdfInit + \ClassInfo\bxjs@clsname + {Release date of japanese.ldf is:\MessageBreak + \@spaces #1/#2/#3#4\@gobble}% + \ifnum#1#2#3#4<20201206 % v3.0 + \let\bxjs@japanese@ldf@skipped=t\csuse{endinput}% + \fi} +\AtEndOfFile{japanese.ldf}{\bxjs@end@japanese@ldf@hook} +\def\bxjs@end@japanese@ldf@hook{% + \let\bxjs@end@japanese@ldf@hook\relax + \let\ProvidesLanguage\bxjs@save@ProvidesLanguage + \let\LdfInit\bxjs@save@LdfInit + \ifx t\bxjs@japanese@ldf@skipped + \ClassWarningNoLine\bxjs@clsname + {Loading japanese.ldf is skipped}% +% \end{macrocode} +% ダミーの言語定義。 +% \begin{macrocode} + \ifundef\l@japanese{\chardef\l@japanese\z@}{}% + \let\datejapanese\@empty\let\captionsjapanese\@empty + \let\extrasjapanese\@empty\let\noextrasjapanese\@empty + \main@language{japanese}% \fi} +\g@addto@macro\bxjs@begin@document@hook{% + \let\bxjs@begin@japanese@ldf@hook\relax + \let\bxjs@end@japanese@ldf@hook\relax} +\fi % \end{macrocode} -% \end{macro} % % lang対策はこれで終わり。 % @@ -11247,6 +11387,8 @@ % \subsection{hyperref対策} % % |hyperref| の |unicode| オプションの固定を行う。 +% \TODO |hyperref| の開発状況を鑑みる限り、|unicode| オプションの固定処理 +% は“危険”だと思われるので、可能ならば廃止したい。 % \begin{macrocode} \if j\jsEngine \bxjs@fix@hyperref@unicode{false} diff --git a/language/japanese/BX/bxjscls/bxjscls.pdf b/language/japanese/BX/bxjscls/bxjscls.pdf index e5ff5eccf5..1bd65482cd 100644 Binary files a/language/japanese/BX/bxjscls/bxjscls.pdf and b/language/japanese/BX/bxjscls/bxjscls.pdf differ diff --git a/macros/generic/soul/README.md b/macros/generic/soul/README.md index 02e0a073d2..83d39008f5 100644 --- a/macros/generic/soul/README.md +++ b/macros/generic/soul/README.md @@ -2,7 +2,7 @@ soul package for latex and plain -Version: 2023-02-18 v3.0 +Version: 2023-06-14 v3.1 Provides hyphenable spacing out (letterspacing), underlining, striking out, etc., using the TEX hyphenation algorithm to find the proper hyphens automatically. The package also provides a mechanism that can be used to implement similar tasks, that have to treat text syllable by syllable. This is shown in two examples. diff --git a/macros/generic/soul/soul-ori.dtx b/macros/generic/soul/soul-ori.dtx index 861c0843bf..1b218f3822 100644 --- a/macros/generic/soul/soul-ori.dtx +++ b/macros/generic/soul/soul-ori.dtx @@ -2271,7 +2271,7 @@ \else \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{soul-ori} - [2023-02-18 v3.0 letterspacing/underlining (mf)] + [2023-06-14 v3.1 letterspacing/underlining (mf)] \newfont\SOUL@tt{ectt1000} \newcommand*\sodef{} \newcommand*\resetso{} @@ -3884,7 +3884,7 @@ % and the given material afterwards. This is needed for highlighting, % but gives less than optimal results for colored overstriking, which, % however, will hardly ever be used, anyway. -% +% \changes{v3.1}{2023/05/04}{added a kern after leaders to guard against an unskip, issue \#8} % \begin{macrocode} \def\SOUL@ulunderline#1{{% \setbox\z@\hbox{#1}% @@ -3894,7 +3894,7 @@ \rlap{% \null \kern-\SOUL@dimeni - \SOUL@ulcolor{\SOUL@ulleaders\hskip\SOUL@dimen}% + \SOUL@ulcolor{\SOUL@ulleaders\hskip\SOUL@dimen\kern\z@}% }% \unhcopy\z@ }} @@ -3960,13 +3960,14 @@ % The \cs{\null} prevents a nasty gap in |\textfrak| |{a \textswab{b}}|, % while it doesn't seem to hurt in all other cases. I didn't investigate % this. -% +% \changes{v3.1}{2023/05/04}{added a kern after leaders to guard against an unskip, issue \#8} % \begin{macrocode} \def\SOUL@uleveryspace#1{% \SOUL@ulcolor{% #1% \SOUL@ulleaders \hskip\spaceskip + \kern\z@ }% \null } diff --git a/macros/generic/soul/soul-ori.pdf b/macros/generic/soul/soul-ori.pdf index d8673fc20d..a5e03b8847 100644 Binary files a/macros/generic/soul/soul-ori.pdf and b/macros/generic/soul/soul-ori.pdf differ diff --git a/macros/generic/soul/soul.dtx b/macros/generic/soul/soul.dtx index 7bc4bb1ba6..e979f30dc2 100644 --- a/macros/generic/soul/soul.dtx +++ b/macros/generic/soul/soul.dtx @@ -1,7 +1,7 @@ % \iffalse meta-comment % % File: soul.dtx -% Version: 2023-02-18 v3.0 +% Version: 2023-06-14 v3.1 % Info: Permit use of UTF-8 characters in soul % % Copyright (C) 2007 Heiko Oberdiek @@ -49,7 +49,7 @@ % \fi % % \title{The \xpackage{soul} package} -% \date{2023-02-18 v3.0} +% \date{2023-06-14 v3.1} % \author{Heiko Oberdiek\thanks % {Please report any issues at \url{https://github.com/ho-tex/soul/issues}}} % @@ -131,7 +131,7 @@ %<*soulutf8> \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{soulutf8}% - [2023-02-18 v3.0 Permit use of UTF-8 characters in soul (HO)]% + [2023-06-14 v3.1 Permit use of UTF-8 characters in soul (HO)]% \PackageWarning{soulutf8} {This package is obsolete,\MessageBreak use the soul package directly. \MessageBreak @@ -217,7 +217,7 @@ \fi \expandafter\x\csname ver@soul.sty\endcsname \ProvidesPackage{soul}% - [2023-02-18 v3.0 Permit use of UTF-8 characters in soul (HO)]% + [2023-06-14 v3.1 Permit use of UTF-8 characters in soul (HO)]% % \end{macrocode} % % \subsection{Catcodes} @@ -1136,6 +1136,9 @@ % \begin{Version}{2023-02-18 v3.0} % \item merged soulutf8 and the original soul into one package. % \end{Version} +% \begin{Version}{2023-06-14 v3.1} +% \item Updated +% \end{Version} % \end{History} % % \PrintIndex diff --git a/macros/generic/soul/soul.pdf b/macros/generic/soul/soul.pdf index 0f5eab35cd..6ed458e0a6 100644 Binary files a/macros/generic/soul/soul.pdf and b/macros/generic/soul/soul.pdf differ diff --git a/macros/latex/contrib/quizztex/README.md b/macros/latex/contrib/quizztex/README.md index e2932aecd6..a155eec3f3 100644 --- a/macros/latex/contrib/quizztex/README.md +++ b/macros/latex/contrib/quizztex/README.md @@ -1,6 +1,6 @@ -QuizzTex is a package to create quizz with 'Who Wants to Be a Millionaire ?' design for example. +QuizzTex is a package to create quizzes with 'Who Wants to Be a Millionaire ?' design for example. ---------------------------------------------------------------------------------------------------------------- -QuizzTex est un package pour présenter des quizz à la manière de 'Qui veut gagner des Millions ?' par exemple. +QuizzTex est un package pour présenter des quizzes à la manière de 'Qui veut gagner des Millions ?' par exemple. ---------------------------------------------------------------------------------------------------------------- Author.......: Cédric Pierquet email........: cpierquet@outlook.fr diff --git a/macros/latex/contrib/quizztex/doc/quizztex-doc-fr.pdf b/macros/latex/contrib/quizztex/doc/quizztex-doc-fr.pdf index 0efb41dbda..ba6fe2362c 100644 Binary files a/macros/latex/contrib/quizztex/doc/quizztex-doc-fr.pdf and b/macros/latex/contrib/quizztex/doc/quizztex-doc-fr.pdf differ diff --git a/macros/latex/contrib/quizztex/doc/quizztex-doc-fr.tex b/macros/latex/contrib/quizztex/doc/quizztex-doc-fr.tex index 4fdbee28ab..07f784376b 100644 --- a/macros/latex/contrib/quizztex/doc/quizztex-doc-fr.tex +++ b/macros/latex/contrib/quizztex/doc/quizztex-doc-fr.tex @@ -4,8 +4,8 @@ \documentclass[french,a4paper,11pt]{article} \usepackage[margin=2cm,includefoot]{geometry} -\def\TPversion{0.1.0} -\def\TPdate{13 juin 2023} +\def\TPversion{0.1.1} +\def\TPdate{14 juin 2023} \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{amsmath,amssymb} @@ -88,7 +88,7 @@ morekeywords={\QuizzMillions,\QuizzPrendrePlace},% keywordstyle={\color{green!50!black}},% classoffset=3,% - morekeywords={Largeur,Marge,Hauteurs,Couleur,CouleurFond,CouleurLettre,CouleurTexte,Bonne,Mauvaise,Choix,CoulBonne,CoulChoix,CoulMauvaise,Affichage,EspacementV,OffsetV,Decorations,AffChoix,Jokers,AffJokers,CodeAvant,Offset,Theme,Type,Effet},% + morekeywords={Largeur,Marge,Hauteurs,Couleur,CouleurFond,CouleurLettre,CouleurTexte,Bonne,Mauvaise,Choix,CoulBonne,CoulChoix,CoulMauvaise,Affichage,EspacementV,OffsetV,Decorations,AffChoix,Jokers,AffJokers,CodeAvant,Offset,Theme,Type,Effet,PositionJokers,Points},% keywordstyle={\color{orange}} },% #1 @@ -169,16 +169,14 @@ \vspace{1cm} -\hfill\QuizzPrendrePlace[Largeur=13cm,Choix=C,Affichage=Choix] +\hfill\QuizzPrendrePlace[Largeur=13cm,Choix=C,Affichage=Choix,CodeAvant={\large\bfseries\sffamily},Points=3/24] {Quelle partie de l'œuf dois-je cuisiner pour préparer avec succès une mayonnaise ?} {Le violet} {Le bleu} {Le jaune} {Le rouge}\hfill~ - - \vspace{0.5cm} -%\hfill{}\textit{Merci à Denis Bitouzé et à Gilles Le Bourhis pour leurs retours et idées !} +\hfill{}\textit{Merci à Patrick Bideault pour ses retours et conseils !} \smallskip @@ -207,6 +205,10 @@ \section{Historique} +\verb|v0.1.1|~:~~~~Amélioration de la gestion des hauteurs + modification de la clé \Cle{CodeAvant}. + +\verb| |~:~~~~Ajout d'une clé \Cle{PositionJokers}. + \verb|v0.1.0|~:~~~~Version initiale. \newpage @@ -317,6 +319,10 @@ Le code se charge d'ajuster la hauteur des cartouches, et la hauteur des cartouc \smallskip Il est cependant possible de préciser une hauteur manuelle globale, ou une hauteur pour le cartouche \textit{Question} et une hauteur pour les cartouches \textit{Réponses}. + +\smallskip + +\cmaj{0.1.1} Désormais la position par défaut des \textsf{Jokers} est centrée en-dessous des cartouches, mais celle-ci peut être modifiée (on peut également les enlever !). \end{importantblock} \subsection{Couleurs prédéfinies} @@ -324,7 +330,7 @@ Il est cependant possible de préciser une hauteur manuelle globale, ou une haut \begin{tipblock} Les couleurs (HTML) définies et utilisées par le package \packagetex!quizztex! et pour l'environnement \motcletex!\QuizzMillions! sont : -\begin{itemize} +\begin{itemize}[leftmargin=*] \item \verb!\definecolor{ColorFondWWTBAM}{HTML}{5E57A4} ! : \textcolor{ColorFondWWTBAM}{\textsf{\textbf{Fond par défaut}}} \item \verb!\definecolor{ColorBonneWWTBAM}{HTML}{0AC759} ! : \textcolor{ColorBonneWWTBAM}{\textsf{\textbf{Fond de la bonne réponse}}} \item \verb!\definecolor{ColorMauvaiseWWTBAM}{HTML}{F1901C}! : \textcolor{ColorMauvaiseWWTBAM}{\textsf{\textbf{Fond de la mauvaise réponse}}} @@ -346,7 +352,7 @@ L'utilisateur qui souhaite modifier les couleurs devra être attentif à la coor Le premier argument, optionnel et entre \texttt{[...]}, propose les \Cle{clés} suivantes : \begin{itemize} - \item \Cle{Largeur} := largeur (avec unité) sans les Jokers, du Quizz ; \hfill{}défaut : \Cle{14cm} + \item \Cle{Largeur} := largeur (avec unité) totale avec Jokers éventuels, du Quizz ; \hfill{}défaut : \Cle{14cm} \item \Cle{Marge} := marge gauche/droite (avec unité) ; \hfill{}défaut : \Cle{0.5cm} \item \Cle{Hauteurs} := hauteurs des cartouches (\motcletex!auto! ou \motcletex!global! ou \motcletex!Quest/Réponses!) ; @@ -368,7 +374,10 @@ Le premier argument, optionnel et entre \texttt{[...]}, propose les \Cle{clés} \item \Cle{AffChoix} := réponses à afficher (pour le 50/50 par exemple) ; \hfill{}défaut \Cle{ABCD} \item \Cle{Jokers} := booléen pour afficher les Jokers ; \hfill{}défaut \Cle{true} \item \Cle{AffJokers} : = Jokers à marquer comme disponibles ; \hfill{}défaut \Cle{50.TEL.PUB} - \item \Cle{CodeAvant} : = code à appliqer à tous les cartouches ; \hfill{}défaut \Cle{\textbackslash bfseries\textbackslash large\textbackslash sffamily} + \item \cmaj{0.1.1} \Cle{PositionJokers} : = position, parmi \motcletex!gauche/centre/droite!, pour les Jokers ; + + \hfill{}défaut \Cle{centre} + \item \cmaj{0.1.1} \Cle{CodeAvant} : = code à appliquer à tous les cartouches ; \hfill{}défaut \Cle{} \item \Cle{Effet} := booléen pour utiliser un petit effet de dégradé.\hfill{}défaut \Cle{true} \end{itemize} \vspace*{-\baselineskip}\leavevmode @@ -389,8 +398,8 @@ Les cinq arguments obligatoires correspondent à la question et aux réponses, s \end{DemoCode} \begin{DemoCode}[] -%hauteurs manuelles -\QuizzMillions[Hauteurs=2cm/1.5cm] +%hauteurs manuelles, police modifiée, Jokers à droite +\QuizzMillions[Hauteurs=2cm/1.5cm,CodeAvant=\large\bfseries\sffamily, PositionJokers=droite] {Quelle partie de l'\oe{}uf dois-je cuisiner pour préparer avec succès une mayonnaise ?} {Le violet} {Le bleu} {Le jaune} {Le rouge} @@ -429,8 +438,8 @@ Les cinq arguments obligatoires correspondent à la question et aux réponses, s \end{DemoCode} \begin{DemoCode}[] -%avec jokers déjà utlisés et 50:50 -\QuizzMillions[AffJokers=PUB.TEL,AffChoix=AC] +%avec Jokers (à gauche) déjà utlisés et 50:50 +\QuizzMillions[AffJokers=PUB.TEL,AffChoix=AC,PositionJokers=gauche] {Quelle partie de l'\oe{}uf dois-je cuisiner pour préparer avec succès une mayonnaise ?} {Le violet} {Le bleu} {Le jaune} {Le rouge} @@ -438,7 +447,7 @@ Les cinq arguments obligatoires correspondent à la question et aux réponses, s \begin{DemoCode}[] %avec couleurs modifiées et police modifiée -\QuizzMillions[Couleur=black,CouleurFond=gray,CodeAvant={\LARGE\ttfamily}] +\QuizzMillions[Couleur=black,CouleurFond=gray,CodeAvant={\LARGE\ttfamily}, AffJokers={}] {On considère la fonction $\mathtt{f}$ définie sur $\mathbb{R}$ par $\mathtt{f(x)=2\,\text{e}^{2x}}$. On a :} {$\mathtt{f'(x)=4\,\text{e}^{2x}}$} {$\mathtt{f'(x)=2\,\text{e}^{2x}}$} @@ -490,6 +499,10 @@ Le code se charge d'ajuster la hauteur des cartouches, et la hauteur des cartouc \smallskip Il est cependant possible de préciser une hauteur manuelle globale, ou une hauteur pour le cartouche \textit{Question} et une hauteur pour les cartouches \textit{Réponses}. + +\smallskip + +La police pour le thème et le score est fixée (large/gras/sans serif). \end{importantblock} \subsection{Couleurs prédéfinies} @@ -497,7 +510,7 @@ Il est cependant possible de préciser une hauteur manuelle globale, ou une haut \begin{tipblock} Les couleurs (HTML) définies et utilisées par le package \packagetex!quizztex! et pour l'environnement \motcletex!\QuizzMillions! sont : -\begin{itemize} +\begin{itemize}[leftmargin=*] \item \verb!definecolor{ColorFondTLMVPSP}{HTML}{4E52E3} ! : \textcolor{ColorFondTLMVPSP}{\textsf{\textbf{Fond par défaut}}} \item \verb!\definecolor{ColorBonneTLMVPSP}{HTML}{00E519} ! : \textcolor{ColorBonneTLMVPSP}{\textsf{\textbf{Fond de la bonne réponse}}} \item \verb!\definecolor{ColorMauvaiseTLMVPSP}{HTML}{FF9F3F}! : \textcolor{ColorMauvaiseTLMVPSP}{\textsf{\textbf{Fond de la mauvaise réponse}}} @@ -539,9 +552,12 @@ Le premier argument, optionnel et entre \texttt{[...]}, propose les \Cle{clés} \item \Cle{Affichage} := type d'affichage, parmi \motcletex!Choix/Sol/PropSol! ; \hfill{}défaut \Cle{} \item \Cle{EspacementV} := espacement vertical entre les cartouches ; \hfill{}défaut \Cle{8pt} %\item \Cle{OffsetV} := =6pt,% + \item \cmaj{0.1.1} \Cle{Points} := points dans le cartouche (si non vide) sous la forme \motcletex!haut/bas! ; + + \hfill{}défaut \Cle{} \item \Cle{Theme} := pour afficher un cartouche \textsf{Thème} sous le Quizz ; \hfill{}défaut \Cle{} \item \Cle{Type} = type de réponse, parmi \motcletex!Duo/Carre/Cash! ; \hfill{}défaut \Cle{Carre} - \item \Cle{CodeAvant} : = code à appliqer à tous les cartouches ; \hfill{}défaut \Cle{\textbackslash bfseries\textbackslash large\textbackslash sffamily} + \item \cmaj{0.1.1} \Cle{CodeAvant} : = code à appliquer à tous les cartouches ; \hfill{}défaut \Cle{} \item \Cle{Effet} := booléen pour utiliser un petit effet de dégradé.\hfill{}défaut \Cle{true} \end{itemize} \vspace*{-\baselineskip}\leavevmode @@ -562,8 +578,8 @@ Les cinq arguments obligatoires correspondent à la question et aux réponses, s \end{DemoCode} \begin{DemoCode}[] -%hauteurs manuelles, avec thème -\QuizzPrendrePlace[Hauteurs=2cm/1.5cm,Theme={Cuisine}] +%hauteurs manuelles, avec thème et police modifiée +\QuizzPrendrePlace[Hauteurs=2cm/1.5cm,Theme={Cuisine}, CodeAvant=\large\bfseries\sffamily] {Quelle partie de l'\oe{}uf dois-je cuisiner pour préparer avec succès une mayonnaise ?} {Le violet} {Le bleu} {Le jaune} {Le rouge} @@ -602,8 +618,8 @@ Les cinq arguments obligatoires correspondent à la question et aux réponses, s \end{DemoCode} \begin{DemoCode}[] -%avec couleurs modifiées et police modifiée -\QuizzPrendrePlace[Couleur=black,CouleurFond=gray,CodeAvant={\LARGE\ttfamily}, Theme={Cuisine}] +%avec couleurs modifiées et police modifiée et points +\QuizzPrendrePlace[Couleur=black,CouleurFond=gray,CodeAvant={\LARGE\ttfamily}, Theme={Cuisine},Points=12/26] {On considère la fonction $\mathtt{f}$ définie sur $\mathbb{R}$ par $\mathtt{f(x)=2\,\text{e}^{2x}}$. On a :} {$\mathtt{f'(x)=4\,\text{e}^{2x}}$} {$\mathtt{f'(x)=2\,\text{e}^{2x}}$} diff --git a/macros/latex/contrib/quizztex/tex/quizztex.sty b/macros/latex/contrib/quizztex/tex/quizztex.sty index e6079c5cf8..e5e42b9454 100644 --- a/macros/latex/contrib/quizztex/tex/quizztex.sty +++ b/macros/latex/contrib/quizztex/tex/quizztex.sty @@ -4,7 +4,8 @@ % : 'Tout le monde veut prendre sa place' is a Tradematk from Air Productions. \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{quizztex}[2023/06/13 0.1.0 Construire des quizz 'comme dans les jeux' ] +\ProvidesPackage{quizztex}[2023/06/14 0.1.1 Construire des quizz 'comme dans les jeux' ] +%0.1.1 Amélioration de la gestion des réponses dans WWTBAM + Position des Jokers (cc P. Bideault ;-)) %0.1.0 Version initiale %------Packages utiles @@ -87,7 +88,8 @@ OffsetV=\setlength{\OffsetVwwtbam}{#1},% AffChoix=\def\AffChoixWWTBAM{#1},% AffJokers=\def\AffJokersWWTBAM{#1},% - CodeAvant=\def\CodeAvantWWTBAM{#1} + CodeAvant=\def\CodeAvantWWTBAM{#1},% + PositionJokers=\def\PosJokersWWTBAM{#1} } \setKVdefault[wwtbam]{% @@ -111,8 +113,14 @@ AffChoix=ABCD,% Jokers=true,% AffJokers=50.TEL.PUB,% - CodeAvant=\bfseries\large\sffamily,% - Effet=true + %CodeAvant=\bfseries\large\sffamily,% + CodeAvant={},% + Effet=true,% + PositionJokers=centre +} + +\NewDocumentCommand\LettreChoixMillions{ m }{% + \textcolor{\CouleurLettreWWTBAM}{\large\sffamily\bfseries{\vphantom{Q}#1}\,:}% } \NewDocumentCommand\QuizzMillions{ O{} m m m m m }{%clés + questions + 4 réponses @@ -186,7 +194,14 @@ %dimensions de base \ifboolKV[wwtbam]{Jokers} {% - \setlength{\largeurwwtbam}{\largeurwwtbam-1.4cm}% + \IfStrEq{\PosJokersWWTBAM}{droite}% + {% + \addtolength{\largeurwwtbam}{-1.4cm}% + }{}% + \IfStrEq{\PosJokersWWTBAM}{gauche}% + {% + \addtolength{\largeurwwtbam}{-1.4cm}% + }{}% }% {}% \setlength{\largeurboitequestionwwtbam}{\largeurwwtbam-2\margeexterieurewwtbam-15mm}% @@ -199,13 +214,13 @@ %BlocQuestion \sbox{\boitequestionwwtbam}{\parbox{\the\texteboitequestionwwtbam}{\centering\CodeAvantWWTBAM #2}}\settoboxtotalheight{\hauteurboitequestionwwtbam}{\boitequestionwwtbam}% %BlocRépA - \sbox{\boitereponseawwtbam}{\parbox{\the\texteboitereponsewwtbam}{\CodeAvantWWTBAM #3}}\settoboxtotalheight{\hauteurboitereponseawwtbam}{\boitereponseawwtbam}% + \sbox{\boitereponseawwtbam}{\parbox{\the\texteboitereponsewwtbam}{\LettreChoixMillions{A} \CodeAvantWWTBAM #3}}\settoboxtotalheight{\hauteurboitereponseawwtbam}{\boitereponseawwtbam}% %BlocRépB - \sbox{\boitereponsebwwtbam}{\parbox{\the\texteboitereponsewwtbam}{\CodeAvantWWTBAM #4}}\settoboxtotalheight{\hauteurboitereponsebwwtbam}{\boitereponsebwwtbam}% + \sbox{\boitereponsebwwtbam}{\parbox{\the\texteboitereponsewwtbam}{\LettreChoixMillions{B} \CodeAvantWWTBAM #4}}\settoboxtotalheight{\hauteurboitereponsebwwtbam}{\boitereponsebwwtbam}% %BlocRépC - \sbox{\boitereponsecwwtbam}{\parbox{\the\texteboitereponsewwtbam}{\CodeAvantWWTBAM #5}}\settoboxtotalheight{\hauteurboitereponsecwwtbam}{\boitereponsecwwtbam}% + \sbox{\boitereponsecwwtbam}{\parbox{\the\texteboitereponsewwtbam}{\LettreChoixMillions{C} \CodeAvantWWTBAM #5}}\settoboxtotalheight{\hauteurboitereponsecwwtbam}{\boitereponsecwwtbam}% %BlocRépD - \sbox{\boitereponsedwwtbam}{\parbox{\the\texteboitereponsewwtbam}{\CodeAvantWWTBAM #6}}\settoboxtotalheight{\hauteurboitereponsedwwtbam}{\boitereponsedwwtbam}% + \sbox{\boitereponsedwwtbam}{\parbox{\the\texteboitereponsewwtbam}{\LettreChoixMillions{D} \CodeAvantWWTBAM #6}}\settoboxtotalheight{\hauteurboitereponsedwwtbam}{\boitereponsedwwtbam}% %hauteurréponses \pgfmathsetlength{\hauteurmaxboitereponsewwtbam}{max(\hauteurboitereponseawwtbam,\hauteurboitereponsebwwtbam,\hauteurboitereponsecwwtbam,\hauteurboitereponsedwwtbam)}% %hauteur des boîtes @@ -216,9 +231,22 @@ \setlength{\niveauABwwtbam}{0.5\HauteurQuest+0.5\HauteurReponse+\EspacementVwwtbam}% %Hrepcd \setlength{\niveauCDwwtbam}{0.5\HauteurQuest+1.5\HauteurReponse+2\EspacementVwwtbam}% - %Hjoker - \setlength{\HauteurNivJok}{0.5\niveauABwwtbam+0.5\niveauCDwwtbam}% - %hauteurquestion + %niveaujoker milieu + \IfStrEq{\PosJokersWWTBAM}{centre}% + {% + \setlength{\HauteurNivJok}{\niveauCDwwtbam+0.5\HauteurReponse+0.5\EspacementVwwtbam+0.35cm}% + }% + {}% + \IfStrEq{\PosJokersWWTBAM}{droite}% + {% + \setlength{\HauteurNivJok}{0.5\niveauABwwtbam+0.5\niveauCDwwtbam}% + }% + {}% + \IfStrEq{\PosJokersWWTBAM}{gauche}% + {% + \setlength{\HauteurNivJok}{0.5\niveauABwwtbam+0.5\niveauCDwwtbam}% + }% + {}% }% {% \IfSubStr{\HauteursWWTBAM}{/}% @@ -230,8 +258,21 @@ \setlength{\niveauABwwtbam}{0.5\HauteurQuest+0.5\HauteurReponse+\EspacementVwwtbam}% %Hrepcd \setlength{\niveauCDwwtbam}{0.5\HauteurQuest+1.5\HauteurReponse+2\EspacementVwwtbam}% - %Hjoker - \setlength{\HauteurNivJok}{0.5\niveauABwwtbam+0.5\niveauCDwwtbam}% + \IfStrEq{\PosJokersWWTBAM}{centre}% + {% + \setlength{\HauteurNivJok}{\niveauCDwwtbam+0.5\HauteurReponse+0.5\EspacementVwwtbam+0.35cm}% + }% + {}% + \IfStrEq{\PosJokersWWTBAM}{droite}% + {% + \setlength{\HauteurNivJok}{0.5\niveauABwwtbam+0.5\niveauCDwwtbam}% + }% + {}% + \IfStrEq{\PosJokersWWTBAM}{gauche}% + {% + \setlength{\HauteurNivJok}{0.5\niveauABwwtbam+0.5\niveauCDwwtbam}% + }% + {}% }% \begin{tikzpicture} %styles @@ -244,6 +285,29 @@ \coordinate (CartoucheReponseB) at ({0.9cm},{-(\the\niveauABwwtbam)}) ;% \coordinate (CartoucheReponseC) at ({-0.5*\the\largeurwwtbam+\the\margeexterieurewwtbam+0.9cm},{-(\the\niveauCDwwtbam)}) ;% \coordinate (CartoucheReponseD) at ({0.9cm},{-(\the\niveauCDwwtbam)}) ; + \IfStrEq{\PosJokersWWTBAM}{centre}% + {% + \coordinate (CartoucheJokerTEL) at ({0},{-(\the\HauteurNivJok)}) ; + \coordinate (CartoucheJokerCC) at ({-1.15cm},{-(\the\HauteurNivJok)}) ; + \coordinate (CartoucheJokerPUB) at ({1.15cm},{-(\the\HauteurNivJok)}) ; + }% + {}% + \IfStrEq{\PosJokersWWTBAM}{droite}% + {% + \coordinate (CartoucheJokerTEL) at ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)}) ; + \coordinate (CartoucheJokerCC) at ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)+0.55cm}) ; + \coordinate (CartoucheJokerPUB) at ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)-0.55cm}) ; + + }% + {}% + \IfStrEq{\PosJokersWWTBAM}{gauche}% + {% + \coordinate (CartoucheJokerTEL) at ({-0.5*(\the\largeurwwtbam)-0.75cm},{-(\the\HauteurNivJok)}) ; + \coordinate (CartoucheJokerCC) at ({-0.5*(\the\largeurwwtbam)-0.75cm},{-(\the\HauteurNivJok)+0.55cm}) ; + \coordinate (CartoucheJokerPUB) at ({-0.5*(\the\largeurwwtbam)-0.75cm},{-(\the\HauteurNivJok)-0.55cm}) ; + + }% + {}% %test % \draw[red,fill=yellow] (CartoucheQuestion) circle[radius=2pt] node {question} ; % \draw[red,fill=yellow] (CartoucheReponseA) circle[radius=2pt] node {A} ; @@ -296,7 +360,7 @@ %labels réponses \IfSubStr{\AffChoixWWTBAM}{A} {% - \draw (CartoucheReponseA) node[StyleCourtoucheReponse] {\raisebox{-0.05em}{\textcolor{\CouleurLettreWWTBAM}{\large\sffamily\bfseries\vphantom{Q}A\,:}} {\CodeAvantWWTBAM #3}} ;% + \draw (CartoucheReponseA) node[StyleCourtoucheReponse] {\LettreChoixMillions{A} \CodeAvantWWTBAM #3} ;% \ifboolKV[wwtbam]{Decorations}% {% \node[StyleDecoration] at ($(CartoucheReponseA)+(-0.25,0)$) {} ;% @@ -306,7 +370,7 @@ {}% \IfSubStr{\AffChoixWWTBAM}{B} {% - \draw (CartoucheReponseB) node[StyleCourtoucheReponse] {\raisebox{-0.05em}{\textcolor{\CouleurLettreWWTBAM}{\large\sffamily\bfseries\vphantom{Q}B\,:}} {\CodeAvantWWTBAM #4}} ; + \draw (CartoucheReponseB) node[StyleCourtoucheReponse] {\LettreChoixMillions{B} \CodeAvantWWTBAM #4} ; \ifboolKV[wwtbam]{Decorations} {% \node[StyleDecoration] at ($(CartoucheReponseB)+(-0.25,0)$) {} ; @@ -316,7 +380,7 @@ {}% \IfSubStr{\AffChoixWWTBAM}{C} {% - \draw (CartoucheReponseC) node[StyleCourtoucheReponse] {\raisebox{-0.05em}{\textcolor{\CouleurLettreWWTBAM}{\large\sffamily\bfseries\vphantom{Q}C\,:}} {\CodeAvantWWTBAM #5}} ; + \draw (CartoucheReponseC) node[StyleCourtoucheReponse] {\LettreChoixMillions{C} \CodeAvantWWTBAM #5} ; \ifboolKV[wwtbam]{Decorations} {% \node[StyleDecoration] at ($(CartoucheReponseC)+(-0.25,0)$) {} ; @@ -326,7 +390,7 @@ {}% \IfSubStr{\AffChoixWWTBAM}{D} {% - \draw (CartoucheReponseD) node[StyleCourtoucheReponse] {\raisebox{-0.05em}{\textcolor{\CouleurLettreWWTBAM}{\large\sffamily\bfseries\vphantom{Q}D\,:}} {\CodeAvantWWTBAM #6}} ; + \draw (CartoucheReponseD) node[StyleCourtoucheReponse] {\LettreChoixMillions{D} \CodeAvantWWTBAM #6} ; \ifboolKV[wwtbam]{Decorations} {% \node[StyleDecoration] at ($(CartoucheReponseD)+(-0.25,0)$) {} ; @@ -340,55 +404,55 @@ %50/50 \ifboolKV[wwtbam]{Effet} {% - \filldraw[draw=\CouleurWWTBAM,thick,shading=axis,left color=\CouleurFondWWTBAM!90!black,right color=\CouleurFondWWTBAM!75,shading angle=45] ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)+0.55cm}) ellipse (0.65cm and 0.35cm) ; + \filldraw[draw=\CouleurWWTBAM,thick,shading=axis,left color=\CouleurFondWWTBAM!90!black,right color=\CouleurFondWWTBAM!75,shading angle=45] (CartoucheJokerCC) ellipse (0.65cm and 0.35cm) ; }% {% - \draw[\CouleurWWTBAM,thick,fill=\CouleurFondDWWTBAM] ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)+0.55cm}) ellipse (0.65cm and 0.35cm) ; + \draw[\CouleurWWTBAM,thick,fill=\CouleurFondDWWTBAM] (CartoucheJokerCC) ellipse (0.65cm and 0.35cm) ; }% \begin{scope} - \clip ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)+0.55cm}) ellipse (0.65cm and 0.35cm) ; - \draw ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)+0.55cm}) node[font=\bfseries\sffamily,\CouleurTexteWWTBAM] {50:50} ; + \clip (CartoucheJokerCC) ellipse (0.65cm and 0.35cm) ; + \draw (CartoucheJokerCC) node[font=\bfseries\sffamily,\CouleurTexteWWTBAM] {50:50} ; \IfSubStr{\AffJokersWWTBAM}{50}% {}% {% - \draw[ultra thick,red] ($({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)+0.55cm})+(-0.65,0.35)$)--++(1.3,-0.7) ; - \draw[ultra thick,red] ($({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)+0.55cm})+(-0.65,-0.35)$)--++(1.3,0.7) ; + \draw[ultra thick,red] ($(CartoucheJokerCC)+(-0.65,0.35)$)--++(1.3,-0.7) ; + \draw[ultra thick,red] ($(CartoucheJokerCC)+(-0.65,-0.35)$)--++(1.3,0.7) ; }% \end{scope} %appel \ifboolKV[wwtbam]{Effet} {% - \filldraw[draw=\CouleurWWTBAM,thick,shading=axis,left color=\CouleurFondWWTBAM!90!black,right color=\CouleurFondWWTBAM!75,shading angle=45] ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)}) ellipse (0.65cm and 0.35cm) ; + \filldraw[draw=\CouleurWWTBAM,thick,shading=axis,left color=\CouleurFondWWTBAM!90!black,right color=\CouleurFondWWTBAM!75,shading angle=45] (CartoucheJokerTEL) ellipse (0.65cm and 0.35cm) ; }% {% - \draw[\CouleurWWTBAM,thick,fill=\CouleurFondDWWTBAM] ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)}) ellipse (0.65cm and 0.35cm) ; + \draw[\CouleurWWTBAM,thick,fill=\CouleurFondDWWTBAM] (CartoucheJokerTEL) ellipse (0.65cm and 0.35cm) ; }% \begin{scope} - \clip ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)}) ellipse (0.65cm and 0.35cm) ; - \draw ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)}) node[\CouleurTexteWWTBAM] {\faPhone} ; + \clip (CartoucheJokerTEL) ellipse (0.65cm and 0.35cm) ; + \draw (CartoucheJokerTEL) node[\CouleurTexteWWTBAM] {\faPhone} ; \IfSubStr{\AffJokersWWTBAM}{TEL}% {}% {% - \draw[ultra thick,red] ($({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)})+(-0.65,0.35)$)--++(1.3,-0.7) ; - \draw[ultra thick,red] ($({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)})+(-0.65,-0.35)$)--++(1.3,0.7) ; + \draw[ultra thick,red] ($(CartoucheJokerTEL)+(-0.65,0.35)$)--++(1.3,-0.7) ; + \draw[ultra thick,red] ($(CartoucheJokerTEL)+(-0.65,-0.35)$)--++(1.3,0.7) ; }% \end{scope} %public \ifboolKV[wwtbam]{Effet} {% - \filldraw[draw=\CouleurWWTBAM,thick,shading=axis,left color=\CouleurFondWWTBAM!90!black,right color=\CouleurFondWWTBAM!75,shading angle=45] ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)-0.55cm}) ellipse (0.65cm and 0.35cm) ; + \filldraw[draw=\CouleurWWTBAM,thick,shading=axis,left color=\CouleurFondWWTBAM!90!black,right color=\CouleurFondWWTBAM!75,shading angle=45] (CartoucheJokerPUB) ellipse (0.65cm and 0.35cm) ; }% {% - \draw[\CouleurWWTBAM,thick,fill=\CouleurFondDWWTBAM] ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)-0.55cm}) ellipse (0.65cm and 0.35cm) ; + \draw[\CouleurWWTBAM,thick,fill=\CouleurFondDWWTBAM] (CartoucheJokerPUB) ellipse (0.65cm and 0.35cm) ; }% \begin{scope} - \clip ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)-0.55cm}) ellipse (0.65cm and 0.35cm) ; - \draw ({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)-0.55cm}) node[\CouleurTexteWWTBAM] {\faDiagnoses\!\!\raisebox{-0.2em}{\faDiagnoses}\!\!\faDiagnoses} ; + \clip (CartoucheJokerPUB) ellipse (0.65cm and 0.35cm) ; + \draw (CartoucheJokerPUB) node[\CouleurTexteWWTBAM] {\faDiagnoses\!\!\raisebox{-0.2em}{\faDiagnoses}\!\!\faDiagnoses} ; \IfSubStr{\AffJokersWWTBAM}{PUB}% {}% {% - \draw[ultra thick,red] ($({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)-0.55cm})+(-0.65,0.35)$)--++(1.3,-0.7) ; - \draw[ultra thick,red] ($({0.5*(\the\largeurwwtbam)+0.75cm},{-(\the\HauteurNivJok)-0.55cm})+(-0.65,-0.35)$)--++(1.3,0.7) ; + \draw[ultra thick,red] ($(CartoucheJokerPUB)+(-0.65,0.35)$)--++(1.3,-0.7) ; + \draw[ultra thick,red] ($(CartoucheJokerPUB)+(-0.65,-0.35)$)--++(1.3,0.7) ; }% \end{scope} }% @@ -466,7 +530,9 @@ Offset=\setlength{\OffsetVtlmvpsp}{#1},% CodeAvant=\def\CodeAvantTLMVPSP{#1},% Theme=\def\ThemeTLMVPSP{#1},% - Type=\def\TypeTLMVPSP{#1} + Type=\def\TypeTLMVPSP{#1},% + Points=\def\PointsTLMVPSP{#1},% + EchellePoints=\def\EchellePointsTLMVPSP{#1} } \setKVdefault[TLMVPSP]{% @@ -486,11 +552,13 @@ Cadre=false,% EspacementV=8pt,% Offset=6pt,% - CodeAvant=\bfseries,% + %CodeAvant=\bfseries\large\sffamily,% + CodeAvant={},% Theme={},% Type=Carre,% Effet=true,% - CodeAvant=\bfseries\large\sffamily + Points={},% + EchellePoints=1 } \NewDocumentCommand\QuizzPrendrePlace{ O{} m m m m m }{%clés + questions + 4 réponses @@ -726,8 +794,14 @@ {% \draw[rounded corners=3.5pt,thick,\CouleurTLMVPSP,opacity=0.25] ($({-0.5*(\the\LargeurTheme)},{(-0.5*(\the\HauteurTheme)-\the\HauteurNivTheme)})+(-1.25pt,-1.25pt)$) rectangle++ ($({\the\LargeurTheme},{\the\HauteurTheme})+(2.5pt,2.5pt)$) ; \draw[rounded corners=2pt,\CouleurTLMVPSP,thick,fill=white] ({-0.5*(\the\LargeurTheme)},{(-0.5*(\the\HauteurTheme)-\the\HauteurNivTheme)}) rectangle++ ({\the\LargeurTheme},{\the\HauteurTheme}) ; - \draw (0,{-\the\HauteurNivTheme}) node[text=\CouleurTLMVPSP] {\CodeAvantTLMVPSP\ThemeTLMVPSP} ; + \draw (0,{-\the\HauteurNivTheme}) node[text=\CouleurTLMVPSP,font=\bfseries\large\sffamily] {\ThemeTLMVPSP} ; }% + \IfSubStr{\PointsTLMVPSP}{/}% + {% + \StrCut{\PointsTLMVPSP}{/}{\PtsChallenger}{\PtsChampion}% + \draw ({-0.275*(\the\margemilieulmvpsp)},{\the\niveauCDtlmvpsp-0.5*(\the\HauteurReponse)+\the\margemilieulmvpsp-1pt}) node[inner sep=0pt,below right=2pt,text=\CouleurTexteTLMVPSP,font=\bfseries\large\sffamily,scale=\EchellePointsTLMVPSP] {\PtsChallenger} ; + \draw ({0.275*(\the\margemilieulmvpsp)},{\the\niveauCDtlmvpsp-0.5*(\the\HauteurReponse)+1pt}) node[inner sep=0pt,above left=2pt,text=\CouleurTexteTLMVPSP,font=\bfseries\large\sffamily,scale=\EchellePointsTLMVPSP] {\PtsChampion} ; + }{}% \end{tikzpicture}% } diff --git a/macros/latex/contrib/runcode/README b/macros/latex/contrib/runcode/README index 4b75754042..010d8f4484 100644 --- a/macros/latex/contrib/runcode/README +++ b/macros/latex/contrib/runcode/README @@ -1,4 +1,4 @@ -LaTeX Package: runcode 2023/01/18 v1.8 +LaTeX Package: runcode 2023/06/13 v1.9 ---------------------------------------- The runcode package enables the execution of source code (e.g., R, Julia, Matlab, shell, Python, etc.) and embed the results in the pdf file diff --git a/macros/latex/contrib/runcode/runcode.pdf b/macros/latex/contrib/runcode/runcode.pdf index 405f5a26fd..0a84593cf2 100644 Binary files a/macros/latex/contrib/runcode/runcode.pdf and b/macros/latex/contrib/runcode/runcode.pdf differ diff --git a/macros/latex/contrib/runcode/runcode.sty b/macros/latex/contrib/runcode/runcode.sty index ae859085b4..21e85f9908 100644 --- a/macros/latex/contrib/runcode/runcode.sty +++ b/macros/latex/contrib/runcode/runcode.sty @@ -4,7 +4,7 @@ % % This package is based on an ongoing work by Haim Bar and HaiYing Wang, and comments and questions are welcome! -\ProvidesPackage{runcode}[2023/01/18 runcode v1.8] +\ProvidesPackage{runcode}[2023/06/13 runcode v1.9] \newif\ifruncode % Change to \runcodefalse if you want to suspend code execution @@ -313,13 +313,17 @@ % \inln{Arg #1}{Arg #2}[Arg #3] is used to execute short source code % and embed resulting output. % Arg #1 is the executable program; -% Arg #2 is the source code -% Arg #3 is the type output (if skipped or with empty value the default type is +% Arg #2 is the source code; +% Arg #3 is the output file name (optional); +% Arg #4 is the type output (if skipped or with empty value the default type is % inline; vbox = verbatim in a box); -\NewDocumentCommand{\inln}{m m O{inline}}{\- - \stepcounter{codeOutput}\unskip - \unskip\setvalue{\tmpname}{\generated/\jobname_inln\thecodeOutput}\unskip\unskip\unskip +\NewDocumentCommand{\inln}{m m O{} O{inline}}{\- + \unskip + \ifthenelse{\isempty{#3}} + {\stepcounter{codeOutput}\unskip\unskip\setvalue{\tmpname}{\generated/\jobname_inln\thecodeOutput}\unskip\unskip\unskip} + {\unskip\setvalue{\tmpname}{\generated/#3}\unskip\unskip\unskip} + \unskip\unskip\unskip \ifruncode % cache mode - don't try to run the code, just get the previous results \IfBeginWith{#2}{```}{\ifruncode\immediate\write18{#1 > \tmpname.tex}\unskip\fi} {\newwrite\tempfile @@ -332,7 +336,7 @@ \fi % end cache mode \IfFileExists{\tmpname.tex} {\checkZeroBytes{\tmpname.tex}\unskip - \ifstrequal{#3}{vbox} + \ifstrequal{#4}{vbox} {\begin{tcolorbox} \ifminted\unskip \inputminted{text}{\tmpname.tex}\unskip @@ -354,7 +358,7 @@ {\runExtCode{#1}{#2}{#3}[#4]} } -\NewDocumentCommand{\inlnR}{O{python3 -c 'from talk2stat.talk2stat import client; client("./","R","\tmpname.txt")'} m O{inline}}{\IfBeginWith{#2}{```}{\inln{python3 -c 'from talk2stat.talk2stat import client;rc0="""#2""";rc0=rc0.lstrip("```").rstrip("```");client("./","R",f"```{rc0}```")'}{#2}[#3]}{\inln{#1}{#2}[#3]}} +\NewDocumentCommand{\inlnR}{O{python3 -c 'from talk2stat.talk2stat import client; client("./","R","\tmpname.txt")'} m O{} O{inline}}{\IfBeginWith{#2}{```}{\inln{python3 -c 'from talk2stat.talk2stat import client;rc0="""#2""";rc0=rc0.lstrip("```").rstrip("```");client("./","R",f"```{rc0}```")'}{#2}[#3][#4]}{\inln{#1}{#2}[#3][#4]}} \NewDocumentCommand{\runJulia}{O{python3 -c 'from talk2stat.talk2stat import client; client("./","julia","#2")'} m m O{}} { @@ -364,7 +368,7 @@ {\runExtCode{#1}{#2}{#3}[#4]} } -\NewDocumentCommand{\inlnJulia}{O{python3 -c 'from talk2stat.talk2stat import client; client("./","julia","\tmpname.txt")'} m O{inline}}{\IfBeginWith{#2}{```}{\inln{python3 -c 'from talk2stat.talk2stat import client;rc0="""#2""";rc0=rc0.lstrip("```").rstrip("```");client("./","julia",f"```{rc0}```")'}{#2}[#3]}{\inln{#1}{#2}[#3]}} +\NewDocumentCommand{\inlnJulia}{O{python3 -c 'from talk2stat.talk2stat import client; client("./","julia","\tmpname.txt")'} m O{} O{inline}}{\IfBeginWith{#2}{```}{\inln{python3 -c 'from talk2stat.talk2stat import client;rc0="""#2""";rc0=rc0.lstrip("```").rstrip("```");client("./","julia",f"```{rc0}```")'}{#2}[#3][#4]}{\inln{#1}{#2}[#3][#4]}} \NewDocumentCommand{\runMatlab}{O{python3 -c 'from talk2stat.talk2stat import client; client("./","matlab","#2")'} m m O{}} { @@ -374,7 +378,7 @@ {\runExtCode{#1}{#2}{#3}[#4]} } -\NewDocumentCommand{\inlnMatlab}{O{python3 -c 'from talk2stat.talk2stat import client; client("./","matlab","\tmpname.txt")'} m O{inline}}{\IfBeginWith{#2}{```}{\inln{python3 -c 'from talk2stat.talk2stat import client;rc0="""#2""";rc0=rc0.lstrip("```").rstrip("```");client("./","matlab",f"```{rc0}```")'}{#2}[#3]}{\inln{#1}{#2}[#3]}} +\NewDocumentCommand{\inlnMatlab}{O{python3 -c 'from talk2stat.talk2stat import client; client("./","matlab","\tmpname.txt")'} m O{} O{inline}}{\IfBeginWith{#2}{```}{\inln{python3 -c 'from talk2stat.talk2stat import client;rc0="""#2""";rc0=rc0.lstrip("```").rstrip("```");client("./","matlab",f"```{rc0}```")'}{#2}[#3][#4]}{\inln{#1}{#2}[#3][#4]}} \NewDocumentCommand{\runPython}{O{python3 -c 'from talk2stat.talk2stat import client; client("./","python","#2")'} m m O{}} @@ -385,7 +389,7 @@ {\runExtCode{#1}{#2}{#3}[#4]} } -\NewDocumentCommand{\inlnPython}{O{python3 -c 'from talk2stat.talk2stat import client; client("./","python","\tmpname.txt")'} m O{inline}}{\IfBeginWith{#2}{```}{\inln{python3 -c 'from talk2stat.talk2stat import client;rc0="""#2""";rc0=rc0.lstrip("```").rstrip("```");client("./","python",f"```{rc0}```")'}{#2}[#3]}{\inln{#1}{#2}[#3]}} +\NewDocumentCommand{\inlnPython}{O{python3 -c 'from talk2stat.talk2stat import client; client("./","python","\tmpname.txt")'} m O{} O{inline}}{\IfBeginWith{#2}{```}{\inln{python3 -c 'from talk2stat.talk2stat import client;rc0="""#2""";rc0=rc0.lstrip("```").rstrip("```");client("./","python",f"```{rc0}```")'}{#2}[#3][#4]}{\inln{#1}{#2}[#3][#4]}} %%%%%%%% diff --git a/macros/latex/contrib/runcode/runcode.tex b/macros/latex/contrib/runcode/runcode.tex index 8751d4234e..04c67fd5a2 100644 --- a/macros/latex/contrib/runcode/runcode.tex +++ b/macros/latex/contrib/runcode/runcode.tex @@ -1,4 +1,4 @@ -% LaTeX Package: runcode 2023/01/18 v1.8 +% LaTeX Package: runcode 2023/06/13 v1.9 % % Copyright (C) 2020-2022 by Haim Bar and HaiYing Wang % @@ -49,7 +49,7 @@ package’s github repository, at \url{https://github.com/Ossifragus/runcode}. \end{abstract} \section{Installation} -\label{sec:org1037dff} +\label{sec:org8c6be84} You can simply put the runcode.sty file in the \LaTeX{} project folder. The server mode requires the @@ -65,9 +65,9 @@ compiling a \LaTeX{} document. \section{Usage} -\label{sec:org325e4fc} +\label{sec:org951dfd0} \subsection{Load the package:} -\label{sec:orgbccebff} +\label{sec:org516e8f6} \begin{minted}[]{latex} \usepackage[options]{runcode} \end{minted} @@ -139,7 +139,7 @@ be customized with \texttt{\textbackslash{}tcbset}, \end{minted} \subsection{Basic commands:} -\label{sec:org88340c8} +\label{sec:org917f9dc} \begin{itemize} \item \texttt{\textbackslash{}runExtCode\{Arg1\}\{Arg2\}\{Arg3\}[Arg4]} runs an external code. @@ -182,14 +182,15 @@ value \texttt{vbox} \end{itemize} \end{itemize} -\item \texttt{\textbackslash{}inln\{Arg1\}\{Arg2\}[Arg3]} is designed for simple calculations; it runs +\item \texttt{\textbackslash{}inln\{Arg1\}\{Arg2\}[Arg3][Arg4]} is designed for simple calculations; it runs one command (or a short batch) and displays the output within the text. \begin{itemize} \item \texttt{Arg1} is the executable program or programming language. \item \texttt{Arg2} is the source code. -\item \texttt{Arg3} is the output type. +\item \texttt{Arg3} is the output file name (optional); +\item \texttt{Arg4} is the output type. \begin{itemize} \item \texttt{inline} (or skipped or with empty value) = embed result in text. \item \texttt{vbox} = verbatim in a box. @@ -198,7 +199,7 @@ text. \end{itemize} \subsection{Language specific shortcuts:} -\label{sec:org591e87e} +\label{sec:org7b04bad} \href{https://julialang.org/}{Julia} \begin{itemize} @@ -211,7 +212,7 @@ text. \item \texttt{Arg2}, \texttt{Arg3}, and \texttt{Arg4} have the same effects as those of the basic command \texttt{\textbackslash{}runExtCode}. \end{itemize} -\item \texttt{\textbackslash{}inlnJulia[Arg1]\{Arg2\}[Arg3]} runs \href{https://julialang.org/}{Julia} +\item \texttt{\textbackslash{}inlnJulia[Arg1]\{Arg2\}[Arg3][Arg4]} runs \href{https://julialang.org/}{Julia} source code (\texttt{Arg2}) and displays the output in line. \begin{itemize} \item \texttt{Arg1} is optional and uses the \href{https://julialang.org/}{Julia} @@ -221,7 +222,7 @@ If the \href{https://julialang.org/}{Julia} source code is wrapped between "\texttt{```}" on both sides (as in the markdown grammar), then it will be implemented directly; otherwise the code will be written to a file on the disk and then be called. -\item \texttt{Arg3} has the same effect as that of the basic command \texttt{\textbackslash{}inln}. +\item \texttt{Arg3} and \texttt{Arg4} have the same effects as those of the basic command \texttt{\textbackslash{}inln}. \end{itemize} \end{itemize} @@ -238,7 +239,7 @@ default. \item \texttt{Arg2}, \texttt{Arg3}, and \texttt{Arg4} have the same effects as those of the basic command \texttt{\textbackslash{}runExtCode}. \end{itemize} -\item \texttt{\textbackslash{}inlnMatLab[Arg1]\{Arg2\}[Arg3]} runs +\item \texttt{\textbackslash{}inlnMatLab[Arg1]\{Arg2\}[Arg3][Arg4]} runs \href{https://www.mathworks.com/products/matlab.html}{MatLab} source code (\texttt{Arg2}) and displays the output in line. \begin{itemize} @@ -252,7 +253,7 @@ code to run. If the code is wrapped between "```" on both sides (as in the markdown grammar), then it will be implemented directly; otherwise the code will be written to a file on the disk and then be called. -\item \texttt{Arg3} has the same effect as that of the basic command \texttt{\textbackslash{}inln}. +\item \texttt{Arg3} and \texttt{Arg4} have the same effects as those of the basic command \texttt{\textbackslash{}inln}. \end{itemize} \end{itemize} @@ -268,7 +269,7 @@ will be written to a file on the disk and then be called. \item \texttt{Arg2}, \texttt{Arg3}, and \texttt{Arg4} have the same effects as those of the basic command \texttt{\textbackslash{}runExtCode}. \end{itemize} -\item \texttt{\textbackslash{}inlnPython[Arg1]\{Arg2\}[Arg3]} runs +\item \texttt{\textbackslash{}inlnPython[Arg1]\{Arg2\}[Arg3][Arg4]} runs \href{https://www.python.org/}{Python} source code (\texttt{Arg2}) and displays the output in line. \begin{itemize} @@ -279,7 +280,7 @@ If the \href{https://www.python.org/}{Python} source code is wrapped between "```" on both sides (as in the markdown grammar), then it will be implemented directly; otherwise the code will be written to a file on the disk and then be called. -\item \texttt{Arg3} has the same effect as that of the basic command \texttt{\textbackslash{}inln}. +\item \texttt{Arg3} and \texttt{Arg4} have the same effects as those of the basic command \texttt{\textbackslash{}inln}. \end{itemize} \item \texttt{\textbackslash{}runPythonBatch[Arg1][Arg2]} runs an external \href{https://www.python.org/}{Python} code file in batch mode (without a @@ -308,7 +309,7 @@ installed via \texttt{pip3 install dill}. \item \texttt{Arg2}, \texttt{Arg3}, and \texttt{Arg4} have the same effects as those of the basic command \texttt{\textbackslash{}runExtCode}. \end{itemize} -\item \texttt{\textbackslash{}inlnR[Arg1]\{Arg2\}[Arg3]} runs \href{https://www.r-project.org/}{R} +\item \texttt{\textbackslash{}inlnR[Arg1]\{Arg2\}[Arg3][Arg4]} runs \href{https://www.r-project.org/}{R} source code (\texttt{Arg2}) and displays the output in line. \begin{itemize} \item \texttt{Arg1} is optional and uses the \href{https://www.r-project.org/}{R} @@ -318,14 +319,16 @@ If the \href{https://www.r-project.org/}{R} source code is wrapped between "```" on both sides (as in the markdown grammar), then it will be implemented directly; otherwise the code will be written to a file on the disk and then be called. -\item \texttt{Arg3} has the same effect as that of the basic command \texttt{\textbackslash{}inln}. +\item \texttt{Arg3} and \texttt{Arg4} have the same effects as those of the basic command \texttt{\textbackslash{}inln}. \end{itemize} \end{itemize} \section{Revisions} -\label{sec:orgf884e2e} +\label{sec:orgdd95675} \begin{itemize} +\item v1.9, June 13, 2023: Update \texttt{\textbackslash{}inln} command; the optional \texttt{Arg3} is the output +file name and the optional \texttt{Arg4} is the output type. \item v1.8, January 18, 2023, add support to \href{https://ctan.org/pkg/listings?lang=en}{listings.} \item v1.7, August 20, 2022: changed the tmp/ folder to generated/ in order to conform with CTAN suggestions; renamed the troubleshooting file. @@ -344,7 +347,7 @@ code files, zero bytes in output files.) \end{itemize} \section{Contributing} -\label{sec:org0dce33b} +\label{sec:orge68f2c0} We welcome your contributions to this package by opening issues on GitHub and/or making a pull request. We also appreciate more example documents written using \texttt{runcode}. diff --git a/macros/latex/contrib/tagpdf/README.md b/macros/latex/contrib/tagpdf/README.md index 5b4a1b211f..bb0353de51 100644 --- a/macros/latex/contrib/tagpdf/README.md +++ b/macros/latex/contrib/tagpdf/README.md @@ -1,6 +1,6 @@ #tagpdf — A package to create tagged pdf -Packageversion: 0.98h -Packagedate: 2023/06/06 +Packageversion: 0.98i +Packagedate: 2023/06/14 Author: Ulrike Fischer ## License diff --git a/macros/latex/contrib/tagpdf/tagpdf-backend.dtx b/macros/latex/contrib/tagpdf/tagpdf-backend.dtx index 5b6acbf34f..a9c4763358 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-backend.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-backend.dtx @@ -47,13 +47,13 @@ % }^^A % } % -% \date{Version 0.98h, released 2023-06-06} +% \date{Version 0.98i, released 2023-06-14} % \maketitle % \begin{implementation} % \begin{macrocode} %<@@=tag> %<*luatex> -\ProvidesExplFile {tagpdf-luatex.def} {2023-06-06} {0.98h} +\ProvidesExplFile {tagpdf-luatex.def} {2023-06-14} {0.98i} {tagpdf~driver~for~luatex} % \end{macrocode} % \section{Loading the lua} @@ -158,8 +158,8 @@ local ProvidesLuaModule = { name = "tagpdf", - version = "0.98h", --TAGVERSION - date = "2023-06-06", --TAGDATE + version = "0.98i", --TAGVERSION + date = "2023-06-14", --TAGDATE description = "tagpdf lua code", license = "The LATEX Project Public License 1.3c" } @@ -890,6 +890,25 @@ end % \end{macrocode} % \end{macro} % +% \begin{macro}{ltx.@@.func.update_mc_attributes} +% This updates the mc-attributes of a box. It should only be used on boxes +% which don't contain structure elements. +% The arguments are a box, the mc-num and the type (as a number) +% \begin{macrocode} +local function @@_update_mc_attributes (head,mcnum,type) + for n in node.traverse(head) do + node.set_attribute(n,mccntattributeid,mcnum) + node.set_attribute(n,mctypeattributeid,type) + if n.id == HLIST or n.id == VLIST then + @@_update_mc_attributes (n.list,mcnum,type) + end + end + return head +end +ltx.@@.func.update_mc_attributes = @@_update_mc_attributes +% \end{macrocode} +% \end{macro} +% % \begin{macro}{ltx.@@.func.mark_page_elements} % This is the main traversing function. See the lua comment for more details. % \begin{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-checks.dtx b/macros/latex/contrib/tagpdf/tagpdf-checks.dtx index 39b786ee41..81fd2c8d95 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-checks.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-checks.dtx @@ -48,7 +48,7 @@ % }^^A % } % -% \date{Version 0.98h, released 2023-06-06} +% \date{Version 0.98i, released 2023-06-14} % \maketitle % \begin{documentation} % \section{Commands} @@ -66,6 +66,18 @@ % are |mc_tag|, |struct_tag|, |struct_id| and |struct_num|. % \end{function} % +% \begin{function}[pTF,EXP]{\tag_if_box_tagged:N} +% \begin{syntax} +% \cs{tag_if_box_tagged:N}\Arg{box} +% \end{syntax} +% This tests if a box contains tagging commands. +% It relies currently on that the code that saved the box correctly set +% the command \verb+\l_tag_box_\int_use:N #1_tl+ to a positive value. +% The LaTeX commands will do that automatically +% at some time but it is in the responsability of the user to +% ensure that when using low-level code. +% If the internal command doesn't exist the box is assumed to be tagged. +% \end{function} % \section{Description of log messages} % \subsection{\cs{ShowTagging} command} % \begin{tabular}{lll} @@ -300,7 +312,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-checks-code} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-checks-code} {2023-06-14} {0.98i} {part of tagpdf - code related to checks, conditionals, debugging and messages} % % \end{macrocode} @@ -529,7 +541,7 @@ % % \section{User conditionals} % \begin{macro}[pTF]{\tag_if_active:} -% This is a test it tagging is active. This allows packages +% This tests if tagging is active. This allows packages % to add conditional code. % The test is true if all booleans, the global and the two local one are true. % @@ -556,6 +568,34 @@ \prg_return_false: } } +% +% \end{macrocode} +% \end{macro} +% +% \begin{macro}[pTF]{\tag_if_box_tagged:N} +% This tests if a box contains tagging commands. +% It relies on that the code that saved the box correctly set +% \verb+\l_tag_box__tl+ to a positive value. +% The LaTeX commands will do that automatically +% at some time but it is in the responsability of the user to +% ensure that when using low-level code. +% If the internal command doesn't exist the box is assumed to be tagged. +% \begin{macrocode} +%<*base> +\prg_new_conditional:Npnn \tag_if_box_tagged:N #1 {p,T,F,TF} + { + \tl_if_exist:cTF {l_tag_box_\int_use:N #1_tl} + { + \int_compare:nNnTF {\tl_use:c{l_tag_box_\int_use:N #1_tl}}>{0} + { \prg_return_true: } + { \prg_return_false: } + } + { + \prg_return_true: + % warning?? + } + } +% % \end{macrocode} % \end{macro} % @@ -566,6 +606,7 @@ % \begin{macro}[TF]{\@@_check_if_active_mc:,\@@_check_if_active_struct:} % This checks if mc are active. % \begin{macrocode} +%<*package> \prg_new_conditional:Npnn \@@_check_if_active_mc: {T,F,TF} { \bool_lazy_and:nnTF { \g_@@_active_mc_bool } { \l_@@_active_mc_bool } diff --git a/macros/latex/contrib/tagpdf/tagpdf-code.pdf b/macros/latex/contrib/tagpdf/tagpdf-code.pdf index 8fd8bc7541..5784294ea4 100644 Binary files a/macros/latex/contrib/tagpdf/tagpdf-code.pdf and b/macros/latex/contrib/tagpdf/tagpdf-code.pdf differ diff --git a/macros/latex/contrib/tagpdf/tagpdf-data.dtx b/macros/latex/contrib/tagpdf/tagpdf-data.dtx index e66712cc7f..57dc3d356e 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-data.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-data.dtx @@ -47,7 +47,7 @@ % }^^A % } % -% \date{Version 0.98h, released 2023-06-06} +% \date{Version 0.98i, released 2023-06-14} % \maketitle % \begin{documentation} % This files contains a various data files which are read in @@ -60,7 +60,7 @@ % It lists the new tag, the rolemap and the namespace of the rolemap. % \begin{macrocode} %<*ns-latex> -%% \ProvidesExplFile {tagpdf-ns-latex.def} {2023-06-06} {0.98h} +%% \ProvidesExplFile {tagpdf-ns-latex.def} {2023-06-14} {0.98i} %% {latex} {https://www.latex-project.org/ns/dflt/2022}{} title, Title, pdf2, part, Title, pdf2, @@ -92,7 +92,7 @@ text, P, pdf2, % It is bound to change % \begin{macrocode} %<*ns-latex-book> -%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2023-06-06} {0.98h} +%% \ProvidesExplFile {tagpdf-ns-latex-book.def} {2023-06-14} {0.98i} %% {latex-book} {https://www.latex-project.org/ns/book/2022}{} chapter, H1,pdf2, section, H2,pdf2, @@ -108,7 +108,7 @@ subparagraph, H6,pdf2, % It is bound to change a lot! % \begin{macrocode} %<*ns-latex-inline> -%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2023-06-06} {0.98h} +%% \ProvidesExplFile {tagpdf-ns-latex-inline.def} {2023-06-14} {0.98i} %% {latex-inline} {https://www.latex-project.org/ns/inline/2022}{} chapter, Span, pdf2, section, Span, pdf2, @@ -122,7 +122,7 @@ P, Span, pdf2, % \section{The pdf namespace data} % \begin{macrocode} %<*ns-pdf> -%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2023-06-06} {0.98h} +%% \ProvidesExplFile {tagpdf-ns-pdf.def} {2023-06-14} {0.98i} %% {pdf} {http://iso.org/pdf/ssn}{} StructTreeRoot,StructTreeRoot,pdf,D, Document,Document,pdf,D, @@ -190,7 +190,7 @@ Strong,Span,pdf,I, % \section{The pdf 2.0 namespace data} % \begin{macrocode} %<*ns-pdf2> -%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2023-06-06} {0.98h} +%% \ProvidesExplFile {tagpdf-ns-pdf2.def} {2023-06-14} {0.98i} %% {pdf2} {http://iso.org/pdf2/ssn}{} Document,Document,pdf2,D, Part,Part,pdf2,G, @@ -246,7 +246,7 @@ Strong,Strong,pdf2,I, % \section{The mathml namespace data} % \begin{macrocode} %<*ns-mathml> -%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2023-06-06} {0.98h} +%% \ProvidesExplFile {tagpdf-ns-mathml.def} {2023-06-14} {0.98i} % {mathml}{http://www.w3.org/1998/Math/MathML}{} abs,abs,mathml, and,and,mathml, @@ -481,7 +481,7 @@ xor,xor,mathml, % This will perhaps change in future. % \begin{macrocode} %<*parent-child> -%% \ProvidesExplFile {tagpdf-parent-child.csv} {2023-06-06} {0.98h} +%% \ProvidesExplFile {tagpdf-parent-child.csv} {2023-06-14} {0.98i} ,,,StructTreeRoot,Document,Art,Part,Div,Sect,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,MC Document,both,document level,1,0..n,∅,‡,‡,∅,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅ Art,1.7,grouping,∅,0..n,∅,‡,‡,0..n,0..n,‡,∅,∅,∅,0..n,∅,0..n,∅,∅,∅,0..1,0..1,∅,∅,∅,0..n,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅,∅,0..n,0..n,∅,∅,∅,0..n,0..n,∅,∅ @@ -536,7 +536,7 @@ MC,both,---,∅,∅,∅,∅,∅,∅,0..n,‡,∅,∅,∅,0..n,0..n,0..n,0..n,0.. % This will perhaps change in future. % \begin{macrocode} %<*parent-child-2> -%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2023-06-06} {0.98h} +%% \ProvidesExplFile {tagpdf-parent-child-2.csv} {2023-06-14} {0.98i} ,,,StructTreeRoot,Document,DocumentFragment,Art,Part,Div,Sect,Aside,BlockQuote,NonStruct,TOC,TOCI,Index,Private,Title,Sub,Quote,Note,Reference,BibEntry,P,Hn,H,Lbl,Code,Em,Strong,Span,Link,Annot,Form,Ruby,RB,RT,RP,Warichu,WT,WP,FENote,L,LI,LBody,Table,TR,TH,TD,THead,TBody,TFoot,Caption,Figure,Formula,math,mathml,Artifact,MC Document,both,document level,1,0..n,0..n,∅,‡,‡,∅,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,0..n,∅ DocumentFragment,2.0,document level,∅,0..n,0..n,0..n,‡,‡,0..n,0..n,0..n,‡,∅,∅,∅,0..n,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅*,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅,∅*,∅,∅,∅,∅,0..n,∅ diff --git a/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx b/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx index a82cb68524..97732c57bf 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-mc-generic.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98h, released 2023-06-06} +% \date{Version 0.98i, released 2023-06-14} % \maketitle % \begin{documentation} % \end{documentation} @@ -55,11 +55,11 @@ % \begin{macrocode} %<@@=tag> %<*generic> -\ProvidesExplPackage {tagpdf-mc-code-generic} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-mc-code-generic} {2023-06-14} {0.98i} {part of tagpdf - code related to marking chunks - generic mode} % %<*debug> -\ProvidesExplPackage {tagpdf-debug-generic} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-debug-generic} {2023-06-14} {0.98i} {part of tagpdf - debugging code related to marking chunks - generic mode} % % \end{macrocode} @@ -657,6 +657,7 @@ % \end{macrocode} % \end{macro} % +% % \begin{macro}{\tag_mc_begin:n,\tag_mc_end:} % These are the core public commands to open and close an mc. % They don't need to be in the same group or grouping level, @@ -664,7 +665,7 @@ % the state is passed to the end command through a global var and % a global boolean. % \begin{macrocode} -%\cs_new_protected:Npn \tag_mc_begin:n #1 { \@@_whatsits: } +%\cs_new_protected:Npn \tag_mc_begin:n #1 { \@@_whatsits: \int_gincr:N \c@g_@@_MCID_abs_int } %\cs_new_protected:Nn \tag_mc_end:{ \@@_whatsits: } %<*generic|debug> %<*generic> diff --git a/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx b/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx index cf70950a28..261a3ff73f 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-mc-luacode.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98h, released 2023-06-06} +% \date{Version 0.98i, released 2023-06-14} % \maketitle % \begin{implementation} % The code is splitted into three parts: code shared by all engines, @@ -86,7 +86,7 @@ % \begin{macrocode} %<@@=tag> %<*luamode> -\ProvidesExplPackage {tagpdf-mc-code-lua} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-mc-code-lua} {2023-06-14} {0.98i} {tagpdf - mc code only for the luamode } % % \end{macrocode} @@ -375,6 +375,22 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\tag_mc_reset_box:N} +% This allows to reset the mc-attributes in box. On base and generic mode it should do +% nothing. +% \begin{macrocode} +\cs_set_protected:Npn \tag_mc_reset_box:N #1 + { + \lua_now:e + { + local~type=tex.getattribute(luatexbase.attributes.g_@@_mc_type_attr) + local~mc=tex.getattribute(luatexbase.attributes.g_@@_mc_cnt_attr) + ltx.__tag.func.update_mc_attributes(tex.getbox(\int_use:N #1),mc,type) + } + } +% \end{macrocode} +% \end{macro} +% % \begin{macro}{ \@@_get_data_mc_tag: } % The command to retrieve the current mc tag. % TODO: Perhaps this should use the attribute instead. diff --git a/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx b/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx index 2096e11d30..9c9d4ec735 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-mc-shared.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98h, released 2023-06-06} +% \date{Version 0.98i, released 2023-06-14} % \maketitle % \begin{documentation} % \section{Public Commands} @@ -111,6 +111,13 @@ % Determines if a mc-chunk is open. % \end{function} +% \begin{function}[ EXP,added=2023-06-11]{\tag_mc_reset_box:N} +% \begin{syntax} +% \cs{tag_mc_reset:N} \Arg{box} +% \end{syntax} +% This resets in lua mode the mc attributes to the one currently in use. +% It does nothing in generic mode. +% \end{function} % % \section{Public keys} % The following keys can be used with |\tag_mc_begin:n|, |\tagmcbegin|, @@ -174,7 +181,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-mc-code-shared} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-mc-code-shared} {2023-06-14} {0.98i} {part of tagpdf - code related to marking chunks - code shared by generic and luamode } % @@ -192,18 +199,34 @@ % % \begin{variable}{g_@@_MCID_abs_int} % \begin{macrocode} -%<*shared> +%<*base> \newcounter { g_@@_MCID_abs_int } % \end{macrocode} % \end{variable} +% \begin{macro}{\@@_get_data_mc_counter:} +% This command allows \cs{tag_get:n} to get the current +% state of the mc counter with the keyword |mc_counter|. +% By comparing the numbers it can be used to check the number of +% structure commands in a piece of code. +% \begin{macrocode} +\cs_new:Npn \@@_get_data_mc_counter: + { + \int_use:N \c@g_@@_MCID_abs_int + } +% +% \end{macrocode} +% \end{macro} % -% \begin{macro}{\_@@_get_mc_abs_cnt:} +% +% \begin{macro}{\@@_get_mc_abs_cnt:} % A (expandable) function to get the current value of the cnt. +% TODO: duplicate of the previous one, this should be cleaned up. % \begin{macrocode} -\cs_new:Npn \_@@_get_mc_abs_cnt: { \int_use:N \c@g_@@_MCID_abs_int } +%<*shared> +\cs_new:Npn \@@_get_mc_abs_cnt: { \int_use:N \c@g_@@_MCID_abs_int } % \end{macrocode} % \end{macro} -% +% % \begin{variable}{\g_@@_MCID_tmp_bypage_int} % The following hold the temporary by page number assigned to a mc. % It must be defined in the shared code to avoid problems with labels. @@ -362,7 +385,13 @@ % % \end{macrocode} % \end{macro} -% +% \begin{macro}{\tag_mc_reset_box:N} +% This allows to reset the mc-attributes in box. On base and generic mode it should do +% nothing. +% \begin{macrocode} +%\cs_new_protected:Npn \tag_mc_reset_box:N #1 {} +% \end{macrocode} +% \end{macro} % \begin{macro}{\tag_mc_end_push:, \tag_mc_begin_pop:n} % % \begin{macrocode} @@ -410,7 +439,7 @@ } % \end{macrocode} % \end{macro} -% +% % \subsection{Keys} % This are the keys where the code can be shared between the modes. % diff --git a/macros/latex/contrib/tagpdf/tagpdf-roles.dtx b/macros/latex/contrib/tagpdf/tagpdf-roles.dtx index 5876c4ba32..fcfd5f7534 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-roles.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-roles.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98h, released 2023-06-06} +% \date{Version 0.98i, released 2023-06-14} % \maketitle % \begin{documentation} % \begin{function} @@ -98,7 +98,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-roles-code} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-roles-code} {2023-06-14} {0.98i} {part of tagpdf - code related to roles and structure names} % % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-space.dtx b/macros/latex/contrib/tagpdf/tagpdf-space.dtx index 6e751618ee..e6b5e02513 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-space.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-space.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98h, released 2023-06-06} +% \date{Version 0.98i, released 2023-06-14} % \maketitle % \begin{documentation} % \begin{function}{interwordspace (setup-key)} @@ -64,7 +64,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-space-code} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-space-code} {2023-06-14} {0.98i} {part of tagpdf - code related to real space chars} % % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-struct.dtx b/macros/latex/contrib/tagpdf/tagpdf-struct.dtx index 542671bd15..d2bb7a2b08 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-struct.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-struct.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98h, released 2023-06-06} +% \date{Version 0.98i, released 2023-06-14} % \maketitle % \begin{documentation} % \section{Public Commands} @@ -247,7 +247,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-struct-code} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-struct-code} {2023-06-14} {0.98i} {part of tagpdf - code related to storing structure} % % \end{macrocode} @@ -978,6 +978,20 @@ % \end{macrocode} % \end{macro} % +% \begin{macro}{\@@_get_data_struct_counter:} +% this command allows \cs{tag_get:n} to get the current +% state of the structure counter with the keyword |struct_counter|. +% By comparing the numbers it can be used to check the number of +% structure commands in a piece of code. +% \begin{macrocode} +%<*base> +\cs_new:Npn \@@_get_data_struct_counter: + { + \int_use:N \c@g_@@_struct_abs_int + } +% +% \end{macrocode} +% \end{macro} % \section{Keys} % This are the keys for the user commands. % we store the tag in a variable. But we should be careful, it is only reliable @@ -1726,7 +1740,7 @@ % \section{Attributes and attribute classes} % \begin{macrocode} %<*header> -\ProvidesExplPackage {tagpdf-attr-code} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-attr-code} {2023-06-14} {0.98i} {part of tagpdf - code related to attributes and attribute classes} % % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-tree.dtx b/macros/latex/contrib/tagpdf/tagpdf-tree.dtx index 61f6db544a..393a7c359f 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-tree.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-tree.dtx @@ -47,13 +47,13 @@ % }^^A % } % -% \date{Version 0.98h, released 2023-06-06} +% \date{Version 0.98i, released 2023-06-14} % \maketitle % \begin{implementation} % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-tree-code} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-tree-code} {2023-06-14} {0.98i} {part of tagpdf - code related to writing trees and dictionaries to the pdf} % % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf-user.dtx b/macros/latex/contrib/tagpdf/tagpdf-user.dtx index 8ebd1813dd..be082172ef 100644 --- a/macros/latex/contrib/tagpdf/tagpdf-user.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf-user.dtx @@ -46,7 +46,7 @@ % }^^A % } % -% \date{Version 0.98h, released 2023-06-06} +% \date{Version 0.98i, released 2023-06-14} % \maketitle % \begin{documentation} % \section{Setup commands} @@ -250,7 +250,7 @@ % \begin{macrocode} %<@@=tag> %<*header> -\ProvidesExplPackage {tagpdf-user} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-user} {2023-06-14} {0.98i} {tagpdf - user commands} % % \end{macrocode} @@ -517,6 +517,16 @@ % or do a first step to apply tagpdf commands to document commands. % This part should be regularly revisited to check if the code should go to a % better place or can be improved. +% +% \subsection{new ref system} +% Until l3ref is in the kernel, we provide a definition for \cs{newlabeldata} in +% the aux-file to avoid errors if a document switches between tagging and non-tagging. +% \begin{macrocode} +% +%\AddToHook{begindocument} +% {\immediate\write\@mainaux{\string\providecommand\string\newlabeldata[2]{}}} +%<*package> +% \end{macrocode} % \subsection{Document structure} % \begin{macro}{\g_@@_root_default_tl,activate (setup-key)} % \begin{macrocode} @@ -840,9 +850,11 @@ \bool_gset_false:N \g_@@_in_mc_bool } \tag_mc_begin:n {artifact} + \tag_stop:n{headfoot} } \cs_new_protected:Npn \@@_exclude_headfoot_end: { + \tag_start:n{headfoot} \tag_mc_end: \bool_if:NTF \g_@@_mode_lua_bool { @@ -869,10 +881,12 @@ } \tag_struct_begin:n{tag=Artifact,attribute-class=@@/attr/#1} \tag_mc_begin:n {artifact=#1} + \tag_stop:n{headfoot} } \cs_new_protected:Npn \@@_exclude_struct_headfoot_end: { + \tag_start:n{headfoot} \tag_mc_end: \tag_struct_end: \bool_if:NTF \g_@@_mode_lua_bool diff --git a/macros/latex/contrib/tagpdf/tagpdf.dtx b/macros/latex/contrib/tagpdf/tagpdf.dtx index b4c9e55090..b5898d0ed4 100644 --- a/macros/latex/contrib/tagpdf/tagpdf.dtx +++ b/macros/latex/contrib/tagpdf/tagpdf.dtx @@ -92,7 +92,7 @@ % \begin{macrocode} %<@@=tag> %<*package> -\ProvidesExplPackage {tagpdf} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf} {2023-06-14} {0.98i} { A package to experiment with pdf tagging } \bool_if:nF @@ -118,7 +118,7 @@ % \end{macrocode} %<*debug> % \begin{macrocode} -\ProvidesExplPackage {tagpdf-debug} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-debug} {2023-06-14} {0.98i} { debug code for tagpdf } \@ifpackageloaded{tagpdf}{}{\PackageWarning{tagpdf-debug}{tagpdf~not~loaded,~quitting}\endinput} % \end{macrocode} @@ -141,7 +141,7 @@ % we define a base package with dummy functions % \begin{macrocode} %<*base> -\ProvidesExplPackage {tagpdf-base} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdf-base} {2023-06-14} {0.98i} {part of tagpdf - provide base, no-op versions of the user commands } % % \end{macrocode} diff --git a/macros/latex/contrib/tagpdf/tagpdf.pdf b/macros/latex/contrib/tagpdf/tagpdf.pdf index a75c6a78db..329b97b8a5 100644 Binary files a/macros/latex/contrib/tagpdf/tagpdf.pdf and b/macros/latex/contrib/tagpdf/tagpdf.pdf differ diff --git a/macros/latex/contrib/tagpdf/tagpdf.tex b/macros/latex/contrib/tagpdf/tagpdf.tex index 27cd1d128d..1ee0abb181 100644 --- a/macros/latex/contrib/tagpdf/tagpdf.tex +++ b/macros/latex/contrib/tagpdf/tagpdf.tex @@ -16,8 +16,8 @@ } \DebugBlocksOff \makeatletter -\def\UlrikeFischer@package@version{0.98h} -\def\UlrikeFischer@package@date{2023-06-06} +\def\UlrikeFischer@package@version{0.98i} +\def\UlrikeFischer@package@date{2023-06-14} \makeatother \documentclass[bibliography=totoc,a4paper]{article} @@ -298,6 +298,9 @@ structures can be inspected and be compared by the l3build checks.% \section{Changes} + +This section lists only important changes. More can be found in the \texttt{CHANGELOG.MD} and by checking the git commits. + \subsection{Changes in 0.3} @@ -509,12 +512,6 @@ added. The ID of a structure can be retrieved with |\tag_get:n| see~\ref{sec:retrieve}. -\subsection{Changes in version 0.98d} -The main change is from now on every structure has an ID and an IDtree is -added. The ID of a structure can be retrieved with |\tag_get:n| -see~\ref{sec:retrieve}. - - \subsection{Changes in version 0.98e} \begin{itemize} @@ -1211,16 +1208,30 @@ In \emph{generic mode}, where marked content command shouldn't be nested, it wor In \emph{lua mode} it tests if the mc-attribute is currently unset. You can't test the nesting level with it! + + +\begin{docCommand}{tag_mc_reset_box:N}{\marg{box}}\end{docCommand} + +In lua mode this command will process the given box and reset all mc related attributes in the box to the current values. +This means that if the box is used all its contents will be a kid of the current structure. +This should (probably) only be used on boxes which don't contain tagging commands. +See below section~\ref{sec:savebox} for more details. + + \subsubsection{Retrieving data} \label{sec:retrieve} With more elaborate tagging the need arise to retrieve and store current data. \begin{docCommand}{tag_get:n}{\marg{key word}}\end{docCommand} -This (expandable) command give back some variables. Currently the working key words are \verb+mc_tag+, \verb+struct_tag+, -\verb+struct_id+ and \verb+struct_num+. The ID is a string and returned including parentheses. -\verb+struct_num+ returns a number and works also if only \pkg{tagpdf-base} has been loaded, but then doesn't give the same output: if \pkg{tagpdf} is loaded and tagging is active, \verb+struct_num+ gives the number of currently -active structure, so it reverts to the parent number if a structure is closed. If only \pkg{tagpdf-base} is loaded -nesting of structure is not tracked and so the command gives back the number of the last structure that has been created. +This (expandable) command give back some variables. Currently the working key words are +\begin{itemize} +\item \verb+mc_tag+: the tag name of the current mc-chunk +\item \verb+struct_tag+: the tag name of the current structure +\item \verb+struct_id+: The ID of the current structure. This is a string and is returned including parentheses. +\item \verb+struct_num+: This returns a number and works also if only \pkg{tagpdf-base} has been loaded, but then doesn't give the same output: if \pkg{tagpdf} is loaded and tagging is active, \verb+struct_num+ gives the number of currently active structure, so it reverts to the parent number if a structure is closed. If only \pkg{tagpdf-base} is loaded nesting of structure is not tracked and so the command gives back the number of the last structure that has been created. +\item \verb+struct_counter+: This returns a number and works also if only \pkg{tagpdf-base} has been loaded. It gives back the state of the absolute structure counter and so number of the last structure that has been created. This can be used to detect if in a piece of code there are structure commands. Be aware that this is a \LaTeX{} counter and so reset in some places. +\item \verb+mc_counter+: This returns a number and works also if only \pkg{tagpdf-base} has been loaded. It gives back the state of the absolute mc-counter and so number of the last mc-chunk that has been created. This can be used to detect if in a piece of code there are mc-commands. +\end{itemize} \subsubsection{Luamode: global or not global -- that is the question}\label{sec:global-local} @@ -2209,7 +2220,7 @@ This is in pdftex a primitive. It inserts the dummy space glyph. \pkg{tagpdf} de necessary to surround destinations with a dummy structure (a Span or an Artifact) to get the right page number. - +\section{Storing and reusing boxes}\label{sec:savebox} \section{Accessibility is not only tagging} diff --git a/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty b/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty index 4f14e73b1a..0628a46660 100644 --- a/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty +++ b/macros/latex/contrib/tagpdf/tagpdfdocu-patches.sty @@ -1,5 +1,5 @@ %\RequirePackage[enable-debug]{expl3}[2018/06/14] -\ProvidesExplPackage {tagpdfdocu-patches} {2023-06-06} {0.98h} +\ProvidesExplPackage {tagpdfdocu-patches} {2023-06-14} {0.98i} {patches/commands for the tagpdf documentation} \RequirePackage{etoolbox,xpatch} diff --git a/macros/latex/contrib/zref-check/CHANGELOG.md b/macros/latex/contrib/zref-check/CHANGELOG.md index f812c8b76c..b9c41de170 100644 --- a/macros/latex/contrib/zref-check/CHANGELOG.md +++ b/macros/latex/contrib/zref-check/CHANGELOG.md @@ -1,6 +1,12 @@ # Changelog -## [Unreleased](https://github.com/gusbrs/zref-check/compare/v0.3.2...HEAD) +## [Unreleased](https://github.com/gusbrs/zref-check/compare/v0.3.3...HEAD) + +## [v0.3.3](https://github.com/gusbrs/zref-check/compare/v0.3.2...v0.3.3) (2023-06-14) + +### Changed +- Improvements to User manual. +- Simplify regression tests. ## [v0.3.2](https://github.com/gusbrs/zref-check/compare/v0.3.1...v0.3.2) (2022-07-07) diff --git a/macros/latex/contrib/zref-check/zref-check-code.pdf b/macros/latex/contrib/zref-check/zref-check-code.pdf index 24e4f653b9..fdd972c94d 100644 Binary files a/macros/latex/contrib/zref-check/zref-check-code.pdf and b/macros/latex/contrib/zref-check/zref-check-code.pdf differ diff --git a/macros/latex/contrib/zref-check/zref-check-code.tex b/macros/latex/contrib/zref-check/zref-check-code.tex index 5645430295..02cb8b5c82 100644 --- a/macros/latex/contrib/zref-check/zref-check-code.tex +++ b/macros/latex/contrib/zref-check/zref-check-code.tex @@ -4,7 +4,7 @@ % % This file is part of the LaTeX package "zref-check". % -% Copyright (C) 2021-2022 Gustavo Barros +% Copyright (C) 2021-2023 Gustavo Barros % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -22,7 +22,7 @@ % % This work consists of the files zref-check.dtx, % zref-check.ins, -% zref-check.tex, +% zref-check-doc.tex, % zref-check-code.tex, % and the files generated from them. % diff --git a/macros/latex/contrib/zref-check/zref-check-doc.pdf b/macros/latex/contrib/zref-check/zref-check-doc.pdf new file mode 100644 index 0000000000..64afffc6f2 Binary files /dev/null and b/macros/latex/contrib/zref-check/zref-check-doc.pdf differ diff --git a/macros/latex/contrib/zref-check/zref-check-doc.tex b/macros/latex/contrib/zref-check/zref-check-doc.tex new file mode 100644 index 0000000000..420ec0f900 --- /dev/null +++ b/macros/latex/contrib/zref-check/zref-check-doc.tex @@ -0,0 +1,501 @@ +% \iffalse meta-comment +% +% File: zref-check.tex +% +% This file is part of the LaTeX package "zref-check". +% +% Copyright (C) 2021-2022 Gustavo Barros +% +% It may be distributed and/or modified under the conditions of the +% LaTeX Project Public License (LPPL), either version 1.3c of this +% license or (at your option) any later version. The latest version +% of this license is in the file: +% +% https://www.latex-project.org/lppl.txt +% +% and version 1.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% +% This work is "maintained" (as per LPPL maintenance status) by +% Gustavo Barros. +% +% This work consists of the files zref-check.dtx, +% zref-check.ins, +% zref-check-doc.tex, +% zref-check-code.tex, +% and the files generated from them. +% +% The released version of this package is available from CTAN. +% +% ----------------------------------------------------------------------- +% +% The development version of the package can be found at +% +% https://github.com/gusbrs/zref-check +% +% for those people who are interested. +% +% ----------------------------------------------------------------------- +% +% \fi + +\documentclass{l3doc} + +% Have \GetFileInfo pick up date and version data +\usepackage{zref-check} + +\setlength{\marginparsep}{2\labelsep} + +\NewDocumentCommand\opt{m}{\texttt{#1}} + +\begin{document} + +\GetFileInfo{zref-check.sty} + +\title{% + The \pkg{zref-check} package% + \thanks{This file describes \fileversion, released \filedate.}% +} + +\author{% + Gustavo Barros% + \thanks{\url{https://github.com/gusbrs/zref-check}}% +} + +\date{\filedate} + +\maketitle + +\begin{abstract} + \pkg{zref-check} provides an user interface for making \LaTeX{} + cross-references flexibly, while allowing to have them checked for + consistency with the document structure as typeset. Statements such as + ``above'', ``on the next page'', ``previously'', ``as will be discussed'', + ``on the previous chapter'' and so on can be given to \cs{zcheck} in + free-form, and a set of ``checks'' can be specified to be run against a + given \texttt{label}, which will result in a warning at compilation time if + any of these checks fail. \cs{zctarget} and the \texttt{zcregion} + environment are also defined as a means to easily set label targets to + arbitrary places in the text which can be referred to by \cs{zcheck}. +\end{abstract} + +\tableofcontents + + +\section{Introduction} + +The \pkg{zref-check} package provides an user interface for making \LaTeX{} +cross-references exploiting document contextual information to enrich the way +the reference can be rendered, but at the same time ensuring the means that +these cross-references can be done consistently with the document structure. + +The usual \LaTeX{} cross-reference is done by referring to a \texttt{label}, +associated with one or another document structural element, and this reference +will typeset for you some content based on the information which is stored in +that label. \cs{zcheck}, the main user command of \pkg{zref-check}, has a +somewhat different concept. Instead of trying to provide the text to be +typeset based on the contextual information, \cs{zcheck} lets the user supply +an arbitrary text and specify one or more checks to be done on the label(s) +being referred to. If any of the checks fails, a warning is issued upon +compilation, so that the user can go back to that cross-reference and correct +it as needed, without having to rely on burdensome and error prone manual +proof-reading. + +This grants a much increased flexibility for the cross-reference text, which +means in practice that the writing style, the variety of expressions you may +use for similar situations, does not need to be sacrificed for the +convenience. \cs{zcheck}'s cross-references do not need to ``feel'' automated +to be consistently checked. Localization is also not an issue, since the +cross-reference text is provided directly by the user. Separating +``typesetting'' from ``checking'' also means there is a lot of document +context we can leverage for this purpose (see Section~\ref{sec:checks}). + +A standard \LaTeX{} cross-reference is made to refer to specific numbered +document elements -- chapters, sections, figures, tables, equations, etc. The +cross-reference will normally produce that number (which is the element's +``id'') and, eventually, its ``type'' (the counter). We may also refer to the +page that element occurs and even its ``title'' (in which case, atypically, we +may even get to refer to an unnumbered section, provided we also implicitly +supply by some means the ``id''). + +For references to these usual specific document elements, \pkg{zref-check} +caters for a particular kind of cross-reference which is common: +\emph{relational} statements based on them. \cs{zcheck} can typeset and +meaningfully check cross-references such as ``above'', ``on the next page'', +``on the facing page'', ``on the previous section'', ``later on this chapter'' +and so on. After all, if your reference is being made on page 2 and refers to +something on the same page, ``on this page'' reads much better than ``on +page~2''. If you are writing chapter~4, ``on the previous chapter'' sounds +nicer than ``on chapter~3''. + +However, there is yet another kind of ``looser'' cross-reference we routinely +do in our documents. Expressions such as ``previously'', ``as mentioned +before'', ``as will be discussed'', and so on, are a powerful discursive +instrument, which enriches the text, by offering hints to the arguments' +threads, without necessarily pressing them too hard onto the reader. So, we +might not want to say ``on footnote 57, pag.~34'', but prefer ``previously'', +not ``on Section 3.4'', but rather ``below'', or ``later on''. Besides, we +also may refer to certain passages in the text in this way, rather than to +numbered document elements. And this kind of reference is not only hard to +check and find, but also to fix. After all, if you are making one such +reference, you are taking that statement as a premisse at the current point in +the text. So, if that reference is missing, or relocated, you may need to +bring in the support to the premisse for your argument to close, rather than +just ``adjust the reference text''. \pkg{zref-check} also provides support +for this kind of cross-reference, allowing for them to be consistently +verified. + + +\section{Loading the package} +\label{sec:loading-package} + +\pkg{zref-check} can be loaded with the usual: + +\begin{syntax} + \cs{usepackage}|{zref-check}| +\end{syntax} + +The package does not accept load-time options, package options must be set +using \cs{zrefchecksetup} (see Section~\ref{sec:user-interface}). + + +\section{Dependencies} + +\pkg{zref} is required, of course, but in particular, its modules +\pkg{zref-user} and \pkg{zref-abspage} are loaded by default. \pkg{ifdraft} +(from the \pkg{oberdiek} bundle) is also loaded by default. A \LaTeX{} kernel +later than 2021-06-01 is required, since we rely on the new hook system from +\pkg{ltcmdhooks} for the sectioning checks. If \pkg{hyperref} is loaded and +option \pkg{hyperref} is given, \pkg{zref-check} makes use of it, but it does +not load the package for you. + + +\section{User interface} +\label{sec:user-interface} + +\begin{function}{\zcheck} + \begin{syntax} + \cs{zcheck}\oarg{checks/options}\marg{labels}\marg{text} + \end{syntax} + Typesets \meta{text}, as given, while performing a list of \meta{checks} on + each of the \meta{labels}. When \pkg{hyperref} support is enabled, + \meta{text} will be made a hyperlink to \emph{the first} \meta{label} in + \meta{labels}. The starred version of the command does the same as the + plain one, just does not form a link. The \meta{options} are (mostly) the + same as those of the package, and can be given to local effect. + \meta{checks} and \meta{options} can be given side by side as a comma + separated list in the optional argument. \meta{labels} is also a comma + separated list. +\end{function} + +\begin{function}{\zctarget} + \begin{syntax} + \cs{zctarget}\marg{label}\marg{text} + \end{syntax} + Typesets \meta{text}, as given, and places a pair of \texttt{zlabel}s, one + at the start of \meta{text}, using \meta{label} as label name, another one + (internal) at the end of \meta{text}. +\end{function} + + +\begin{function}{zcregion} + \begin{syntax} + |\begin{zcregion}|\marg{label} + | ...| + |\end{zcregion}| + \end{syntax} + An environment that does the same as \cs{zctarget}, for cases of longer + stretches of text. +\end{function} + + +\begin{function}{\zrefchecksetup} + \begin{syntax} + \cs{zrefchecksetup}\marg{options} + \end{syntax} + Sets \pkg{zref-check}'s options (see Section~\ref{sec:options}). +\end{function} + +\bigskip{} + +All user commands of \pkg{zref-check} have their \marg{label} arguments +protected for \pkg{babel} active characters using \pkg{zref}'s +\cs{zref@wrapper@babel}, so that we should have equivalent support in that +regard, as \pkg{zref} itself does. \pkg{zref-check} depends on \pkg{zref}, as +the name entails, which means it is able to work with \pkg{zref} labels, in +general created by \cs{zlabel}, but also with \cs{zctarget} and the +\texttt{zcregion} environment provided by this package. + + +\section{Checks} +\label{sec:checks} + +\pkg{zref-check} provides several ``checks'' to be used with \cs{zcheck}. The +checks may be combined in a \cs{zcheck} call, e.g.\ \opt{[close, after]}, or +\opt{[thischap, before]}. In this case, each check in \meta{checks} is +performed against each of the \meta{labels}. This is done independently for +each check, which means, in practice, that the checks bear a logical +\texttt{AND} relation to the others. Whether the combination is meaningful, +is up to the user. As is the correspondence between the \meta{checks} and the +\meta{text} in \cs{zcheck}. + +The use of checks which perform ``within the page'' comparisons -- namely +\opt{above} and \opt{below} and, through them, \opt{before} and \opt{after} -- +comes with some caveats you should be acquainted with. +Section~\ref{sec:within-page-checks} discusses their limitations and expands +on the expected workflow for their use to ensure reliable results. + +Note that the naming convention of the checks adopts the perspective of +\cs{zcheck}. That is, the name of the check describes the position of the +label being referred to, relative to the \cs{zcheck} call being made. For +example, the \opt{before} check should issue no message if +\cs{ztarget}|{mylabel}{...}| occurs before +\cs{zcheck}|[before]{mylabel}{...}|. + +The available checks are the following: + +\begin{description}[leftmargin=0pt, itemindent=0pt, align=right, labelsep=1em, + font=\MacroFont] + +\item[thispage] \meta{label} occurs on the same page as \cs{zcheck}. + +\item[prevpage] \meta{label} occurs on the previous page relative to + \cs{zcheck}. + +\item[nextpage] \meta{label} occurs on the next page relative to \cs{zcheck}. + +\item[otherpage] \meta{label} occurs on a page different from that of + \cs{zcheck}, that is, it does \emph{not} occur on \opt{thispage}. + +\item[pagegap] There is a page gap between \meta{label} and \cs{zcheck}, in + other words, \meta{label} does \emph{not} occur on \opt{thispage}, + \opt{prevpage} or \opt{nextpage}. + +\item[facing] On a \texttt{twoside} document, both \meta{label} and + \cs{zcheck} fall onto a double spread, each on one of the two facing pages. + +\item[above] \meta{label} and \cs{zcheck} are both on the same page, and + \meta{label} occurs ``above'' \cs{zcheck}. + +\item[below] \meta{label} and \cs{zcheck} are both on the same page, and + \meta{label} occurs ``below'' \cs{zcheck}. + +\item[pagesbefore] \meta{label} occurs on any page before the one of + \cs{zcheck}. + +\item[ppbefore] Convenience alias for \opt{pagesbefore}. + +\item[pagesafter] \meta{label} occurs on any page after the one of + \cs{zcheck}. + +\item[ppafter] Convenience alias for \opt{pagesafter}. + +\item[before] Either \opt{above} or \opt{pagesbefore}. + +\item[after] Either \opt{below} or \opt{pagesafter}. + +\item[thischap] \meta{label} occurs on the same chapter as \cs{zcheck}. + +\item[prevchap] \meta{label} occurs on the previous chapter relative to the + one of \cs{zcheck}. + +\item[nextchap] \meta{label} occurs on the next chapter relative to the one of + \cs{zcheck}. + +\item[chapsbefore] \meta{label} occurs on any chapter before the one of + \cs{zcheck}. + +\item[chapsafter] \meta{label} occurs on any chapter after the one of + \cs{zcheck}. + +\item[thissec] \meta{label} occurs on the same section as \cs{zcheck}. + +\item[prevsec] \meta{label} occurs on the previous section (of the same + chapter) relative to the one of \cs{zcheck}. + +\item[nextsec] \meta{label} occurs on the next section (of the same chapter) + relative to the one of \cs{zcheck}. + +\item[secsbefore] \meta{label} occurs on any section (of the same chapter) + before the one of \cs{zcheck}. + +\item[secsafter] \meta{label} occurs on any section (of the same chapter) + after the one of \cs{zcheck}. + +\item[close] \meta{label} occurs within a page range from \opt{closerange} + pages before the one of \cs{zcheck} to \opt{closerange} pages after it + (about the \opt{closerange} option, see Section~\ref{sec:options}). + +\item[far] Not \opt{close}. + +\end{description} + + +\section{Options} +\label{sec:options} + +Options are a standard \texttt{key=value} comma separated list, and can be set +globally either as \cs{usepackage}\oarg{options} at load-time (see +Section~\ref{sec:loading-package}), or by means of \cs{zrefchecksetup} (see +Section~\ref{sec:user-interface}) in the preamble. Most options can also be +used with local effects, through the optional argument of \cs{zcheck}. + +\DescribeOption{hyperref} % +Controls the use of \pkg{hyperref} by \pkg{zref-check} and takes values +\opt{auto}, \opt{true}, \opt{false}. The default value, \opt{auto}, makes +\pkg{zref-check} use \pkg{hyperref} if it is loaded, meaning \cs{zcheck} can +be hyperlinked to the \emph{first label} in \meta{labels}. \opt{true} does +the same thing, but warns if \pkg{hyperref} is not loaded (\pkg{hyperref} is +never loaded for you). In either of these cases, if \pkg{hyperref} is loaded, +module \pkg{zref-hyperref} is also loaded by \pkg{zref-check}. \opt{false} +means not to use \pkg{hyperref} regardless of its availability. This is a +preamble only option, but \cs{zcheck} provides granular control of +hyperlinking by means of its starred version. + + +\DescribeOption{msglevel} % +Sets the level of messages issued by \cs{zcheck} failed checks and takes +values \opt{warn}, \opt{info}, \opt{none}, \opt{infoifdraft}, +\opt{warniffinal}. The default value, \opt{warn}, issues messages both to the +terminal and to the log file, \opt{info} issues messages to the log file only, +\opt{none} suppresses all messages. \opt{infoifdraft} corresponds to +\opt{info} if option \opt{draft} is passed to \cs{documentclass}, and to +\opt{warn} otherwise. \opt{warniffinal} corresponds to \opt{warn} if option +\opt{final} is (explicitly) passed to \cs{documentclass} and \opt{info} +otherwise. \opt{ignore} is provided as convenience alias for +\opt{msglevel=none} for local use only. This option only affects the messages +issued by the checks in \cs{zcheck}, not other messages or warnings of the +package. In particular, it does not affect warnings issued for undefined +labels, which just use \cs{zref@refused} and thus are the same as standard +\LaTeX{} ones for this purpose. + + +\DescribeOption{onpage} % +Allows to control the messaging style for ``within page checks'', and takes +values \opt{labelseq}, \opt{msg}, \opt{labelseqifdraft}, \opt{msgiffinal}. +The default, \opt{labelseq}, uses the labels' shipout sequence, as retrieved +from the \file{.aux} file, to infer relative position within the page. +\opt{msg} also uses the same method for checking relative position, but issues +a (different) message \emph{even if the check passes}, to provide a simple +workflow for robust checking of ``false negatives'', considering the label +sequence is not fool proof (for details and workflow recommendations, see +Section~\ref{sec:within-page-checks}). \opt{msg} also issues its messages at +the same level defined in \opt{msglevel}. \opt{labelseqifdraft} corresponds +to \opt{labelseq} if option \opt{draft} is passed to \cs{documentclass} and to +\opt{msg} otherwise. \opt{msgiffinal} corresponds to \opt{msg} if option +\opt{final} is (explicitly) passed to \cs{documentclass}, and to +\opt{labelseq} otherwise. + + +\DescribeOption{closerange} % +Defines the width of the range of pages, relative to the reference, that are +considered ``close'' by the \opt{close} check. Takes a positive integer as +value, with default 5. + + +\section{Limitations} + +There are three qualitatively different kinds of checks being used by +\cs{zcheck}, according to the source and reliability of the information they +mobilize: page number checks, within page checks, and sectioning checks. + +\subsection{Page number checks} + +Page number checks -- \opt{thispage}, \opt{prevpage}, \opt{nextpage}, +\opt{pagesbefore}, \opt{pagesafter}, \opt{facing} -- use the \texttt{abspage} +property provided by the \pkg{zref-abspage} module. This is a solid piece of +information, on which we can rely upon. However, despite that, page number +checks may still become ill-defined, if the \meta{text} argument in +\cs{zcheck}, when typeset, crosses page boundaries, starting in one page, and +finishing in another. The same can happen with the text in \cs{zctarget} and +the \texttt{zcregion} environment. + +This is why the user commands of this package set a pair or labels around +\meta{text}. So, when checking \cs{zcheck} against a regular \texttt{zlabel} +both the start and the end of the \meta{text} are checked against the label, +and the check fails if either of them fails. When checking \cs{zcheck} +against a \cs{zctarget} or a \texttt{zcregion}, both beginnings and ends are +checked against each other two by two, and if any of them fails, the check +fails. In other words, if a page number checks passes, we know that the +entire \meta{text} arguments pass it. + +This is a corner case (albeit relevant) which must be taken care of, and it is +possible to do so robustly. Hence, we can expect reliable results in these +tests. + + +\subsection{Within page checks} +\label{sec:within-page-checks} + +When both label and reference fall on the same page things become much +trickier. This is basically the case of the checks \opt{above} and +\opt{below} (and, through them, \opt{before} and \opt{after}). There is no +equally reliable information (that I know of) as we have for the page number +checks for this, especially when floats come into play. Which, of course, is +the interesting case to handle. + +To infer relative position of label and reference on the same page, +\pkg{zref-check} uses the labels' shipout sequence, which is retrieved at +load-time from the order in which the labels occur in the \file{.aux} file. +Indeed, \pkg{zref} writes labels to the \file{.aux} file at shipout (and, +hence, in shipout order), and needs to do so, because a number of its +properties are only available at that point. + +However, even if this method will buy us a correct check for a regular float +on a regular page (which, to be fair, is a good result), it is not difficult +do conceive situations in which this sequence may not be meaningful, or even +correct, for the case. A number of cases which may do so are: two column +documents, text wrapping, scaling, overlays, etc. (I don't know if those make +the method fail, I just don't know if they don't). Therefore, the +\texttt{labelseq} should be taken as a \emph{proxy} and not fully reliable, +meaning that the user should be watchful of its results. + +For this reason, \pkg{zref-check} provides an easy way to do so, by allowing +specific control of the messaging style of the checks which do within page +comparisons though the option \opt{onpage}. The concern is not really with +false positives (getting a warning when it was not due), but with false +negatives (not getting a warning when it was due). Hence, setting +\opt{onpage} to \opt{msg} at a final typesetting stage (or just set it to +\opt{labelseqifdraft} or \opt{msgiffinal} if that's part of your workflow) +provides a way to easily identify all cases of such checks (failing or +passing), and double-check them. In case the test is passing though, the +message is different from that of a failing check, to quickly convey why you +are getting the message. This option can also be set at the local level, if +the page in question is known to be problematic, or just atypical. + + +\subsection{Sectioning checks} + +The information used by sectioning checks is provided by means of dedicated +counters for chapters and sections, similarly as standard counters for them, +but which are stepped and reset regardless of whether these sectioning +commands are numbered or not (that is, starred or not). And this for two +reasons. First, we don't need the absolute counter value to be able to make +the kind of relative statement we want to do here. Second, this allows us to +have these checks work for numbered and unnumbered sectioning commands without +having to worry about how those are used within the document. + +The caveat is that the package does this by hooking into \cs{chapter} and +\cs{section}, which poses two restrictions for the proper working of these +checks. First, we are using the new hook system for this, as provided by +\pkg{ltcmdhooks}, which means a \LaTeX{} kernel later than 2021-06-01 is +required. Second, since we are hooking into \cs{chapter} and \cs{section}, +these checks presume these commands are being used by the document class for +this purpose (either directly, or internally as, for example, KOMA-Script's +\cs{addchap} and \cs{addsec} do). If that's not the case, additional setup +may be needed for these checks to work as expected. + + +\section{Change history} + +A change log with relevant changes for each version, eventual upgrade +instructions, and upcoming changes, is maintained in the package's repository, +at \url{https://github.com/gusbrs/zref-check/blob/main/CHANGELOG.md}. The +change log is also distributed with the package's documentation through CTAN +upon release so, most likely, \texttt{texdoc zref-check/changelog} should +provide easy local access to it. An archive of historical versions of the +package is also kept at \url{https://github.com/gusbrs/zref-check/releases}. + + +\end{document} diff --git a/macros/latex/contrib/zref-check/zref-check.dtx b/macros/latex/contrib/zref-check/zref-check.dtx index 9bc53031c7..58eb421cdd 100644 --- a/macros/latex/contrib/zref-check/zref-check.dtx +++ b/macros/latex/contrib/zref-check/zref-check.dtx @@ -4,7 +4,7 @@ % % This file is part of the LaTeX package "zref-check". % -% Copyright (C) 2021-2022 Gustavo Barros +% Copyright (C) 2021-2023 Gustavo Barros % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -22,7 +22,7 @@ % % This work consists of the files zref-check.dtx, % zref-check.ins, -% zref-check.tex, +% zref-check-doc.tex, % zref-check-code.tex, % and the files generated from them. % @@ -54,435 +54,6 @@ % \fi % % -% \begin{documentation} -% -% \section{Introduction} -% -% The \pkg{zref-check} package provides an user interface for making \LaTeX{} -% cross-references exploiting document contextual information to enrich the -% way the reference can be rendered, but at the same time ensuring the means -% that these cross-references can be done consistently with the document -% structure. -% -% The usual \LaTeX{} cross-reference is done by referring to a \texttt{label}, -% associated with one or another document structural element, and this -% reference will typeset for you some content based on the information which -% is stored in that label. \cs{zcheck}, the main user command of -% \pkg{zref-check}, has a somewhat different concept. Instead of trying to -% provide the text to be typeset based on the contextual information, -% \cs{zcheck} lets the user supply an arbitrary text and specify one or more -% checks to be done on the label(s) being referred to. If any of the checks -% fails, a warning is issued upon compilation, so that the user can go back to -% that cross-reference and correct it as needed, without having to rely on -% burdensome and error prone manual proof-reading. -% -% This grants a much increased flexibility for the cross-reference text, which -% means in practice that the writing style, the variety of expressions you may -% use for similar situations, does not need to be sacrificed for the -% convenience. \cs{zcheck}'s cross-references do not need to ``feel'' -% automated to be consistently checked. Localization is also not an issue, -% since the cross-reference text is provided directly by the user. Separating -% ``typesetting'' from ``checking'' also means there is a lot of document -% context we can leverage for this purpose (see Section~\ref{sec:checks}). -% -% A standard \LaTeX{} cross-reference is made to refer to specific numbered -% document elements -- chapters, sections, figures, tables, equations, etc. -% The cross-reference will normally produce that number (which is the -% element's ``id'') and, eventually, its ``type'' (the counter). We may also -% refer to the page that element occurs and even its ``title'' (in which case, -% atypically, we may even get to refer to an unnumbered section, provided we -% also implicitly supply by some means the ``id''). -% -% For references to these usual specific document elements, \pkg{zref-check} -% caters for a particular kind of cross-reference which is common: -% \emph{relational} statements based on them. \cs{zcheck} can typeset and -% meaningfully check cross-references such as ``above'', ``on the next page'', -% ``on the facing page'', ``on the previous section'', ``later on this -% chapter'' and so on. After all, if your reference is being made on page 2 -% and refers to something on the same page, ``on this page'' reads much better -% than ``on page~2''. If you are writing chapter~4, ``on the previous -% chapter'' sounds nicer than ``on chapter~3''. -% -% However, there is yet another kind of ``looser'' cross-reference we -% routinely do in our documents. Expressions such as ``previously'', ``as -% mentioned before'', ``as will be discussed'', and so on, are a powerful -% discursive instrument, which enriches the text, by offering hints to the -% arguments' threads, without necessarily pressing them too hard onto the -% reader. So, we might not want to say ``on footnote 57, pag.~34'', but -% prefer ``previously'', not ``on Section 3.4'', but rather ``below'', or -% ``later on''. Besides, we also may refer to certain passages in the text in -% this way, rather than to numbered document elements. And this kind of -% reference is not only hard to check and find, but also to fix. After all, -% if you are making one such reference, you are taking that statement as a -% premisse at the current point in the text. So, if that reference is -% missing, or relocated, you may need to bring in the support to the premisse -% for your argument to close, rather than just ``adjust the reference text''. -% \pkg{zref-check} also provides support for this kind of cross-reference, -% allowing for them to be consistently verified. -% -% -% \section{Loading the package} -% \label{sec:loading-package} -% -% \pkg{zref-check} can be loaded with the usual: -% -% \begin{syntax} -% \cs{usepackage}|{zref-check}| -% \end{syntax} -% -% The package does not accept load-time options, package options must be set -% using \cs{zrefchecksetup} (see Section~\ref{sec:user-interface}). -% -% -% \section{Dependencies} -% -% \pkg{zref} is required, of course, but in particular, its modules -% \pkg{zref-user} and \pkg{zref-abspage} are loaded by default. \pkg{ifdraft} -% (from the \pkg{oberdiek} bundle) is also loaded by default. A \LaTeX{} -% kernel later than 2021-06-01 is required, since we rely on the new hook -% system from \pkg{ltcmdhooks} for the sectioning checks. If \pkg{hyperref} -% is loaded and option \pkg{hyperref} is given, \pkg{zref-check} makes use of -% it, but it does not load the package for you. -% -% -% \section{User interface} -% \label{sec:user-interface} -% -% \begin{function}{\zcheck} -% \begin{syntax} -% \cs{zcheck}\oarg{checks/options}\marg{labels}\marg{text} -% \end{syntax} -% Typesets \meta{text}, as given, while performing a list of \meta{checks} -% on each of the \meta{labels}. When \pkg{hyperref} support is enabled, -% \meta{text} will be made a hyperlink to \emph{the first} \meta{label} in -% \meta{labels}. The starred version of the command does the same as the -% plain one, just does not form a link. The \meta{options} are (mostly) the -% same as those of the package, and can be given to local effect. -% \meta{checks} and \meta{options} can be given side by side as a comma -% separated list in the optional argument. \meta{labels} is also a comma -% separated list. -% \end{function} -% -% \begin{function}{\zctarget} -% \begin{syntax} -% \cs{zctarget}\marg{label}\marg{text} -% \end{syntax} -% Typesets \meta{text}, as given, and places a pair of \texttt{zlabel}s, one -% at the start of \meta{text}, using \meta{label} as label name, another one -% (internal) at the end of \meta{text}. -% \end{function} -% -% -% \begin{function}{zcregion} -% \begin{syntax} -% |\begin{zcregion}|\marg{label} -% | ...| -% |\end{zcregion}| -% \end{syntax} -% An environment that does the same as \cs{zctarget}, for cases of longer -% stretches of text. -% \end{function} -% -% -% \begin{function}{\zrefchecksetup} -% \begin{syntax} -% \cs{zrefchecksetup}\marg{options} -% \end{syntax} -% Sets \pkg{zref-check}'s options (see Section~\ref{sec:options}). -% \end{function} -% -% \bigskip{} -% -% All user commands of \pkg{zref-check} have their \marg{label} arguments -% protected for \pkg{babel} active characters using \pkg{zref}'s -% \cs{zref@wrapper@babel}, so that we should have equivalent support in that -% regard, as \pkg{zref} itself does. \pkg{zref-check} depends on \pkg{zref}, -% as the name entails, which means it is able to work with \pkg{zref} labels, -% in general created by \cs{zlabel}, but also with \cs{zctarget} and the -% \texttt{zcregion} environment provided by this package. -% -% -% \section{Checks} -% \label{sec:checks} -% -% \pkg{zref-check} provides several ``checks'' to be used with \cs{zcheck}. -% The checks may be combined in a \cs{zcheck} call, e.g.\ \opt{[close, -% after]}, or \opt{[thischap, before]}. In this case, each check in -% \meta{checks} is performed against each of the \meta{labels}. This is done -% independently for each check, which means, in practice, that the checks bear -% a logical \texttt{AND} relation to the others. Whether the combination is -% meaningful, is up to the user. As is the correspondence between the -% \meta{checks} and the \meta{text} in \cs{zcheck}. -% -% The use of checks which perform ``within the page'' comparisons -- namely -% \opt{above} and \opt{below} and, through them, \opt{before} and \opt{after} -% -- comes with some caveats you should be acquainted with. -% Section~\ref{sec:within-page-checks} discusses their limitations and expands -% on the expected workflow for their use to ensure reliable results. -% -% Note that the naming convention of the checks adopts the perspective of -% \cs{zcheck}. That is, the name of the check describes the position of the -% label being referred to, relative to the \cs{zcheck} call being made. For -% example, the \opt{before} check should issue no message if -% \cs{ztarget}|{mylabel}{...}| occurs before -% \cs{zcheck}|[before]{mylabel}{...}|. -% -% The available checks are the following: -% -% \begin{description}[leftmargin=0pt, itemindent=0pt, align=right, -% labelsep=1em, font=\MacroFont] -% -% \item[thispage] \meta{label} occurs on the same page as \cs{zcheck}. -% -% \item[prevpage] \meta{label} occurs on the previous page relative to -% \cs{zcheck}. -% -% \item[nextpage] \meta{label} occurs on the next page relative to -% \cs{zcheck}. -% -% \item[otherpage] \meta{label} occurs on a page different from that of -% \cs{zcheck}, that is, it does \emph{not} occur on \opt{thispage}. -% -% \item[pagegap] There is a page gap between \meta{label} and \cs{zcheck}, in -% other words, \meta{label} does \emph{not} occur on \opt{thispage}, -% \opt{prevpage} or \opt{nextpage}. -% -% \item[facing] On a \texttt{twoside} document, both \meta{label} and -% \cs{zcheck} fall onto a double spread, each on one of the two facing -% pages. -% -% \item[above] \meta{label} and \cs{zcheck} are both on the same page, and -% \meta{label} occurs ``above'' \cs{zcheck}. -% -% \item[below] \meta{label} and \cs{zcheck} are both on the same page, and -% \meta{label} occurs ``below'' \cs{zcheck}. -% -% \item[pagesbefore] \meta{label} occurs on any page before the one of -% \cs{zcheck}. -% -% \item[ppbefore] Convenience alias for \opt{pagesbefore}. -% -% \item[pagesafter] \meta{label} occurs on any page after the one of -% \cs{zcheck}. -% -% \item[ppafter] Convenience alias for \opt{pagesafter}. -% -% \item[before] Either \opt{above} or \opt{pagesbefore}. -% -% \item[after] Either \opt{below} or \opt{pagesafter}. -% -% \item[thischap] \meta{label} occurs on the same chapter as \cs{zcheck}. -% -% \item[prevchap] \meta{label} occurs on the previous chapter relative to the -% one of \cs{zcheck}. -% -% \item[nextchap] \meta{label} occurs on the next chapter relative to the one -% of \cs{zcheck}. -% -% \item[chapsbefore] \meta{label} occurs on any chapter before the one of -% \cs{zcheck}. -% -% \item[chapsafter] \meta{label} occurs on any chapter after the one of -% \cs{zcheck}. -% -% \item[thissec] \meta{label} occurs on the same section as \cs{zcheck}. -% -% \item[prevsec] \meta{label} occurs on the previous section (of the same -% chapter) relative to the one of \cs{zcheck}. -% -% \item[nextsec] \meta{label} occurs on the next section (of the same chapter) -% relative to the one of \cs{zcheck}. -% -% \item[secsbefore] \meta{label} occurs on any section (of the same chapter) -% before the one of \cs{zcheck}. -% -% \item[secsafter] \meta{label} occurs on any section (of the same chapter) -% after the one of \cs{zcheck}. -% -% \item[close] \meta{label} occurs within a page range from \opt{closerange} -% pages before the one of \cs{zcheck} to \opt{closerange} pages after it -% (about the \opt{closerange} option, see Section~\ref{sec:options}). -% -% \item[far] Not \opt{close}. -% -% \end{description} -% -% -% -% \section{Options} -% \label{sec:options} -% -% Options are a standard \texttt{key=value} comma separated list, and can be -% set globally either as \cs{usepackage}\oarg{options} at load-time (see -% Section~\ref{sec:loading-package}), or by means of \cs{zrefchecksetup} (see -% Section~\ref{sec:user-interface}) in the preamble. Most options can also be -% used with local effects, through the optional argument of \cs{zcheck}. -% -% \DescribeOption{hyperref} % -% Controls the use of \pkg{hyperref} by \pkg{zref-check} and takes values -% \opt{auto}, \opt{true}, \opt{false}. The default value, \opt{auto}, makes -% \pkg{zref-check} use \pkg{hyperref} if it is loaded, meaning \cs{zcheck} can -% be hyperlinked to the \emph{first label} in \meta{labels}. \opt{true} does -% the same thing, but warns if \pkg{hyperref} is not loaded (\pkg{hyperref} is -% never loaded for you). In either of these cases, if \pkg{hyperref} is -% loaded, module \pkg{zref-hyperref} is also loaded by \pkg{zref-check}. -% \opt{false} means not to use \pkg{hyperref} regardless of its availability. -% This is a preamble only option, but \cs{zcheck} provides granular control of -% hyperlinking by means of its starred version. -% -% -% \DescribeOption{msglevel} % -% Sets the level of messages issued by \cs{zcheck} failed checks and takes -% values \opt{warn}, \opt{info}, \opt{none}, \opt{infoifdraft}, -% \opt{warniffinal}. The default value, \opt{warn}, issues messages both to -% the terminal and to the log file, \opt{info} issues messages to the log file -% only, \opt{none} suppresses all messages. \opt{infoifdraft} corresponds to -% \opt{info} if option \opt{draft} is passed to \cs{documentclass}, and to -% \opt{warn} otherwise. \opt{warniffinal} corresponds to \opt{warn} if option -% \opt{final} is (explicitly) passed to \cs{documentclass} and \opt{info} -% otherwise. \opt{ignore} is provided as convenience alias for -% \opt{msglevel=none} for local use only. This option only affects the -% messages issued by the checks in \cs{zcheck}, not other messages or warnings -% of the package. In particular, it does not affect warnings issued for -% undefined labels, which just use \cs{zref@refused} and thus are the same as -% standard \LaTeX{} ones for this purpose. -% -% -% \DescribeOption{onpage} % -% Allows to control the messaging style for ``within page checks'', and takes -% values \opt{labelseq}, \opt{msg}, \opt{labelseqifdraft}, \opt{msgiffinal}. -% The default, \opt{labelseq}, uses the labels' shipout sequence, as retrieved -% from the \file{.aux} file, to infer relative position within the page. -% \opt{msg} also uses the same method for checking relative position, but -% issues a (different) message \emph{even if the check passes}, to provide a -% simple workflow for robust checking of ``false negatives'', considering the -% label sequence is not fool proof (for details and workflow recommendations, -% see Section~\ref{sec:within-page-checks}). \opt{msg} also issues its -% messages at the same level defined in \opt{msglevel}. \opt{labelseqifdraft} -% corresponds to \opt{labelseq} if option \opt{draft} is passed to -% \cs{documentclass} and to \opt{msg} otherwise. \opt{msgiffinal} corresponds -% to \opt{msg} if option \opt{final} is (explicitly) passed to -% \cs{documentclass}, and to \opt{labelseq} otherwise. -% -% -% \DescribeOption{closerange} % -% Defines the width of the range of pages, relative to the reference, that are -% considered ``close'' by the \opt{close} check. Takes a positive integer as -% value, with default 5. -% -% -% \section{Limitations} -% -% There are three qualitatively different kinds of checks being used by -% \cs{zcheck}, according to the source and reliability of the information they -% mobilize: page number checks, within page checks, and sectioning checks. -% -% -% \subsection{Page number checks} -% -% Page number checks -- \opt{thispage}, \opt{prevpage}, \opt{nextpage}, -% \opt{pagesbefore}, \opt{pagesafter}, \opt{facing} -- use the -% \texttt{abspage} property provided by the \pkg{zref-abspage} module. This -% is a solid piece of information, on which we can rely upon. However, -% despite that, page number checks may still become ill-defined, if the -% \meta{text} argument in \cs{zcheck}, when typeset, crosses page boundaries, -% starting in one page, and finishing in another. The same can happen with -% the text in \cs{zctarget} and the \texttt{zcregion} environment. -% -% This is why the user commands of this package set a pair or labels around -% \meta{text}. So, when checking \cs{zcheck} against a regular -% \texttt{zlabel} both the start and the end of the \meta{text} are checked -% against the label, and the check fails if either of them fails. When -% checking \cs{zcheck} against a \cs{zctarget} or a \texttt{zcregion}, both -% beginnings and ends are checked against each other two by two, and if any of -% them fails, the check fails. In other words, if a page number checks -% passes, we know that the entire \meta{text} arguments pass it. -% -% This is a corner case (albeit relevant) which must be taken care of, and it -% is possible to do so robustly. Hence, we can expect reliable results in -% these tests. -% -% -% \subsection{Within page checks} -% \label{sec:within-page-checks} -% -% When both label and reference fall on the same page things become much -% trickier. This is basically the case of the checks \opt{above} and -% \opt{below} (and, through them, \opt{before} and \opt{after}). There is no -% equally reliable information (that I know of) as we have for the page number -% checks for this, especially when floats come into play. Which, of course, -% is the interesting case to handle. -% -% To infer relative position of label and reference on the same page, -% \pkg{zref-check} uses the labels' shipout sequence, which is retrieved at -% load-time from the order in which the labels occur in the \file{.aux} file. -% Indeed, \pkg{zref} writes labels to the \file{.aux} file at shipout (and, -% hence, in shipout order), and needs to do so, because a number of its -% properties are only available at that point. -% -% However, even if this method will buy us a correct check for a regular float -% on a regular page (which, to be fair, is a good result), it is not difficult -% do conceive situations in which this sequence may not be meaningful, or even -% correct, for the case. A number of cases which may do so are: two column -% documents, text wrapping, scaling, overlays, etc. (I don't know if those -% make the method fail, I just don't know if they don't). Therefore, the -% \texttt{labelseq} should be taken as a \emph{proxy} and not fully reliable, -% meaning that the user should be watchful of its results. -% -% For this reason, \pkg{zref-check} provides an easy way to do so, by allowing -% specific control of the messaging style of the checks which do within page -% comparisons though the option \opt{onpage}. The concern is not really with -% false positives (getting a warning when it was not due), but with false -% negatives (not getting a warning when it was due). Hence, setting -% \opt{onpage} to \opt{msg} at a final typesetting stage (or just set it to -% \opt{labelseqifdraft} or \opt{msgiffinal} if that's part of your workflow) -% provides a way to easily identify all cases of such checks (failing or -% passing), and double-check them. In case the test is passing though, the -% message is different from that of a failing check, to quickly convey why you -% are getting the message. This option can also be set at the local level, if -% the page in question is known to be problematic, or just atypical. -% -% -% \subsection{Sectioning checks} -% -% The information used by sectioning checks is provided by means of dedicated -% counters for chapters and sections, similarly as standard counters for them, -% but which are stepped and reset regardless of whether these sectioning -% commands are numbered or not (that is, starred or not). And this for two -% reasons. First, we don't need the absolute counter value to be able to make -% the kind of relative statement we want to do here. Second, this allows us -% to have these checks work for numbered and unnumbered sectioning commands -% without having to worry about how those are used within the document. -% -% The caveat is that the package does this by hooking into \cs{chapter} and -% \cs{section}, which poses two restrictions for the proper working of these -% checks. First, we are using the new hook system for this, as provided by -% \pkg{ltcmdhooks}, which means a \LaTeX{} kernel later than 2021-06-01 is -% required. Second, since we are hooking into \cs{chapter} and \cs{section}, -% these checks presume these commands are being used by the document class for -% this purpose (either directly, or internally as, for example, KOMA-Script's -% \cs{addchap} and \cs{addsec} do). If that's not the case, additional setup -% may be needed for these checks to work as expected. -% -% -% -% \section{Change history} -% -% A change log with relevant changes for each version, eventual upgrade -% instructions, and upcoming changes, is maintained in the package's -% repository, at -% \url{https://github.com/gusbrs/zref-check/blob/main/CHANGELOG.md}. The -% change log is also distributed with the package's documentation through CTAN -% upon release so, most likely, \texttt{texdoc zref-check/changelog} should -% provide easy local access to it. An archive of historical versions of the -% package is also kept at \url{https://github.com/gusbrs/zref-check/releases}. -% -% -% -% \end{documentation} -% -% -% \begin{implementation} % % \section{Initial setup} % @@ -501,6 +72,7 @@ % the new hook system in \pkg{ltcmdhooks}, which was released with the % 2021/06/01 \LaTeX{} kernel. % \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} \IfFormatAtLeastTF{2021-06-01} {} @@ -516,7 +88,7 @@ % % Identify the package. % \begin{macrocode} -\ProvidesExplPackage {zref-check} {2022-07-07} {0.3.2} +\ProvidesExplPackage {zref-check} {2023-06-14} {0.3.3} {Flexible cross-references with contextual checks based on zref} % \end{macrocode} % @@ -531,18 +103,15 @@ % % \section{\pkg{zref} setup} % -% \begin{variable}{\g_@@_abschap_int, \g_@@_abssec_int} -% Provide absolute counters for section and chapter, and respective -% \pkg{zref} properties, so that we can make checks about relation of -% chapters/sections regardless of internal counters, since we don't get -% those for the unnumbered (starred) ones. Thanks Ulrike Fischer for -% suggestions at TeX.SX about the proper place to make the hooks for this -% purpose. +% Provide absolute counters for section and chapter, and respective \pkg{zref} +% properties, so that we can make checks about relation of chapters/sections +% regardless of internal counters, since we don't get those for the unnumbered +% (starred) ones. Thanks Ulrike Fischer for suggestions at TeX.SX about the +% proper place to make the hooks for this purpose. % \begin{macrocode} \newcounter { zc@abschap } \newcounter { zc@abssec } [ zc@abschap ] % \end{macrocode} -% \end{variable} % % % If the documentclass does not define \cs{chapter} the only thing that @@ -2404,13 +1973,9 @@ % \end{macro} % % -% -% % \begin{macrocode} % % \end{macrocode} % % \PrintIndex % -% \end{implementation} -% diff --git a/macros/latex/contrib/zref-check/zref-check.ins b/macros/latex/contrib/zref-check/zref-check.ins index fe58b39e69..e0511ea791 100644 --- a/macros/latex/contrib/zref-check/zref-check.ins +++ b/macros/latex/contrib/zref-check/zref-check.ins @@ -4,7 +4,7 @@ % % This file is part of the LaTeX package "zref-check". % -% Copyright (C) 2021-2022 Gustavo Barros +% Copyright (C) 2021-2023 Gustavo Barros % % It may be distributed and/or modified under the conditions of the % LaTeX Project Public License (LPPL), either version 1.3c of this @@ -22,7 +22,7 @@ % % This work consists of the files zref-check.dtx, % zref-check.ins, -% zref-check.tex, +% zref-check-doc.tex, % zref-check-code.tex, % and the files generated from them. % @@ -50,7 +50,7 @@ This file was generated from file(s) of the LaTeX package "zref-check". -Copyright (C) 2021-2022 Gustavo Barros +Copyright (C) 2021-2023 Gustavo Barros It may be distributed and/or modified under the conditions of the LaTeX Project Public License (LPPL), either version 1.3c of this @@ -68,7 +68,7 @@ This work is "maintained" (as per LPPL maintenance status) by This work consists of the files zref-check.dtx, zref-check.ins, - zref-check.tex, + zref-check-doc.tex, zref-check-code.tex, and the files generated from them. diff --git a/macros/latex/contrib/zref-check/zref-check.pdf b/macros/latex/contrib/zref-check/zref-check.pdf deleted file mode 100644 index b3d67a8f98..0000000000 Binary files a/macros/latex/contrib/zref-check/zref-check.pdf and /dev/null differ diff --git a/macros/latex/contrib/zref-check/zref-check.tex b/macros/latex/contrib/zref-check/zref-check.tex deleted file mode 100644 index de1cdb8225..0000000000 --- a/macros/latex/contrib/zref-check/zref-check.tex +++ /dev/null @@ -1,94 +0,0 @@ -% \iffalse meta-comment -% -% File: zref-check.tex -% -% This file is part of the LaTeX package "zref-check". -% -% Copyright (C) 2021-2022 Gustavo Barros -% -% It may be distributed and/or modified under the conditions of the -% LaTeX Project Public License (LPPL), either version 1.3c of this -% license or (at your option) any later version. The latest version -% of this license is in the file: -% -% https://www.latex-project.org/lppl.txt -% -% and version 1.3 or later is part of all distributions of LaTeX -% version 2005/12/01 or later. -% -% -% This work is "maintained" (as per LPPL maintenance status) by -% Gustavo Barros. -% -% This work consists of the files zref-check.dtx, -% zref-check.ins, -% zref-check.tex, -% zref-check-code.tex, -% and the files generated from them. -% -% The released version of this package is available from CTAN. -% -% ----------------------------------------------------------------------- -% -% The development version of the package can be found at -% -% https://github.com/gusbrs/zref-check -% -% for those people who are interested. -% -% ----------------------------------------------------------------------- -% -% \fi - -\documentclass{l3doc} - -% Have \GetFileInfo pick up date and version data -\usepackage{zref-check} - -\NewDocumentCommand\opt{m}{\texttt{#1}} -% Temporary workaround for 'l3doc' bug. -% https://github.com/latex3/latex3/issues/1111 -% FIXME Remove when fixed upstream. -\NewDocElement[ - macrolike = false , - printtype = \textit{opt.} , -]{Option}{optiondesc} - -\begin{document} - -\GetFileInfo{zref-check.sty} - -\title{% - The \pkg{zref-check} package% - \thanks{This file describes \fileversion, released \filedate.}% -} - -\author{% - Gustavo Barros% - \thanks{\url{https://github.com/gusbrs/zref-check}}% -} - -\date{\filedate} - -\maketitle - -\begin{abstract} - \pkg{zref-check} provides an user interface for making \LaTeX{} - cross-references flexibly, while allowing to have them checked for - consistency with the document structure as typeset. Statements such as - ``above'', ``on the next page'', ``previously'', ``as will be discussed'', - ``on the previous chapter'' and so on can be given to \cs{zcheck} in - free-form, and a set of ``checks'' can be specified to be run against a - given \texttt{label}, which will result in a warning at compilation time if - any of these checks fail. \cs{zctarget} and the \texttt{zcregion} - environment are also defined as a means to easily set label targets to - arbitrary places in the text which can be referred to by \cs{zcheck}. -\end{abstract} - -\tableofcontents - -\DisableImplementation - -\DocInput{zref-check.dtx} - -\end{document} diff --git a/macros/latex/contrib/zref-clever/CHANGELOG.md b/macros/latex/contrib/zref-clever/CHANGELOG.md index 8cbd673f55..7c02e101a0 100644 --- a/macros/latex/contrib/zref-clever/CHANGELOG.md +++ b/macros/latex/contrib/zref-clever/CHANGELOG.md @@ -1,6 +1,38 @@ # Changelog -## [Unreleased](https://github.com/gusbrs/zref-clever/compare/v0.3.6...HEAD) +## [Unreleased](https://github.com/gusbrs/zref-clever/compare/v0.4.0...HEAD) + +## [v0.4.0](https://github.com/gusbrs/zref-clever/compare/v0.3.6...v0.4.0) (2023-06-14) + +### Added +- `labelhook` option, controlling whether to set a `\zlabel` alongside a + standard `\label`. This option uses the kernel's new `label` hook, which + significantly improves and simplifies the task of setting a `\zlabel` in + places where this is not directly supported. The option is enabled by + default, and strongly recommended. It is not expected that this change will + bring backward compatibility problems, `\zlabel`s continue to work just as + before, and the places where a `\label` is required will also continue to + work the same way. The only case I see where you might need to adjust + existing documents is if you already had both `\label`s and `\zlabel`s with + the same names, in which case now you'll have a duplicate `zlabel` and will + indeed have to correct it. Also, you may be interested in taking a look at + the "`\label` or `\zlabel`?" section of the User manual, since the option + opens the possibility of a different approach in label setting in your + documents. + +### Changed +- Given the new `labelhook` option and the fact that it requires both the new + `label` hook and the new hooks with options released in the latest LaTeX + kernel, the kernel version required by `zref-clever` has been bumped to + 2023-06-01. + +### Removed +- Given the new `labelhook` option, the parts of compatibility modules which + provided for setting `\zlabel`s with `\label` in places where the former is + not supported have been removed. These would conflict with the new option, + and the use of the `label` hook for this purpose renders them unnecessary + and is superior in every aspect. Namely, the compatibility modules changed + in this fashion are: `amsmath`, `memoir`, and `listings`. ## [v0.3.6](https://github.com/gusbrs/zref-clever/compare/v0.3.5...v0.3.6) (2023-02-21) diff --git a/macros/latex/contrib/zref-clever/zref-clever-code.pdf b/macros/latex/contrib/zref-clever/zref-clever-code.pdf index 87eb00b7d8..f2e55277a1 100644 Binary files a/macros/latex/contrib/zref-clever/zref-clever-code.pdf and b/macros/latex/contrib/zref-clever/zref-clever-code.pdf differ diff --git a/macros/latex/contrib/zref-clever/zref-clever-code.tex b/macros/latex/contrib/zref-clever/zref-clever-code.tex index ba3a5eaaa2..ec9210dd67 100644 --- a/macros/latex/contrib/zref-clever/zref-clever-code.tex +++ b/macros/latex/contrib/zref-clever/zref-clever-code.tex @@ -22,7 +22,7 @@ % % This work consists of the files zref-clever.dtx, % zref-clever.ins, -% zref-clever.tex, +% zref-clever-doc.tex, % zref-clever-code.tex, % and the files generated from them. % diff --git a/macros/latex/contrib/zref-clever/zref-clever-doc.pdf b/macros/latex/contrib/zref-clever/zref-clever-doc.pdf new file mode 100644 index 0000000000..46429193c9 Binary files /dev/null and b/macros/latex/contrib/zref-clever/zref-clever-doc.pdf differ diff --git a/macros/latex/contrib/zref-clever/zref-clever-doc.tex b/macros/latex/contrib/zref-clever/zref-clever-doc.tex new file mode 100644 index 0000000000..23645f429e --- /dev/null +++ b/macros/latex/contrib/zref-clever/zref-clever-doc.tex @@ -0,0 +1,2682 @@ +% \iffalse meta-comment +% +% File: zref-clever.tex +% +% This file is part of the LaTeX package "zref-clever". +% +% Copyright (C) 2021-2023 Gustavo Barros +% +% It may be distributed and/or modified under the conditions of the +% LaTeX Project Public License (LPPL), either version 1.3c of this +% license or (at your option) any later version. The latest version +% of this license is in the file: +% +% https://www.latex-project.org/lppl.txt +% +% and version 1.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% +% This work is "maintained" (as per LPPL maintenance status) by +% Gustavo Barros. +% +% This work consists of the files zref-clever.dtx, +% zref-clever.ins, +% zref-clever-doc.tex, +% zref-clever-code.tex, +% and the files generated from them. +% +% The released version of this package is available from CTAN. +% +% ----------------------------------------------------------------------- +% +% The development version of the package can be found at +% +% https://github.com/gusbrs/zref-clever +% +% for those people who are interested. +% +% ----------------------------------------------------------------------- +% +% \fi + +\documentclass{l3doc} + +% The package itself *must* be loaded so that \GetFileInfo can pick up date +% and version data. Naturally, we also use it. +\usepackage{zref-clever} +\zcsetup{cap} +\usepackage{zref-check} +\usepackage{zref-titleref} + +\usepackage[T1]{fontenc} + +\usepackage[sc]{mathpazo} +\linespread{1.05} +\usepackage[scale=.88]{tgheros} % sans +\usepackage[varqu,scaled=1.03]{inconsolata} % tt + +\usepackage{listings} + +\usepackage{microtype} + +\hypersetup{hidelinks} + +\NewDocumentCommand\opt{m}{\texttt{#1}} + +\NewDocumentCommand\username{m}{`\texttt{#1}'} + +\setlength{\marginparsep}{2\labelsep} + +\definecolor{reffmtbox}{gray}{0.15} +\definecolor{reffmtback}{gray}{0.85} +\NewDocumentCommand\reffmt{m}{% + \fcolorbox{reffmtbox}{reffmtback}{% + \rule[-0.2\baselineskip]{0pt}{0.8\baselineskip}\texttt{#1}}} + +\newlist{refformat}{itemize}{1} +\setlist[refformat]{label={}, beginpenalty=500, midpenalty=500} + +\NewDocumentCommand\zctask{m}{% + \begin{description} + \item[Task] #1 + \end{description}} + +\lstdefinestyle{code}{ + language=[LaTeX]TeX, + moretexcs={ + AddToHook, + define@key, + patchcmd, + eq@setnumber, + DeclareFloatingEnvironment, + newlist, + setlist, + zexternaldocument, + next@label, + next@label@pre, + @empty, + tag, + text, + lstset, + condition, + RenewDocumentCommand, + NewCommandCopy, + ltx@gobble, + @currentcounter, + zref@label, + zref@wrapper@babel, + zref@ifpropundefined, + zref@setcurrent, + zref@newprop, + zref@addprop, + beamer@old@zref@label, + alt, + beamer@nameslide, + beamer@dummynameslide, + ordinal, + tcbuselibrary, + tcbset, + newtcolorbox, + newtcbtheorem, + } +} +\lstdefinestyle{zrefclever}{ + style=code, + moretexcs={ + zcref, + zcpageref, + zlabel, + zcsetup, + zcLanguageSetup, + zcRefTypeSetup, + zcheck, + zvref, + zvpageref, + zvrefrange, + zvpagerefrange, + zfullref, + } +} +\lstset{ + style=zrefclever, + basicstyle=\ttfamily\small, + columns=fullflexible, + keepspaces, + xleftmargin=\leftmargin, + xrightmargin=.5\leftmargin, +} +% Setup inspired by https://tex.stackexchange.com/a/4068. For how to use these +% environments in a .dtx context see https://tex.stackexchange.com/a/31026. +\newcounter{zchowto} +\lstnewenvironment{zchowto}[1][]{% + \renewcommand{\lstlistingname}{How-to}% + \renewcommand*\theHlstlisting{ht.\thelstlisting}% + \lstset{#1}% + \setcounter{lstlisting}{\value{zchowto}}% +}{} +\newcounter{zcworkaround} +\lstnewenvironment{zcworkaround}[1][]{% + \renewcommand{\lstlistingname}{Work-around}% + \renewcommand*\theHlstlisting{wa.\thelstlisting}% + \lstset{#1}% + \setcounter{lstlisting}{\value{zcworkaround}}% +}{} +\lstnewenvironment{zcexample}[1][]{% + \renewcommand{\lstlistingname}{Example}% + \lstset{#1}% +}{} +\ExplSyntaxOn +\makeatletter +\lst@AddToHook { PreInit } + { + \cs_if_exist:cT { c@ \lstenv@name } + { \exp_args:Nx \refstepcounter { \lstenv@name } } + } +\makeatother +\ExplSyntaxOff + +\zcRefTypeSetup{zchowto}{ + Name-sg = {How-to}, + name-sg = {how-to}, + Name-pl = {How-tos}, + name-pl = {how-tos}, +} +\zcRefTypeSetup{zcworkaround}{ + Name-sg = {Work-around}, + name-sg = {work-around}, + Name-pl = {Work-arounds}, + name-pl = {work-arounds}, +} + +\begin{document} + +\GetFileInfo{zref-clever.sty} + +\title{% + The \pkg{zref-clever} package% + \thanks{This file describes \fileversion, released \filedate.}% + \texorpdfstring{\\{}\medskip{}}{ - }% + User manual% + \texorpdfstring{\medskip{}}{}% +} + +\author{% + Gustavo Barros% + \thanks{\url{https://github.com/gusbrs/zref-clever}}% +} + +\date{\filedate} + +\maketitle + +\begin{center} + {\bfseries \abstractname\vspace{-.5em}\vspace{0pt}} +\end{center} + +\begin{quotation} + \pkg{zref-clever} provides a user interface for making \LaTeX{} + cross-references which automates some of their typical features, thus easing + their input in the document and improving the consistency of typeset + results. A reference made with \cs{zcref} includes a ``name'' according to + its ``type'' and lists of multiple labels can be automatically sorted and + compressed into ranges when due. The reference format is highly and easily + customizable, both globally and locally. \pkg{zref-clever} is based on + \pkg{zref}'s extensible referencing system. +\end{quotation} + +\bigskip{} + +\begin{center} + \textbf{EXPERIMENTAL} + + Please read \zcref{sec:warning} carefully. +\end{center} + +\clearpage{} + +\tableofcontents + +\clearpage{} + +\section{Introduction} + +Cross-referencing is an area which lends itself quite naturally to automation. +Not only for input convenience but also, and most importantly, for end results +consistency. Indeed, the standard \LaTeX{} cross-referencing system -- with +\cs{label}, \cs{ref}, and \cs{pageref} -- is already a form of automation, by +relieving us from checking the number of the referenced object, and the page +where it lies. + +But the plethora of existing features, packages and document classes which, in +one way or another, extends this basic functionality is a clear indication of +a demand for more automation. Just to name the most popular: \pkg{cleveref}, +\pkg{hyperref}, \pkg{titleref}, \pkg{nameref}, \pkg{varioref}, \pkg{fancyref}, +and the kernel's \cs{labelformat}. + +However, the standard cross-referencing system stores two, and only two, +properties with the label: the printed representation of the counter last +incremented with \cs{refstepcounter} and the page. Of course, out of the +mentioned desire to automate more, the need arose to store more information +about the label to support this: the title or caption of the referenced +object; its counter or, even better, its ``type'', that is, whether it is a +section, chapter, figure, etc.; its hyperlink anchor, and so on. Thus those +two property ``fields'' of the standard label became quite a disputed real +state. And the packages in this area of functionality were bound to step on +each other's toes as a result. + +Out of this conundrum, Heiko Oberdiek eventually developed \pkg{zref}, which +implements an extensible referencing system, making the labels store a +property list of flexible length, so that new properties can be easily added +and queried. However, even when \pkg{zref} can rightfully boast this powerful +basic concept and is really quite featureful, with several different modules +available, it is fair to say that, for the average user, the package may +appear to be somewhat raw. Indeed, for someone who ``just wants to make a +cross-reference'', the user interface of the \pkg{zref-user} module is akin to +the standard \LaTeX{} cross-referencing system, and even requires some extra +work if you want to have a hyperlinked reference. In other words, \pkg{zref} +seems to have focused on infrastructure and on performing a number of +specialized tasks with different modules, and a large part of the landscape of +automation features available for the standard referencing system was not +carried over to \pkg{zref}, neither by the \pkg{zref} itself nor by other +packages. + +\pkg{zref-clever} tries to cover this gap, by bringing a number of existing +features available for the standard referencing system to \pkg{zref}. And the +package's name makes it clear that the core of the envisaged feature set is +that of \pkg{cleveref}, even though the attempt was less one of replicating +functionality per se than that of having it as a successful point of +reference, from where we could then try to tap into \pkg{zref}'s potential. +Indeed, although there is a significant intersection, the features of +\pkg{zref-clever} are neither a superset nor a subset of those of +\pkg{cleveref}. There are things either of them can do that the other can't. +There are also important differences in user interface design. In particular, +\pkg{zref-clever} relies heavily on \texttt{key=value} interfaces both for +general configuration and for centering in a single user command, \cs{zcref}, +as the main entrance for reference making, whose behavior can be modulated by +local options. + +Considering that \pkg{zref} itself offers the \pkg{zref-titleref} module, and +that \pkg{zref-vario} offers integration of \pkg{zref-clever} with +\pkg{varioref}, a significant part of the most prominent automation features +available to the standard referencing system is thus brought to \pkg{zref}, +working under a single consistent underlying infrastructure and user +interface. Alas, there are some limitations (see \zcref{sec:limitations}), +and it may be your cup of tea or not. Still, all in all, hopefully +\pkg{zref-clever} can make \pkg{zref} more accessible to the average user, and +more interesting to users in general. + + +\section{Warning} +\zlabel{sec:warning} + +This package is in its early days, and should be considered experimental. By +this I don't mean I expect it to be ``edgy'', indeed quite a lot of effort has +been put into it so that this is not the case. However, during the initial +development, I had to make a number of calls for which I felt I had +insufficient information: in relation to features, packages, or classes I +don't use much, or to languages I don't know well, user needs I found hard to +anticipate etc. Hence, the package needs some time, and some use by more +adventurous people, until it can settle down with more conviction. In the +meantime, polishing the user interface and the infrastructure have a clear +priority over backward compatibility. So, if you choose to use this package, +you should be ready to accommodate to eventual upstream changes. + + +\section{\pkg{zref-clever} for the impatient} + +\pkg{zref-clever} is based on \pkg{zref}'s referencing system which, though +independent of the standard one, is very similar to it in its user interface. +Indeed, to use \pkg{zref}, instead of setting a \cs{label} and making a +\cs{ref}, one would set a \cs{zlabel} and make \cs{zref}s to it, in pretty +much the same way as for the standard system. \pkg{zref-clever} introduces +the more featureful \cs{zcref} for making references, but relies on +\pkg{zref}'s \cs{zlabel} for label setting. \pkg{zref-clever} provides that a +\cs{label} also sets a \cs{zlabel} with the same name using the kernel's +\texttt{label} hook (see the \opt{labelhook} option in \zcref{sec:options}), +so that you can use it too with standard \cs{label}s (see the +\zcref{sec:label-or-zlabel} for discussion). + +A basic document using \pkg{zref-clever} is shown in \zcref{how:basic} which, +despite the small necessary adjustments, should feel very familiar to any +\LaTeX{} user acquainted with the standard referencing system: + +\begin{zchowto}[caption={Basic usage},label={how:basic}] +\documentclass{article} +\usepackage{zref-clever} +\usepackage{hyperref} +\begin{document} +\section{Section 1} +\zlabel{sec:section-1} +\begin{figure} + A figure. + \caption{Figure 1} + \zlabel{fig:figure-1} +\end{figure} +A reference to \zcref{sec:section-1}. \zcref[S]{fig:figure-1} shows some +interesting information. +A page reference can be done with either \zcpageref{sec:section-1} or with +\zcref[page]{sec:section-1}. +A reference can also be made to multiple labels, as in \zcref{sec:section-1, + fig:figure-1}. +\end{document} +\end{zchowto} + +The references in the document of \zcref{how:basic} illustrate one of the main +features of \pkg{zref-clever}, which is to include an appropriate ``type +name'' of the reference, alongside of the reference itself. The document +renders its references as: +\begin{quote} + A reference to section 1. Figure 1 shows some interesting information. A + page reference can be done with either page 1 or with page 1. A reference + can also be made to multiple labels, as in section 1 and figure 1. +\end{quote} + +\zcref[S]{how:basic} also illustrates the use the optional argument of +\cs{zcref} to modulate the behavior of the reference. In particular, the +\opt{S} option is one you should get acquainted with from the start, as it +ensures that the type name of a reference is properly capitalized and not +abbreviated, and it is meant to be used in references made at the beginning of +a sentence. + +But \pkg{zref-clever} is highly customizable, and several other options exist, +and multiple places where you can set them: + +\begin{itemize} +\item The optional argument of \cs{zcref}: for individual references. +\item \cs{zcsetup}: for settings meant to affect all references. +\item \cs{zcRefTypeSetup}: to customize the behavior of each reference type. +\item \cs{zcLanguageSetup}: for language-specific settings. +\end{itemize} + +For the list of available options, and for these different scopes in which +they can be used, see \zcref{sec:user-interface, sec:options, + sec:reference-format, sec:internationalization}. Other usage examples are +available at \zcref{sec:how-tos}. + + +\section{Loading the package} +\zlabel{sec:loading-package} + +\pkg{zref-clever} can be loaded with the usual: + +\begin{zcexample} +\usepackage{zref-clever} +\end{zcexample} + +The package does not accept load-time options, package options must be set +using \cs{zcsetup} (see \zcref{sec:user-interface}). + +\pkg{zref-clever} requires a recent \LaTeX{} kernel (2023-06-01 or newer) and +the packages \pkg{zref}, including some of its modules, and \pkg{ifdraft}. It +also requires UTF-8 input encoding, which has been the kernel's default for +some time. + + +\section{Dependencies} + +\pkg{zref-clever} requires \pkg{zref}, and \LaTeX{} kernel 2023-06-01, or +newer. It also needs \pkg{ifdraft}. Some packages are leveraged by +\pkg{zref-clever} if they are present, but are not loaded by default or +required by it, namely: \pkg{hyperref}, \pkg{zref-check}, and \pkg{zref}'s +\pkg{zref-titleref}, \pkg{zref-hyperref}, and \pkg{zref-xr} modules. + + +\section{User interface} +\zlabel{sec:user-interface} + +\begin{function}{\zcref} + \begin{syntax} + \cs{zcref}\meta{*}\oarg{options}\marg{labels} + \end{syntax} +\end{function} +Typesets references to \meta{labels}, given as a comma separated list. When +\pkg{hyperref} support is enabled, references will be hyperlinked to their +respective anchors, according to options. The starred version of the command +does the same as the plain one, just does not form links. The \meta{options} +are (mostly) the same as those of the package, and can be given to local +effect. The \meta{labels} argument is protected by \pkg{zref}'s +\cs{zref@wrapper@babel}, so that it enjoys the same support for \pkg{babel}'s +active characters as \pkg{zref} itself does. + +\begin{function}{\zcpageref} + \begin{syntax} + \cs{zcpageref}\meta{*}\oarg{options}\marg{labels} + \end{syntax} +\end{function} +Typesets page references to \meta{labels}, given as a comma separated list. +It is equivalent to calling \cs{zcref} with the \opt{ref=page} option: +\cs{zcref}\texttt{\meta{*}[}\meta{options}\texttt{,ref=page]}\marg{labels}. + + +\begin{function}{\zcsetup} + \begin{syntax} + \cs{zcsetup}\marg{options} + \end{syntax} +\end{function} +Sets \pkg{zref-clever}'s general options (see \zcref{sec:options, + sec:reference-format}). The settings performed by \cs{zcsetup} are local, +within the current group. But, of course, it can also be used to global +effects if ungrouped, e.g.\ in the preamble. + +\begin{function}{\zcRefTypeSetup} + \begin{syntax} + \cs{zcRefTypeSetup}\marg{type}\marg{options} + \end{syntax} +\end{function} +Sets type-specific reference format options (see +\zcref{sec:reference-format}). Just as for \cs{zcsetup}, the settings +performed by \cs{zcRefTypeSetup} are local, within the current group. + +\bigskip{} + +Besides these, user facing commands related to \zcref*[ref=title, + noname]{sec:internationalization} are presented in +\zcref{sec:internationalization}. Note still that all user commands are +defined with \cs{NewDocumentCommand}, which translates into the usual handling +of arguments by it and/or processing by \pkg{l3keys}, particularly with regard +to brace-stripping and space-trimming. + +Furthermore, \pkg{zref-clever} loads \pkg{zref}'s \pkg{zref-user} module by +default. So you also have its user commands available out of the box, +including \cs{zref} and \cs{zpageref}, but notably: + +\begin{function}{\zlabel} + \begin{syntax} + \cs{zlabel}\marg{label} + \end{syntax} +\end{function} +Sets \meta{label} for referencing with \cs{zref} and, thus, also \cs{zcref}. +\cs{zlabel} is provided by \pkg{zref-user} and is the counterpart of +\cs{label} for \pkg{zref}'s referencing system. + + +\section{\cs{label} or \cs{zlabel}?} +\zlabel{sec:label-or-zlabel} + +Technically, \pkg{zref}'s referencing system, and thus also \pkg{zref-clever}, +require a label set with \cs{zlabel} to make a reference. However, the +\opt{labelhook} option (see \zcref{sec:options}) leverages the kernel's +\texttt{label} hook to also set a \cs{zlabel} when a standard \cs{label} is +called, so that we can simply use \cs{label}s in our document and refer to +them with either referencing system. Indeed, in some places the use of +\cs{label} this way may be required (see +\zcref{sec:limitations,sec:comp-modules}). That given, which is to be +preferred: use \cs{label} all around or normally use \cs{zlabel} and, +occasionally resort to \cs{label} where required? I guess it depends, but we +can reason the pros and cons of both alternatives. + +Simply using \cs{label} across your document clearly speaks for convenience. +You don't have to worry with the exceptional case where a \cs{zlabel} may not +work or setting it is not possible. You can use either referencing system for +your labels as desired. Your favorite editor may have some facilities to ease +the insertion of labels, but does not support \cs{zlabel}. And so on. The +only disadvantage I can see with this approach is that two labels end up in +the \file{.aux} file which, arguably, may be seen as a redundancy, or waste. + +It is probably fair to consider this redundancy, in most use cases, as a +negligible cost. But you may disagree, or the size of your document or your +requirements may say otherwise, in which case you may prefer the second +approach and use \cs{zlabel} normally, with some occasional \cs{label} where +needed. Known relevant cases where \cs{label} is required are documented in +the manual (see \zcref{sec:how-tos,sec:limitations,sec:comp-modules}), but +some trial and error can easily cover the gap for the remaining cases. They +are also rare cases. So finding out where \cs{label} is required should not +be much of a trouble either. + +I think the first approach does deserve the status of ``recommended'' for +normal use cases and documents. Despite that, note that the examples of this +manual typically use the second approach. There's a historic reason for this, +since most of them were created before the kernel's \texttt{label} hook was +available, so that it was really the only approach. However, I'll keep the +examples this way, notwithstanding this recommendation, because it is also +important to document the limitations of directly using \cs{zlabel}, for those +who may want to use the second approach. + + +\section{Options} +\zlabel{sec:options} + +\pkg{zref-clever} is highly configurable, offering a lot of flexibility in +typeset results of the references, but it also tries to keep these ``handles'' +as convenient and user friendly as possible. To this end, most of what one +can do with \pkg{zref-clever} (pretty much all of it), can be achieved +directly through the standard and familiar ``comma separated list of +\texttt{key=value} options''. + +There are two main groups of options in \pkg{zref-clever}: ``general +options'', which affect the overall behavior of the package, or the reference +as a whole; and ``reference format options'', which control the detail of +reference formatting, including type-specific and language-specific settings. + +This section covers the first group (for the second one, see +\zcref{sec:reference-format}). General options can be set globally by means +of \cs{zcsetup} in the preamble (see \zcref{sec:user-interface}). They can +also be set locally with \cs{zcsetup} along the document or through the +optional argument of \cs{zcref} (see \zcref{sec:user-interface}). Most +general options can be used in any of these contexts, but that is not +necessarily true for all cases, some restrictions may apply, as described in +each option's documentation. + +\bigskip{} + +\DescribeOption{ref} % +\DescribeOption{page} % +The \opt{ref} option controls the label property to which \cs{zcref} refers +to. It can receive \pkg{zref} properties, as long as they are declared, but +notably \texttt{default}, \texttt{page}, \texttt{thecounter} and, if +\pkg{zref-titleref} is loaded, \texttt{title}. The package's default is, +well, \texttt{default}, which is our standard reference. \texttt{thecounter} +is a property set by \pkg{zref-clever} and is similar to \pkg{zref}'s +\texttt{default} property, except that it is not affected by the kernel's +\cs{labelformat}.\footnote{Technical note: the \texttt{default} property + stores \cs{@currentlabel}, while the \texttt{thecounter} property stores + \cs{the}\cs{@currentcounter}. The later is exactly what \cs{refstepcounter} + uses to build \cs{@currentlabel}, except for the \cs{labelformat} prefix + and, hence, has the advantage of being unaffected by it. But the former is + \emph{more reliable} since \cs{@currentlabel} is expected to be correct + pretty much anywhere whereas, although \cs{refstepcounter} does set + \cs{@currentcounter}, it is not everywhere that uses \cs{refstepcounter} for + the purpose. In the cases where the references from these two do diverge, + \pkg{zref-clever} will likely misbehave (reference type, sorting and + compression inevitably depend on a correct \opt{currentcounter}), but using + \texttt{default} at least ensures that the reference itself is correct. + That said, if you do set \cs{labelformat} for some reason, + \texttt{thecounter} may be useful.} By default, reference formatting, +sorting, and compression are done according to information inferred from the +\emph{current counter} (see \opt{currentcounter} option below). Special +treatment in these areas is provided for \texttt{page}, but not for any other +properties. The \opt{page} option is a convenience alias for +\texttt{ref=page}. + +\DescribeOption{typeset} % +\DescribeOption{noname} % +\DescribeOption{noref} % +When \cs{zcref} typesets a set of references, each group of references of the +same type can be, and by default are, preceded by the type's ``name'', and +this is indeed an important feature of \pkg{zref-clever}. This is optional +however, and the \opt{typeset} option controls this behavior. It can receive +values \texttt{ref}, in which case it typesets only the reference(s), +\texttt{name}, in which case it typesets only the name(s), or \texttt{both}, +in which case it typesets, well, both of them. Note that, when value +\texttt{name} is used, the name is still typeset according to the set of +references given to \cs{zcref}. For example, for multiple references, the +plural form is used, capitalization options are honored, etc. Also +hyperlinking behaves just \emph{as if} the references were present and, +depending on the corresponding options, the name may be linked to the first +reference of the type group. The \opt{noname} and \opt{noref} options are +convenience aliases for \texttt{typeset=ref} and \texttt{typeset=name}, +respectively. + +\DescribeOption{sort} % +\DescribeOption{nosort} % +The \opt{sort} option controls whether the list of \meta{labels} received as +argument by \cs{zcref} should be sorted or not. It is a boolean option, and +defaults to \texttt{true}. The \opt{nosort} option is a convenience alias for +\texttt{sort=false}. + +\DescribeOption{typesort} % +\DescribeOption{notypesort} % +Sorting references of the same type can be done with well defined logical +criteria. They either have the same counter or their counters share a clear +hierarchical relation (in the resetting behavior), such that a definite +sorting rule can be inferred from the label's data. The same is not true for +sorting of references of different types. Should ``tables'' come before or +after ``figures''? The \pkg{typesort} option allows to specify the sorting +priority of different reference types. It receives as value a comma separated +list of reference types, specifying that their sorting is to be done in the +order of that list. But \opt{typesort} does not need to receive \emph{all} +possible reference types. The special value \texttt{\{\{othertypes\}\}} (yes, +double braced, one for \pkg{l3keys}, so that the second can make the list) can +be placed anywhere along the list, to specify the sort priority of any type +not included explicitly. If \texttt{\{othertypes\}} is not present in the +list, it is presumed to be at the end of it. Any unspecified types (that is, +those falling implicitly or explicitly into the \texttt{\{othertypes\}} +category) get sorted between themselves in the order of their first appearance +in the label list given as argument to \cs{zcref}. I presume the common use +cases will not need to specify \texttt{\{othertypes\}} at all but, for the +sake of example, if you just really dislike equations, you could use +\texttt{typesort=\{\{\{othertypes\}\}, equation\}}. \opt{typesort}'s default +value is \texttt{\{part, chapter, section, paragraph\}}, which places the +sectioning reference types first in the list, in their hierarchical order, and +leaves everything else to the order of appearance of the labels. The +\opt{notypesort} option behaves like \texttt{typesort=\{\{\{othertypes\}\}\}} +would do, that is, it sorts all types in the order of the first appearance in +the labels' list. + +\DescribeOption{comp} % +\DescribeOption{nocomp} % +\cs{zcref} can automatically compress a set of references of the same type +into a range, when they occur in immediate sequence. The \opt{comp} controls +whether this compression should take place or not. It is a boolean option, +and defaults to \texttt{true}. The \opt{nocomp} option is a convenience alias +for \texttt{comp=false}. Of course, for better compression results the +\opt{sort} is recommended, but the two options are technically independent. + +\DescribeOption{endrange} % +The \opt{endrange} option provides additional control over how the end +reference of a range is typeset, so as to achieve terse ranges. The option +can operate in two technically different ways. It may receive one of a number +of predefined values, which can process the end reference of the range, +comparing it with the beginning reference, to achieve a given end +result.\footnote{For the \TeX{}nically inclined: those values that perform + some processing -- namely \texttt{stripprefix}, \texttt{pagecomp}, and + \texttt{pagecomp2} -- fully expand the references (\texttt{x}-type + expansion) before comparing them, since it makes sense to perform this task + as close as possible to the printed representation of the references. I + don't expect this to be a problem in normal use cases, but it does represent + a limitation on what the references can contain. In case some control over + this is needed, check the \texttt{zref-clever/endrange-setup} hook in the + code documentation.} Or, it can specify a label property to be used +directly, without any processing. The available predefined values are: +\texttt{ref}, \texttt{stripprefix}, \texttt{pagecomp}, and \texttt{pagecomp2}. +\texttt{ref} corresponds to the default behavior, and instructs \cs{zcref} to +use whatever property was set at the \opt{ref} option for the end of range +reference. \texttt{stripprefix} strips the common part at the start of each +reference from the end one. \texttt{pagecomp} is the equivalent of +\texttt{stripprefix} for page numbers, it does the same thing, but only if the +references are comprised exclusively of Arabic numerals. \texttt{pagecomp2} +is a variant of \texttt{pagecomp} that leaves at least two digits at the end +reference (except for a leading zero). If values other than the predefined +ones are given to \opt{endrange} they are considered as label properties, as +long as they are declared. This property is used to typeset the end of range +reference if the label contains it, and if both references would be +``compressible'' according to the \opt{comp} option, otherwise the property +specified by the \opt{ref} option is used. This is useful for things like +sub-elements for which we can build a proper abbreviated sub-reference and +populate the label with it (some compatibility modules already provide a +number of such properties, but other ones can be built with \pkg{zref}, as +needed). + +\DescribeOption{range} % +\DescribeOption{rangetopair} % +By default (that is, when the \opt{range} option is not given), \cs{zcref} +typesets a complete list of references according to the \meta{labels} it +received as argument, and only compresses some of them into ranges if the +\opt{comp} option is enabled and if references of the same type occur in +immediate sequence. The \opt{range} option makes \cs{zcref} behave +differently. Sorting is implied by this option (the \opt{sort} option is +disregarded) and, for each reference type group in \meta{labels}, \cs{zcref} +builds a range from the first to the last reference in it, even if references +in between do not occur in immediate sequence. It is a boolean option, and +the package's default is \texttt{range=false}. The option given without a +value is equivalent to \texttt{range=true} (in the \pkg{l3keys}' jargon, the +\emph{option}'s default is \texttt{true}). \cs{zcref} is smart enough to +recognize when the first and last references of a type do happen to be +contiguous, in which case it typesets a ``pair'', instead of a ``range''. But +this behavior can be disabled by setting the \opt{rangetopair} option to +\texttt{false}. + +\DescribeOption{cap} % +\DescribeOption{nocap} % +\DescribeOption{capfirst} % +The \opt{cap} option controls whether the reference type names should be +capitalized or not. It can receive values \texttt{true} or \texttt{false}, +and it can also be set for specific reference types or languages (see +\zcref{sec:reference-format}). The option given without a value is equivalent +to \texttt{cap=true}. The \opt{nocap} option is a convenience alias for +\texttt{cap=false}. The \opt{capfirst} option ensures that the reference type +name of the \emph{first} type block is capitalized, even when \opt{cap} is set +to \texttt{false}. + +\DescribeOption{abbrev} % +\DescribeOption{noabbrev} % +\DescribeOption{noabbrevfirst} % +The \opt{abbrev} option controls whether to use abbreviated reference type +names when they are available. It can receive values \texttt{true} or +\texttt{false}, and it can also be set for specific reference types or +languages (see \zcref{sec:reference-format}). The option given without a +value is equivalent to \texttt{abbrev=true}. The \opt{noabbrev} option is a +convenience alias for \texttt{abbrev=false}. The \opt{noabbrevfirst} ensures +that the reference type name of the \emph{first} type block is never +abbreviated, even when \opt{abbrev} is set to \texttt{true}. + +\DescribeOption{S} % +\opt{S} for ``Sentence''. The \opt{S} option is a convenience alias for +\texttt{capfirst=true, noabbrevfirst=true}, and is intended to be used in +references made at the beginning of a sentence. It is highly recommended that +you make a habit of using the \opt{S} option for beginning of sentence +references. Even if you do happen to be currently using \texttt{cap=true, + abbrev=false}, proper semantic markup will ensure you get expected results +even if you change your mind in that regard later on. For that reason, it was +made short and mnemonic, it can't get any easier. + +\DescribeOption{hyperref} % +The \opt{hyperref} option controls the use of \pkg{hyperref} by +\pkg{zref-clever} and takes values \opt{auto}, \opt{true}, \opt{false}. The +default value, \opt{auto}, makes \pkg{zref-clever} use \pkg{hyperref} if it is +loaded, meaning that references made with \cs{zcref} get hyperlinked to the +anchors of their respective \meta{labels}. \opt{true} does the same thing, +but warns if \pkg{hyperref} is not loaded (\pkg{hyperref} is never loaded for +you). In either of these cases, if \pkg{hyperref} is loaded, module +\pkg{zref-hyperref} is also loaded by \pkg{zref-clever}. \opt{false} means +not to use \pkg{hyperref} regardless of its availability. This is a preamble +only option, but \cs{zcref} provides granular control of hyperlinking by means +of its starred version. + +\DescribeOption{nameinlink} % +The \opt{nameinlink} option controls whether the type name should be included +in the reference hyperlink or not (provided there is a link, of course). +Naturally, the name can only be included in the link of the \emph{first} +reference of each type block. \opt{nameinlink} can receive values +\texttt{true}, \texttt{false}, \texttt{single}, and \texttt{tsingle}. When +the value is \texttt{true} the type name is always included in the hyperlink. +When it is \texttt{false} the type name is never included in the link. When +the value is \texttt{single}, the type name is included in the link only if +\cs{zcref} is typesetting a single reference (not necessarily having received +a single label as argument, as they may have been compressed), otherwise, the +name is left out of the link. When the value is \texttt{tsingle}, the type +name is included in the link for each type block with a single reference, +otherwise, it isn't. An example: suppose you make a couple of references to +something like \cs{zcref}\texttt{\{chap:chapter1\}} and +\cs{zcref}\texttt{\{chap:chapter1, sec:section1, fig:figure1, fig:figure2\}}. +The ``figure'' type name will only be included in the hyperlink if +\opt{nameinlink} option is set to \texttt{true}. If it is set to +\texttt{tsingle}, the first reference will include the name in the link for +``chapter'', as expected, but also in the second reference the ``chapter'' and +``section'' names will be included in their respective links, while that of +``figure'' will not. If the option is set to \texttt{single}, only the name +for ``chapter'' in the first reference will be included in the link, while in +the second reference none of them will. The package's default is +\texttt{nameinlink=tsingle}, and the option given without a value is +equivalent to \texttt{nameinlink=true}. + +\DescribeOption{lang} % +The \opt{lang} option controls the language used by \cs{zcref} when looking +for language-specific reference format options (see +\zcref{sec:reference-format}). The default value, \texttt{current}, uses the +current language, as defined by \pkg{babel} or \pkg{polyglossia} (or +\texttt{english} if none of them is loaded). Value \texttt{main} uses the +main document language, as defined by \pkg{babel} or \pkg{polyglossia} (or +\texttt{english} if none of them is loaded). The \opt{lang} option also +accepts that the language be specified directly by its name, as long as it's a +language known by \pkg{zref-clever}. For more details on +\zcref*[ref=title,noname]{sec:internationalization}, see +\zcref{sec:internationalization}. + +\DescribeOption{d} % +The \opt{d} option sets the declension case, and affects the type name used +for typesetting the reference. Whether this option is operative, and which +values it accepts, depends on the declared setup for each language. For +details, see \zcref{sec:internationalization}. + +\DescribeOption{nudge} % +\DescribeOption{nudgeif} % +\DescribeOption{nonudge} % +\DescribeOption{sg} % +\DescribeOption{g} % +This set of options revolving around \opt{nudge} aims to offer some guard +against mischievous automation on the part of \pkg{zref-clever} by providing a +number of ``nudges'' (compilation time messages) for cases in which you may +wish to revise material \emph{surrounding} the reference -- an article, a +preposition -- according to the reference typeset results. Useful mainly for +languages which inflect the preceding article to gender and/or number, but may +be used generally to fine-tune the language and style around the +cross-references made with \cs{zcref}. The \opt{nudge} option is the main +entrance to this feature and takes values \texttt{true}, \texttt{false}, +\texttt{ifdraft}, or \texttt{iffinal}. The first two, respectively, enable or +disable the ``nudging'' unconditionally. With \texttt{ifdraft}, \opt{nudge} +keeps quiet when option \texttt{draft} is given to \cs{documentclass}, while +with \texttt{iffinal}, nudging is only enabled when option \texttt{final} is +(explicitly) passed to \cs{documentclass}. The option given without a value +is equivalent to \texttt{nudge=true} and the package's default is +\texttt{nudge=false}. \opt{nonudge} is a convenience alias for +\texttt{nudge=false}, and can be used to silence individual references. The +\opt{nudgeif} option controls the events which may trigger a nudge. It takes +a comma separated list of elements, and recognizes values \texttt{multitype}, +\texttt{comptosing}, \texttt{gender}, and \texttt{all}. The +\texttt{multitype} nudge warns when the reference is composed by multiple type +blocks (see \zcref{sec:reference-format}). The \texttt{comptosing} nudge +let's you know when multiple labels of the same type have been compressed to a +singular type name form. It can be combined with the \opt{sg} option, which +is the way to tell \cs{zcref} you know it's a singular and so not to nudge if +a compression to singular occurs, but to nudge if the contrary occurs, that +is, when a plural type name form is employed. The \texttt{gender} nudge must +be combined with option \opt{g}, and depends on the language having support +for it. In essence language files can store the gender(s) of each type name +(this is done for built-in language files, but can also be done with +\cs{zcLanguageSetup} for languages declared to support it). The \opt{g} +option let's you specify the gender you expect for that particular reference +and the nudge is triggered if there is a mismatch between \opt{g} and the +gender(s) for the type name in the language file. Both the +\texttt{comptosing} and the \texttt{gender} nudges have a type block as its +scope. See \zcref{sec:internationalization} for more details and intended use +cases of the ``nudging'' feature. + +\DescribeOption{font} % +The \opt{font} option can receive font styling commands to change the +appearance of the whole reference list (see also the \opt{namefont} and +\opt{reffont} reference format options in \zcref{sec:reference-format}). It +does not affect the content of the \opt{note}, however. The option is +intended exclusively for commands that only change font attributes: style, +family, shape, weight, size, color, etc. Anything else, particularly commands +that may generate typeset output, is not supported. + +\DescribeOption{note} % +The \opt{note} option receives as value some text to be typeset at the end of +the whole reference list. It is separated from it by \opt{notesep} (see +\zcref{sec:reference-format}). + +\DescribeOption{check} % +Provides integration of \pkg{zref-clever} with the \pkg{zref-check} package. +The option is only functional in the document body and if \pkg{zref-check} has +been loaded. \opt{check} requires a value, which works exactly like the +optional argument of \cs{zcheck}, and can receive both checks and +\cs{zcheck}'s options. And the checks are performed for each label in +\marg{labels} received as argument by \cs{zcref}. See the User manual of +\pkg{zref-check} for details. The checks done by the \opt{check} option in +\cs{zcref} comprise the complete reference, including the \opt{note} (see +\zcref{sec:reference-format}). + +\DescribeOption{countertype} % +\DescribeOption{reftype} % +The \opt{countertype} option allows to specify the ``reference type'' of each +counter, which is stored as a label property when the label is set. This +reference type is what determines how a reference to this label will +eventually be typeset when it is referred to (see +\zcref{sec:reference-types}). A value like \texttt{countertype = \{foo = + bar\}} sets the \texttt{foo} counter to use the reference type \texttt{bar}. +There's only need to specify the \opt{countertype} for counters whose name +differs from that of their type, since \pkg{zref-clever} presumes the type has +the same name as the counter, unless otherwise specified. Also, the default +value of the option already sets appropriate types for basic \LaTeX{} +counters, including those from the standard classes. Setting a counter type +to an empty value removes any (explicit) type association for that counter, in +practice, this means it then uses a type equal to its name. The \opt{reftype} +option allows one to specify the reference type manually, regardless of the +current counter. This can be used to locally override any \opt{countertype} +settings of the package and, for those acquainted with it, is the equivalent +of \pkg{cleveref}'s optional argument to \cs{label}. Normally, you'd want to +use this option within a group, but if you must do otherwise, the default +value can be restored by setting the option without a value. Since these +options only affect how labels are set, they are not available in \cs{zcref}. + +\DescribeOption{\raisebox{-.2em}{\dbend}\ counterresetters} % +\DescribeOption{counterresetby} % +The sorting and compression of references done by \cs{zcref} requires that we +know the counter associated with a particular label but also information on +any counter whose stepping may trigger its resetting, or its ``enclosing +counters''. This information is not easily retrievable from the counter +itself but is (normally) stored with the counter that does the resetting. The +\opt{counterresetters} option adds counter names, received as a comma +separated list, to the list of counters \pkg{zref-clever} uses to search for +``enclosing counters'' of the counter for which a label is being set. +Unfortunately, not every counter gets reset through the standard machinery for +this, including some \LaTeX{} kernel ones (e.g. the \texttt{enumerate} +environment counters). For those, there is really no way to retrieve this +information directly, so we have to just tell \pkg{zref-clever} about them. +And that's what the \opt{counterresetby} option is made for. It receives a +comma separated list of \texttt{key=value} pairs, in which \texttt{key} is the +counter, and \texttt{value} is its ``enclosing counter'', that is, the counter +whose stepping results in its resetting. This is not really an ``option'' in +the sense of ``user choice'', it is more of a way to inform \pkg{zref-clever} +of something it cannot know or automatically find in general. One cannot +place arbitrary information there, or \pkg{zref-clever} can be thoroughly +confused. The setting must correspond to the actual resetting behavior of the +involved counters. \opt{counterresetby} has precedence over the search done +in the \opt{counterresetters} list. The default value of +\opt{counterresetters} includes the counters for sectioning commands of the +standard classes which, in most cases, should be the relevant ones for +cross-referencing purposes. The default value of \opt{counterresetby} +includes the \texttt{enumerate} environment counters. So, hopefully, you +don't need to ever bother with either of these options. But, if you do, they +are here. Use them with caution though. Since these options only affect how +labels are set, they are not available in \cs{zcref}. + +\DescribeOption{\raisebox{.4em}{\dbend}\ currentcounter} % +\LaTeX{}'s \cs{refstepcounter} sets two variables which potentially affect the +\cs{zlabel} set after it: \cs{@currentlabel} and \cs{@currentcounter}. +Actually, traditionally, only the current label was thus stored, the current +counter was added to \cs{refstepcounter} somewhat recently (with the +2020-10-01 kernel release). But, since \pkg{zref-clever} relies heavily on +the information of what the current counter is, it must set \pkg{zref} to +store that information with the label, as it does. As long as the document +element we are trying to refer to uses the standard machinery of +\cs{refstepcounter} we are on solid ground and can retrieve the correct +information. However, it is not always ensured that \cs{@currentcounter} is +kept up to date. For example, packages which handle labels specially, for one +reason or another, may or may not set \cs{@currentcounter} as required. +Considering the addition of \cs{@currentcounter} to \cs{refstepcounter} itself +is not that old, it is likely that in a good number of places a reliable +\cs{@currentcounter} is not really in place. Therefore, it may happen we need +to tell \pkg{zref-clever} what the current counter is in certain +circumstances, and that's what \opt{currentcounter} does. The same as with +the previous two options, this is not really an ``user choice'' kind of +option, but a way to tell \pkg{zref-clever} a piece of information it has no +means to retrieve automatically. The setting must correspond to the actual +``current counter'', meaning here ``the counter underlying +\cs{@currentlabel}'' in a given situation. Also, when using the +\opt{currentcounter} option, take care that the setting is duly grouped +because, if set, it has precedence over \cs{@currentcounter} and, contrary to +the later, the former is not reset the next time \cs{refstepcounter} runs. +Its default value is, quite naturally, \cs{@currentcounter}. The default +value can be reset by calling the option with no value. Since this option +only affects how labels are set, it is not available in \cs{zcref}. + +\DescribeOption{\raisebox{.4em}{\dbend}\ labelhook} % +\opt{labelhook} is a boolean option which controls whether \pkg{zref-clever} +uses the kernel's \texttt{label} hook to, whenever a standard \cs{label} is +called, also set a \cs{zlabel} with the same name. The package's default +value is \texttt{true} so that one can use \cs{label}s along the document and +refer to them (also) with \pkg{zref} and \pkg{zref-clever} reference commands. +This value is not only the default, but also a recommended value. Disabling +this option means you are on your own to handle cases where \cs{zlabel} does +not work, which are not many, but can be tricky to deal with where they occur. +Since this option only affects how labels are set, it is not available in +\cs{zcref}. See \zcref{sec:label-or-zlabel} for some discussion of different +labeling approaches this options allows for. + +\DescribeOption{nocompat} % +Some packages, document classes, or LaTeX features may require specific +support to work with \pkg{zref-clever} (see \zcref{sec:limitations}). +\pkg{zref-clever} tries to make things smoother by covering some of them. +Depending on the case, this can take the form of some simple setup for +\pkg{zref-clever}, or may involve the use of hooks to external environments or +commands and, eventually, a patch or redefinition. By default, all the +available compatibility modules are enabled. Should this be undesired or +cause any problems in your environment, the option \opt{nocompat} can +selectively or completely inhibit their loading. \opt{nocompat} receives a +comma separated list of compatibility modules to disable (for the list of +available modules and details about each of them, see +\zcref{sec:comp-modules}). You can disable all modules by setting +\opt{nocompat} without a value (or an empty one). This is a preamble only +option. + + +\section{Reference types} +\zlabel{sec:reference-types} + +A ``reference type'' is the basic \pkg{zref-clever} setup unit for specifying +how a cross-reference group of a certain kind is to be typeset. Though, +usually, it will have the same name as the underlying \LaTeX{} \emph{counter}, +they are conceptually different. \pkg{zref-clever} sets up \emph{reference + types} and an association between each \emph{counter} and its \emph{type}, +it does not define the counters themselves, which are defined by your +document. One \emph{reference type} can be associated with one or more +\emph{counters}, and a \emph{counter} can be associated with different +\emph{types} at different points in your document. But each label is stored +with only one \emph{type}, as specified by the counter-type association at the +moment it is set, and that determines how the reference to that label is +typeset. References to different \emph{counters} of the same \emph{type} are +grouped together, and treated alike by \cs{zcref}. A \emph{reference type} +may be known to \pkg{zref-clever} when the \emph{counter} it is associated +with is not actually defined, and this inconsequential. In practice, the +contrary may also happen, a \emph{counter} may be defined but we have no +\emph{type} for it, but this must be handled by \pkg{zref-clever} as an error +(at least, if we try to refer to it), usually a ``missing name'' error. + +\pkg{zref-clever} provides default settings for the following reference types: +\texttt{part}, \texttt{chapter}, \texttt{section}, \texttt{paragraph}, +\texttt{appendix}, \texttt{subappendix}, \texttt{page}, \texttt{line}, +\texttt{figure}, \texttt{table}, \texttt{item}, \texttt{footnote}, +\texttt{endnote}, \texttt{note}, \texttt{equation}, \texttt{theorem}, +\texttt{lemma}, \texttt{corollary}, \texttt{proposition}, \texttt{definition}, +\texttt{proof}, \texttt{result}, \texttt{remark}, \texttt{example}, +\texttt{algorithm}, \texttt{listing}, \texttt{exercise}, and +\texttt{solution}. Therefore, if you are using a language for which +\pkg{zref-clever} has built-in support (see \zcref{sec:internationalization}), +these reference types are available for use out of the box.\footnote{There may + be slight availability differences depending on the language, but + \pkg{zref-clever} strives to keep this complete list available for the + languages it has built-in language files.} And, in any case, it is always +easy to setup custom reference types with \cs{zcRefTypeSetup} or +\cs{zcLanguageSetup} (see \zcref{sec:user-interface, sec:reference-format, + sec:internationalization}). + +The association of a \emph{counter} to its \emph{type} is controlled by the +\opt{countertype} option. As seen in its documentation, \pkg{zref-clever} +presumes the \emph{type} to be the same as the \emph{counter} unless +instructed otherwise by that option. This association, as determined by the +local value of the option, affects how the \emph{label} is set, which stores +the type among its properties. However, when it comes to typesetting, that is +from the perspective of \cs{zcref}, only the \emph{type} matters. In other +words, how the reference is supposed to be typeset is determined at the point +the \emph{label} gets set. In sum, they may be namesakes (or not), but type +is type and counter is counter. + +Indeed, a reference type can be associated with multiple counters because we +may want to refer to different document elements, with different +\emph{counters}, as a single \emph{type}, with a single name. One prominent +case of this are sectioning commands. \cs{section}, \cs{subsection}, and +\cs{subsubsection} have each their counter, but we'd like to refer to all of +them by ``sections'' and group them together. The same for \cs{paragraph} and +\cs{subparagraph}. + +There are also cases in which we may want to use different \emph{reference + types} to refer to document objects sharing the same \emph{counter}. +Notably, the environments created with \LaTeX{}'s \cs{newtheorem} command and +the \cs{appendix}. + + +One more observation about ``reference types'' is due here. A \emph{type} is +not really ``defined'' in the sense a variable or a function is. It is more +of a ``name'' which \pkg{zref-clever} uses to look for a whole set of +type-specific reference format options (see \zcref{sec:reference-format}). +Each of these options individually may be ``set'' or not, ``defined'' or not. +And, depending on the setup and the relevant precedence rules for this, some +of them may be required and some not. In practice, \pkg{zref-clever} uses the +\emph{type} to look for these options when it needs one, and issues a +compilation warning when it cannot find a suitable value. + + +\section{Reference format} +\zlabel{sec:reference-format} + +Formatting how the reference is to be typeset is, quite naturally, a big part +of the user interface of \pkg{zref-clever}. In this area, we tried to balance +``flexibility'' and ``user friendliness''. But the former does place a big +toll overall, since there are indeed many places where tweaking may be +desired, and the settings may depend on at least two important dimensions of +variation: the reference type and the language. Combination of those +necessarily makes for a large set of possibilities. Hence, the attempt here +is to provide a rich set of ``handles'' for fine tuning the reference format +but, at the same time, do not \emph{require} detailed setup by the users, +unless they really want it. + +With that in mind, we have settled with a user interface for reference +formatting which allows settings to be done in different scopes, with more or +less overarching effects, and some precedence rules to regulate the relation +of settings given in each of these scopes. There are four scopes in which +reference formatting can be specified by the user, in the following precedence +order: i) as \emph{general options}; ii) as \emph{type-specific options}; iii) +as \emph{language- and type-specific options}; and iv) as +\emph{language-specific default options}. Besides those, there's a fifth +\emph{internal} scope, with the least priority of all, a ``fallback'', for the +cases where it is meaningful to provide some value, even for an unknown +language. The package itself places the default setup for reference +formatting at low precedence levels, and the users can easily and conveniently +override them as desired. + +``General'' options (i) can be given by the user in the optional argument of +\cs{zcref}, but also set through \cs{zcsetup} (see \zcref{sec:options}). +``Type'' specific options (ii) are handled by \cs{zcRefTypeSetup} (see +\zcref{sec:user-interface}). ``Language'' options, whether ``type'' specific +(iii) or ``default'' (iv) have their user interface in \cs{zcLanguageSetup}, +and have their values populated by the package's built-in language files (see +\zcref{sec:internationalization}). Not all reference format specifications +can be given in all of these scopes, though. Some of them can't be +type-specific, others must be type-specific, so the set available in each +scope depends on the pertinence of the case. \zcref{tab:reference-format} +introduces the available reference format options, which will be discussed in +more detail soon, and lists the scopes in which each is available. + + +\begin{table}[htb] + \centering + \begin{tabular}{l>{\ttfamily}lcccc} + \toprule + & & General & Type & \multicolumn{2}{c}{Language} \\ + \cmidrule(lr){5-6} + & & & & Type & Default \\ + & & (i) & (ii) & (iii) & (iv) \\ + + \midrule + Typesetting & tpairsep & $\bullet$ & & & $\bullet$ \\ + (necessarily not & tlistsep & $\bullet$ & & & $\bullet$ \\ + type-specific) & tlastsep & $\bullet$ & & & $\bullet$ \\ + & notesep & $\bullet$ & & & $\bullet$ \\ + + \addlinespace + Typesetting & namesep & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + (possibly & pairsep & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + type-specific) & listsep & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & lastsep & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & rangesep & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & refbounds & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + + \addlinespace + Typesetting & Name-sg & & $\bullet$ & $\bullet$ & \\ + (necessarily & name-sg & & $\bullet$ & $\bullet$ & \\ + type-specific) & Name-pl & & $\bullet$ & $\bullet$ & \\ + & name-pl & & $\bullet$ & $\bullet$ & \\ + & Name-sg-ab & & $\bullet$ & $\bullet$ & \\ + & name-sg-ab & & $\bullet$ & $\bullet$ & \\ + & Name-pl-ab & & $\bullet$ & $\bullet$ & \\ + & name-pl-ab & & $\bullet$ & $\bullet$ & \\ + + \addlinespace + Font & namefont & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & reffont & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + + \addlinespace + Other & cap & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & abbrev & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & endrange & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & rangetopair & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + \bottomrule + \end{tabular} + \caption{Reference format options and their scopes} + \zlabel{tab:reference-format} +\end{table} + + +Understanding the role of each of these reference format options is likely +eased by some visual schemes of how \pkg{zref-clever} builds a reference based +on the labels' data and the value of these options. Take a \texttt{ref} to be +that which a standard \LaTeX{} \cs{ref} would typeset. A \pkg{zref-clever} +``reference block'', or \texttt{ref-block}, is constructed as: + +\begin{refformat} +\item \reffmt{ref-block} \(\equiv\) +\item \reffmt{preref*} + \raisebox{-\baselineskip}{\makebox[0pt]{\^{}}}% + \raisebox{-1.2\baselineskip}{\makebox[0pt]{\footnotesize{}hyperlink start}} + \reffmt{preref} \reffmt{ref} \reffmt{postref} + \raisebox{-\baselineskip}{\makebox[0pt]{\^{}}}% + \raisebox{-1.2\baselineskip}{\makebox[0pt]{\footnotesize{}hyperlink end}} + \reffmt{postref*} +\end{refformat} + +Where the \opt{refbounds} option, which receives as value a comma separated +list of four items in the form \texttt{\{preref*,preref,postref,postref*\}}, +sets the surrounding elements to \texttt{ref}.\footnote{As usual, if each of + the items contains start or end spaces, or commas anywhere, they must be + protected by a pair of braces. However, care is taken that empty items + don't need such protection. So you can set, for example, something like + \texttt{refbounds=\{(,{},{},)\}} to get parentheses around your references, + outside the hyperlink.} A \texttt{ref-block} is built for \emph{each} label +given as argument to \cs{zcref}. When the \meta{labels} argument is comprised +of multiple labels, each ``reference type group'', or \texttt{type-group} is +potentially made from the combination of single reference blocks, ``reference +block pairs'', ``reference block lists'', or ``reference block ranges'', where +each is respectively built as: + +\begin{refformat} +\item \reffmt{type-group} is a combination of: +\item \reffmt{ref-block} +\item \reffmt{ref-block1} \reffmt{pairsep} \reffmt{ref-block2} +\item \reffmt{ref-block1} \reffmt{listsep} \reffmt{ref-block2} + \reffmt{listsep} \reffmt{ref-block3} \dots{} \par \qquad + \dots{}\reffmt{ref-blockN-1} \reffmt{lastsep} \reffmt{ref-blockN} +\item \reffmt{ref-block1} \reffmt{rangesep} \reffmt{ref-blockN} +\end{refformat} + +To complete a ``type-block'', a \texttt{type-group} only needs to be +accompanied by the ``type name'': + +\begin{refformat} +\item \reffmt{type-block} \(\equiv\) +\item \reffmt{type-name} \reffmt{namesep} \reffmt{type-group} +\end{refformat} + +The \texttt{type-name} is determined not by one single reference format option +but by the appropriate one among the \opt{[Nn]ame-} options according to the +composition of \texttt{type-group} and the general options. The reference +format name options are eight in total: \opt{Name-sg}, \opt{name-sg}, +\opt{Name-pl}, \opt{name-pl}, \opt{Name-sg-ab}, \opt{name-sg-ab}, +\opt{Name-pl-ab}, and \opt{name-pl-ab}. The initial uppercase ``\texttt{N}'' +signals the capitalized form of the type name. The \texttt{-sg} suffix stands +for singular, while \texttt{-pl} for plural. The \texttt{-ab} is appended to +the abbreviated type name form options. When setting up a type, not +necessarily all forms need to be provided. \pkg{zref-clever} will always use +the non-abbreviated form as a fallback to the abbreviated one, if the later is +not available. Hence, if a reference type is not intended to be used with +abbreviated names (the most common case), only the basic four forms are +needed. Besides that, if you are using the \opt{cap} option, only the +capitalized forms will ever be required by \cs{zcref}, so you can get away +setting only \opt{Name-sg} and \opt{Name-pl}. You should not do the contrary +though, and provide only the non-capitalized forms because, even if you are +using the \opt{nocap} option, the capitalized forms will be still required for +\opt{capfirst} and \opt{S} options to work. Whatever the case may be, you +need not worry too much about being remiss in this area: if \cs{zcref} does +lack a name form in any given reference, it will let you know with a +compilation warning (and will typeset the usual missing reference sign: +``\textbf{??}''). + +A complete reference typeset by \cs{zcref} may be comprised of multiple +\texttt{type-block}s, in which case the ``type-block-group'' can also be made +of single type blocks, ``type block pairs'' or ``type block lists'', where +each is respectively built as: + +\begin{refformat} +\item \reffmt{type-block-group} is one of: +\item \reffmt{type-block} +\item \reffmt{type-block1} \reffmt{tpairsep} \reffmt{type-block2} +\item \reffmt{type-block1} \reffmt{tlistsep} \reffmt{type-block2} + \reffmt{tlistsep} \reffmt{type-block3} \dots{} \par \qquad \dots{} + \reffmt{type-blockN-1} \reffmt{tlastsep} \reffmt{type-blockN} +\end{refformat} + +Finally, since \cs{zcref} can also receive an optional \opt{note}, its full +typeset output is built as: + +\begin{refformat} +\item A complete \reffmt{\cs{zcref}} reference: +\item \reffmt{type-block-group} \reffmt{notesep} \reffmt{note} +\end{refformat} + +Reference format options can yet be divided in three general categories: i) +``typesetting'' options, the ones which we have seen thus far, as ``building +blocks'' of the reference; ii) ``font'' options, which control font attributes +of parts of the reference, namely \opt{namefont} and \opt{reffont}; and iii) +``other'' options. ``Typesetting'' options are intended exclusively for +typesetting material: things you expect to see in the output of your +references. ``Font'' options set the font, respectively, for the +\texttt{type-name} and for \texttt{ref} (to set the font for the whole +reference, see the \opt{font} option in \zcref{sec:options}). These options +are intended exclusively for commands that only change font attributes: style, +family, shape, weight, size, color, etc. In either case, anything other than +their intended uses is not supported. + +Finally, a comment about the internal ``fallback'' reference format values +mentioned above. These ``last resort'' option values are required by +\pkg{zref-clever} for a clear particular case: if the user loads either +\pkg{babel} or \pkg{polyglossia}, or explicitly sets a language, with a +language that \pkg{zref-clever} does not know and has no language file for, it +cannot guess what language that is, and thus has to provide some reasonable +``language agnostic'' default, at least for the options for which this makes +sense. Users do not need to have access to this scope, since they know the +language of their document, or know the values they want for those options, +and can set them as general options, type-specific options, or language +options through the user interface provided for the purpose. But the +``fallback'' options are documented here so that you can recognize when you +are getting these values and change them appropriately as desired. Though +hopefully reasonable, they may not be what you want. The ``fallback'' option +values are the following: + +\begin{zcexample}[escapeinside=`'] +tpairsep = {,`\textvisiblespace{}'} , +tlistsep = {,`\textvisiblespace{}'} , +tlastsep = {,`\textvisiblespace{}'} , +notesep = {`\textvisiblespace{}'} , +namesep = {\nobreakspace} , +pairsep = {,`\textvisiblespace{}'} , +listsep = {,`\textvisiblespace{}'} , +lastsep = {,`\textvisiblespace{}'} , +rangesep = {\textendash} , +\end{zcexample} + + +\subsection{Advanced reference formatting} + +The reference format options discussed above and presented in +\zcref{tab:reference-format} should suffice for most needs. However, if more +fine-grained control of the reference format is needed, this can be achieved +through a more detailed specification of \opt{refbounds} for the different +cases in which they may occur when a reference is processed. The options +available for this purpose are presented in +\zcref{tab:advanced-reference-format}. + +\begin{table} + \centering + \DeleteShortVerb \| + \begin{tabular}{l>{\ttfamily}lcccc} + \toprule + & & General & Type & \multicolumn{2}{c}{Language} \\ + \cmidrule(lr){5-6} + & & & & Type & Default \\ + & & (i) & (ii) & (iii) & (iv) \\ + + \midrule + Base & refbounds-first & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + options & refbounds-first-sg & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & refbounds-first-pb & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & refbounds-first-rb & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & refbounds-mid & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & refbounds-mid-rb & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & refbounds-mid-re & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & refbounds-last & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & refbounds-last-pe & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & refbounds-last-re & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + + \addlinespace + Derived & +refbounds-first & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + options & +refbounds-mid & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + (groups) & +refbounds-last & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & +refbounds-rb & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & +refbounds-re & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + & +refbounds & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ + \bottomrule + \end{tabular} + \caption{Advanced reference format options and their scopes} + \zlabel{tab:advanced-reference-format} +\end{table} + +The ``base'' options are the actually operative ones, while the ``derived'' +options are convenience aliases to set multiple base options in one go. In +the naming scheme of these options, as is easy to presume, ``\texttt{first}'' +refers to the first reference of a type-block, ``\texttt{mid}'' to the middle +ones, and ``\texttt{last}'' to the last reference of the type-block. Less +obviously, but hopefully still mnemonic enough, ``\texttt{sg}'' stands for +``single'', ``\texttt{pb}'' and ``\texttt{pe}'' for ``pair begin'' and ``pair +end'', and finally ``\texttt{rb}'' and ``\texttt{re}'' for ``range begin'' and +``range end''. Each of them receives as value a comma separated list of four +items in the form \texttt{\{preref*,preref,postref,postref*\}}, just like +\opt{refbounds}. + +The base options are mutually exclusive, which means, for example, that it is +not sufficient to set \opt{refbounds-first} to define the behavior of all +first references of a type block. \opt{refbounds-first} is the value used for +the first reference when not single, not the beginning of a pair, and not the +beginning of a range. Setting a group of them is the purpose of the derived +options. Each of these sets all options under it. Some examples. +\opt{+refbounds-first} sets \opt{refbounds-first}, \opt{refbounds-first-sg}, +\opt{refbounds-first-pb}, and \opt{refbounds-first-rg}. In turn, +\opt{+refbounds-rb} sets \opt{refbounds-first-rb} and \opt{refbounds-mid-rb}. +And quite conveniently, \opt{+refbounds} sets \opt{+refbounds-first}, +\opt{+refbounds-mid}, and \opt{+refbounds-last}, it is hence sufficient to set +it to define the behavior of what is typeset around all references for the +whole type-block. As you probably guessed by now, the \opt{refbounds} option +presented in \zcref{tab:reference-format} is an alias of \opt{+refbounds}. + +Given that base and derived options are actually setting the same group of +underlying options (the base ones), the order in which they are given is +relevant: the last one prevails. The idea here is to use first the derived +options to set some general defaults, and then change one or another base +option to handle exceptions as needed. Of course, how best to use them +depends on the case. + + +\section{Internationalization} +\zlabel{sec:internationalization} + +\pkg{zref-clever} provides internationalization facilities and integrates with +\pkg{babel} and \pkg{polyglossia} to adapt to the languages in use by either +of these language packages, or to a language specified directly by the user. +This is primarily relevant for reference format options, particularly +reference type \emph{names} (though not only, since most reference format +options can have language-specific values see \zcref{sec:reference-format}). +But other features of the package also cater for language specific needs. + +As far as language selection is concerned, if the language is declared and +\pkg{zref-clever} has a built-in ``language file'' for it, most use cases will +likely be covered by the \opt{lang} option (see \zcref{sec:options}), and its +values \texttt{current} and \texttt{main}. When the \opt{lang} option is set +to \texttt{current} or \texttt{main}, \pkg{zref-check} will use, respectively, +the \emph{current} or \emph{main} language of the document, as defined by +\pkg{babel} or \pkg{polyglossia}.\footnote{Technically, \pkg{zref-clever} uses + \cs{languagename} and \cs{bbl@main@language} for \pkg{babel}, and + \cs{babelname} and \cs{mainbabelname} for \pkg{polyglossia}, which boils + down to \pkg{zref-clever} always using \emph{\pkg{babel} names} internally, + regardless of which language package is in use. Indeed, an acquainted user + will note that \zcref{tab:languages-and-aliases} contains only \pkg{babel} + language names.} Users can also set \opt{lang} to a specific language +directly, in which case \pkg{babel} and \pkg{polyglossia} are disregarded. +\pkg{zref-clever} provides a number of built-in ``language files'', for the +languages listed in \zcref{tab:languages-and-aliases}, which also includes the +declared aliases to those languages. + +\pkg{zref-clever}'s ``language files'' are loaded sparingly and lazily. A +language file for a single language -- that specified by user options in the +preamble, which by default is the current document language -- is loaded at +\texttt{begindocument}. If any other language file is needed, it is loaded on +the fly, if and when required. Of course, in either case, conditioned on +availability. In sum, \pkg{zref-clever} loads as little as possible, but +allows for convenient on the fly loading of language files if the values are +indeed required, without users having to worry about it at all. + +\begin{table} + \centering + \begin{tabular}{ll} + \toprule + Language & Aliases \\ + \midrule + dutch & \\ + english & american \\ + & australian \\ + & british \\ + & canadian \\ + & newzealand \\ + & UKenglish \\ + & USenglish \\ + french & acadian \\ + & \\ + \bottomrule + \end{tabular} + \quad + \begin{tabular}{ll} + \toprule + Language & Aliases \\ + \midrule + german & ngerman \\ + & austrian \\ + & naustrian \\ + & swissgerman \\ + & nswissgerman \\ + italian & \\ + portuguese & brazilian \\ + & brazil \\ + & portuges \\ + spanish & \\ + \bottomrule + \end{tabular} + \caption{Declared languages and aliases} + \zlabel{tab:languages-and-aliases} +\end{table} + + +But if the built-in language files do not cover your language, or if you'd +like to adjust some of the default language-specific options, this can be done +with \cs{zcDeclareLanguage}, \cs{zcDeclareLanguageAlias}, and +\cs{zcLanguageSetup}.\footnote{Needless to say, if you'd like to contribute a + language file or improve an existing one, that is much welcome at + \url{https://github.com/gusbrs/zref-clever/issues}.} + +\begin{function}{\zcDeclareLanguage} + \begin{syntax} + \cs{zcDeclareLanguage}\oarg{options}\marg{language} + \end{syntax} +\end{function} +Declare a new language for use with \pkg{zref-clever}. If \meta{language} has +already been declared, just warn. The \meta{options} argument receives the +usual \texttt{key=value} list and recognizes three keys: \opt{declension}, +\opt{gender}, and \opt{allcaps}. \opt{declension} receives a coma separated +list of valid declension cases for \meta{language}. The first element of the +list is considered to be the default case, both for the \opt{d} option in +\cs{zcref} and for the \opt{case} option in \cs{zcLanguageSetup}. Similarly, +\opt{gender} receives a comma separated list of genders for \meta{language}. +The elements in this list are those which are recognized as valid for the +language for both the \opt{g} option in \cs{zcref} and the \opt{gender} option +in \cs{zcLanguageSetup}. There is no default presumed in this case. Finally, +\opt{allcaps} can be used with languages for which nouns must be always +capitalized for grammatical reasons. For a language declared with the +\opt{allcaps} option, the \opt{cap} reference option (see \zcref{sec:options}) +is disregarded, and \cs{zcref} always uses the capitalized type name forms. +This means that language files for languages with such a trait can be halved +in size, and that user customization for them is simplified, only requiring +the capitalized name forms. On the other hand, the non-capitalized +\texttt{name-} reference format options are rendered no-op for the language in +question. \zcref[S]{tab:language-options} presents an overview of the options +in effect for the languages declared by \pkg{zref-clever}. +\cs{zcDeclareLanguage} is preamble only. + +\begin{table} + \centering + \begin{tabular}{l>{\ttfamily}c>{\ttfamily}c>{\ttfamily}c} + \toprule + Language & declension & gender & allcaps \\ + \midrule + dutch & -- & f,m,n & -- \\ + english & -- & -- & -- \\ + french & -- & f,m & -- \\ + german & N,A,D,G & f,m,n & yes \\ + italian & -- & f,m & -- \\ + portuguese & -- & f,m & -- \\ + spanish & -- & f,m & -- \\ + \bottomrule + \end{tabular} + \caption{Options for declared languages} + \zlabel{tab:language-options} +\end{table} + +\begin{function}{\zcDeclareLanguageAlias} + \begin{syntax} + \cs{zcDeclareLanguageAlias}\marg{language alias}\marg{aliased language} + \end{syntax} +\end{function} +Declare \meta{language alias} to be an alias of \meta{aliased language}. +\meta{aliased language} must be already known to \pkg{zref-clever}. Once set, +the \meta{language alias} is treated by \pkg{zref-clever} as completely +equivalent to the \meta{aliased language} for any language specification by +the user. \cs{zcDeclareLanguageAlias} is preamble only. + +\begin{function}{\zcLanguageSetup} + \begin{syntax} + \cs{zcLanguageSetup}\marg{language}\marg{options} + \end{syntax} +\end{function} +Sets language-specific reference format options for \meta{language} (see +\zcref{sec:reference-format}), be they type-specific or not. \meta{language} +must be already known to \pkg{zref-clever}. Besides reference format options, +\cs{zcLanguageSetup} knows three other keys: \opt{type}, \opt{case}, and +\opt{gender}. The first two work like a ``switch'' affecting the options +\emph{following} it. For example, if \texttt{type=foo} is given in +\meta{options} the options following it will be set as type-specific options +for reference type \texttt{foo}. Similarly, after \texttt{case=X} (provided +\texttt{X} is a valid declension case for \meta{language}), the following +\texttt{[Nn]ame-} options will set values for the \texttt{X} declension case +(other reference format options are not affected by \opt{case}). Before the +first occurrence of either \opt{type} or \opt{case} default values are set. +For \opt{case} this means the default declension case, which is the first +element of the list provided to the \opt{declension} option in +\cs{zcDeclareLanguage}. For \opt{type} this means language-specific but not +type-specific option values (see \zcref{sec:reference-format}). An empty +valued \texttt{type=} key can also ``unset'' the type. The \opt{gender} key +sets the gender of the current \texttt{type} (provided the value it receives +is one of the declared genders for \meta{language}). For \texttt{type}s which +have multiple valid genders for a given language, the option can also receive +a comma separated list. \cs{zcLanguageSetup} is preamble only. + +A couple of examples to illustrate the syntax of \cs{zcLanguageSetup}: + +\begin{zcexample} +\zcLanguageSetup{french}{ + type = section , + gender = f , + Name-sg = Section , + name-sg = section , + Name-pl = Sections , + name-pl = sections , +} +\zcLanguageSetup{german}{ + type = section , + gender = m , + case = N , + Name-sg = Abschnitt , + Name-pl = Abschnitte , + case = A , + Name-sg = Abschnitt , + Name-pl = Abschnitte , + case = D , + Name-sg = Abschnitt , + Name-pl = Abschnitten , + case = G , + Name-sg = Abschnitts , + Name-pl = Abschnitte , +} +\end{zcexample} + +\bigskip{} + +As already noted, \pkg{zref-clever} has some support for languages with +declension. This means mainly the declension of \emph{nouns}, which is used +for the reference type names. But some tools are also provided to support the +user in getting better results for the text surrounding a reference, +particularly for numbered and gendered articles, even if those don't have +their typeset output automated. + +For reference type names, the declension cases for each language must be +declared with \cs{zcDeclareLanguage}, and the name reference format options +must be provided for each case, which is done for built-in language files of +languages which have noun declension, and can be done by the user with +\cs{zcLanguageSetup}, as we've seen. \pkg{zref-clever} does not try to guess +or infer the case though, you must tell it to \cs{zcref}. And this is done by +means of the \opt{d} option (see \zcref{sec:options}). So you may write +something like ``\texttt{nach den + \cs{zcref}[d=D]\{sec:section-1,sec:section-2\}}'' to get ``nach den +Abschnitten 1 und 2''. Or ``\texttt{trotz des + \cs{zcref}[d=G]\{eq:theorem-1\}}'' to get ``trotz des Theorems 1''. + +Regarding the text surrounding the reference -- the inflected article, the +passing preposition, etc.\ --, the issue is more delicate. \pkg{zref-clever} +cannot and intends not to typeset those for you. But, depending on the +language, it is true that the kind of automation provided by \pkg{zref-clever} +may betray your best efforts to get a proper surrounding text. Multiple +labels passed to \cs{zcref} may result in singular type names, either because +the labels are of different types, or because they got compressed into a +single reference. References comprised of multiple type blocks may have each +a name with a different gender. Or, worse, \opt{tpairsep}, \opt{tpairsep}, +and \opt{tlastsep} may not provide a general enough way to separate different +type blocks in your language altogether. You may change something in your +document that causes a label to change its type, and hence the gender of the +type name. A page reference to a couple of floats which were by chance on the +same page and all of a sudden no longer are. And so on. + +In this area, the approach taken by \pkg{zref-clever} is to identify some +typical situations in which your attention may be required in reviewing the +surrounding text, and signal it at compilation time. Just like bad boxes, for +example. This feature can be enabled by the \opt{nudge} option (which is +opt-in, see \zcref{sec:options}). There are three ``nudges'' available for +this purpose which trigger messages at different events: \opt{multitype}, +\opt{comptosing}, and \opt{gender}. \opt{multitype} nudges when a reference +is comprised of multiple type blocks. \opt{comptosing} when multiple labels +of the same type block have been compressed into a single one and, hence, the +type name used is singular. Finally, \opt{gender} nudges when there is a +mismatch between the gender specified in \cs{zcref} with the \opt{g} option +and the gender of the type name, as set in the language file or with +\cs{zcLanguageSetup}, for each type block. Which nudges to use is +configurable with the option \opt{nudgeif}. And, if you're sure of the +results for a particular \cs{zcref} call, you can always silence the nudges +locally with the \opt{nonudge} option. + +The main reason to watch for multiple type references with the \opt{multitype} +nudge is that bundling together automatically a list of type blocks is less +smooth an operation than it is for a single reference type. While it arguably +works reasonably well for English, even there it is not always flawless, and +depending on the language, results may range from ``poor style'' to outright +wrong. A typical case would be of that of a language with inflected articles +and a reference with multiple types of different genders or numbers. For +example, in French, with a standard ``\texttt{au \cs{zcref}\{cha:chapter-3, + sec:section-3.1\}}'' we get ``au chapitre 3 et section 3.1'' which sounds +ugly, at best. So we may be better off writing instead ``\texttt{au + \cs{zcref}\{cha:chapter-3\} et à la \cs{zcref}\{sec:section-3.1\}}''. Or +something else, of course. But the general point is that, depending on +circumstances and on the language, the results of automating the grouping of +multiple reference types, as \pkg{zref-clever} is able to do, may leave things +to be desired for. Hence it lets you know when one such case occurs, so that +you can review it for best results. + +The case of the \opt{comptosing} and \opt{gender} nudges is more objective in +nature, they respectively signal mismatches of number and gender. When a +reference is made with \cs{zcref} to a single label we are sure the type name +will be a singular form. However, when \cs{zcref} receives multiple labels of +the same type, the type name will normally be a plural, but not necessarily +so, since the labels may be compressed into a single one (see the \opt{comp} +option in \zcref{sec:options}), in which case the singular is used. The +compression of multiple labels into a single reference should be an exception +for default references, but not so for \opt{page} references, where it is easy +to conceive practical situations where it may occur. Suppose, for example, +you have two contiguous floats in your document and make a page reference to +both of them. Will they end up in the same page or not? Maybe we know what +the current state is, but we cannot know what may happen as the document keeps +being edited. As a consequence, we don't know whether that reference will end +up having a plural or a singular type name. That given, the logic of the +\opt{comptosing} nudge is the following. If we are giving multiple labels to +\cs{zcref}, we can \emph{presume} a plural type name, but we get a nudge in +case the compression of the labels results in a singular type name form. If +one such compression did happen to one of your references, you can use a +singular article and then tell \cs{zcref} you did so with option \opt{sg}. +The effect of the \opt{sg} option is to inhibit the nudge when a compression +to singular occurs, but to do it instead when the compression \emph{ceases} to +occur, that is, if we get a plural type name again at some point. + +The \opt{gender} nudge aims to guard against one particular situation: +possible changes of a reference's type. This does not occur by reason of any +internal behavior of \pkg{zref-clever}, but it may be caused by changes in the +document. You may wish to change one \texttt{theorem} into a +\texttt{proposition} and, if you're writing in French or Portuguese, for +example, that implies that the reference to it changes gender and the likely +preceding article will no longer pass to the reference. The \opt{gender} +nudge requires that the gender of each type name and of each reference be +explicitly specified. For the type names, this is done for the built-in +language files of languages were this matters, and can be done with +\cs{zcLanguageSetup} as well. For the references, that is the purpose of the +\opt{g} option. When there is a mismatch between the two for any type block, +the nudge is triggered. Of couse, this means that the gender markup has to be +supplied in the document at each reference. And given such type changes may +not be frequent for you, or considered not particularly problematic, you'll +have to balance if doing so is worth it. Still, the feature is available, and +it's up to you. + + +\section{How-tos} +\zlabel{sec:how-tos} + +This section gathers some usage examples, or ``how-tos'', of cases which may +require some \pkg{zref-clever} setup, or usage adjustments, and each item is +set around a cross-reference ``task'' we'd like to perform with +\pkg{zref-clever}. + + +\subsection{Extended page references (\pkg{varioref})} + +\zctask{Make cross-references to pages which are sensitive to the relative + position between the reference and the label being referred to using + \pkg{varioref}.} + +The \pkg{zref-vario} package offers a layer of compatibility with +\pkg{varioref} and provides \texttt{\textbackslash{}z}\dots{} counterparts for +the latter's main reference commands. + +\begin{zchowto}[caption={\pkg{zref-vario}}] +\documentclass{article} +\usepackage{zref-clever} +\usepackage{zref-vario} +\begin{document} +\section{Section 1} +\zlabel{sec:section-1} +\begin{figure} + A figure. + \caption{Figure 1} + \zlabel{fig:figure-1} +\end{figure} +\begin{figure} + Another figure. + \caption{Figure 2} + \zlabel{fig:figure-2} +\end{figure} +\zvref[S]{sec:section-1} +\zvpageref{fig:figure-1} +\zvrefrange{fig:figure-1}{fig:figure-2} +\zvpagerefrange{fig:figure-1}{fig:figure-2} +\zfullref{fig:figure-1} +\end{document} +\end{zchowto} + + +\subsection{\cs{newtheorem}} + +Since \LaTeX{}'s \cs{newtheorem} allows users to create arbitrary numbered +environments, with respective arbitrary counters, the most \pkg{zref-clever} +can do in this regard is to provide some ``typical'' built-in reference types +to smooth user setup but, in the general case, some user setup may be indeed +required. The examples below are equaly valid for \pkg{amsthm}'s +\cs{newtheorem} since, even it provides features beyond those available in the +kernel, its syntax and underlying relation with counters is pretty much the +same. The same for \pkg{ntheorem}. For \pkg{thmtools}' \cs{declaretheorem}, +though some adjustments to the examples below may be required, the basic logic +is the same (there is no integration with the \opt{Refname}, \opt{refname}, +and \opt{label} options, which are targeted to the standard reference system, +but you don't actually need them to get things working conveniently). + + +\subsubsection*{Simple case} + +\zctask{Setup up a new theorem environment created with \cs{newtheorem} to be + referred to with \cs{zcref}. The theorem environment does not share its + counter with other theorem environments, and one of \pkg{zref-clever} + built-in reference types is adequate for my needs.} + +Suppose you set a ``Lemma'' environment with: + +\begin{zcexample} +\newtheorem{lemma}{Lemma}[section] +\end{zcexample} + +In this case, since \pkg{zref-clever} provides a built-in \texttt{lemma} type +(for supported languages) and presumes the reference type to be the same name +as the counter, there is no need for setup, and things just work out of the +box. So, you can go ahead with: + +\begin{zchowto}[caption={\cs{newtheorem}, simple case}] +\documentclass{article} +\usepackage{zref-clever} +\newtheorem{lemma}{Lemma}[section] +\begin{document} +\section{Section 1} +\begin{lemma}\zlabel{lemma-1} + A lemma. +\end{lemma} +\zcref{lemma-1} +\end{document} +\end{zchowto} + +If, however, you had chosen an environment name which did not happen to +coincide with the built-in reference type, all you'd need to do is instruct +\pkg{zref-clever} to associate the counter for your environment to the desired +type with the \opt{countertype} option: + +\begin{zchowto}[caption={\cs{newtheorem}, simple case}] +\documentclass{article} +\usepackage{zref-clever} +\zcsetup{countertype={lem=lemma}} +\newtheorem{lem}{Lemma}[section] +\begin{document} +\section{Section 1} +\begin{lem}\zlabel{lemma-1} + A lemma. +\end{lem} +\zcref{lemma-1} +\end{document} +\end{zchowto} + + +\subsubsection*{Shared counter} + +\zctask{Setup up two new theorem environments created with \cs{newtheorem} to + be referred to with \cs{zcref}. The theorem environments share the same + counter, and the available \pkg{zref-clever} built-in reference types are + adequate for my needs.} + +In this case, we need to set the \opt{countertype} option in the appropriate +contexts, so that the labels of each environment get set with the expected +reference type. As we've seen (at \zcref{sec:user-interface}), \cs{zcsetup} +has local effects, so it can be issued inside the respective environments for +the purpose. Even better, we can leverage the kernel's new hook management +system and just set it for all occurrences with +\cs{AddToHook}\texttt{\{env/\meta{myenv}/begin\}}. + +\begin{zchowto}[caption={\cs{newtheorem}, shared counter}] +\documentclass{article} +\usepackage{zref-clever} +\AddToHook{env/mytheorem/begin}{% + \zcsetup{countertype={mytheorem=theorem}}} +\AddToHook{env/myproposition/begin}{% + \zcsetup{countertype={mytheorem=proposition}}} +\newtheorem{mytheorem}{Theorem}[section] +\newtheorem{myproposition}[mytheorem]{Proposition} +\begin{document} +\section{Section 1} +\begin{mytheorem}\zlabel{theorem-1} + A theorem. +\end{mytheorem} +\begin{myproposition}\zlabel{proposition-1} + A proposition. +\end{myproposition} +\zcref{theorem-1, proposition-1} +\end{document} +\end{zchowto} + + +\subsubsection*{Custom type} + +\zctask{Setup up a new theorem environment created with \cs{newtheorem} to be + referred to with \cs{zcref}. The theorem environment does not share its + counter with other theorem environments, but none of \pkg{zref-clever} + built-in reference types is adequate for my needs.} + +In this case, we need to provide \pkg{zref-clever} with settings pertaining to +the custom reference type we'd like to use. Unless you need to typeset your +cross-references in multiple languages, in which case you'd require +\cs{zcLanguageSetup}, the most convenient way to setup a reference type is +\cs{zcRefTypeSetup}. In most cases, what we really need to provide for a +custom type are the ``type names'' and other reference format options can rely +on default language options already provided by the package (assuming the +language is supported). + +\begin{zchowto}[caption={\cs{newtheorem}, custom type}] +\documentclass{article} +\usepackage{zref-clever} +\newtheorem{myconjecture}{Conjecture}[section] +\zcRefTypeSetup{myconjecture}{ + Name-sg = Conjecture , + name-sg = conjecture , + Name-pl = Conjectures , + name-pl = conjectures , +} +\begin{document} +\section{Section 1} +\begin{myconjecture}\zlabel{conjecture-1} + A conjecture. +\end{myconjecture} +\zcref{conjecture-1} +\end{document} +\end{zchowto} + + +\subsection{\pkg{newfloat}} + +\zctask{Setup a new float environment created with \pkg{newfloat} to be + referred to with \cs{zcref}. None of \pkg{zref-clever} built-in reference + types is adequate for my needs.} + +The case here is pretty much the same as that for \cs{newtheorem} with a +custom type. Hence, we need to setup a corresponding type, for which +providing the ``type names'' should normally suffice. Note that, as far as +\pkg{zref-clever} is concerned, there's nothing specific to the \pkg{newfloat} +package in the setup, the same procedure can be used with \cls{memoir}'s +\cs{newfloat} command or with the \pkg{float}, \pkg{floatrow}, and +\pkg{trivfloat} packages. + +\begin{zchowto}[caption={\pkg{newfloat}}] +\documentclass{article} +\usepackage{newfloat} +\DeclareFloatingEnvironment{diagram} +\usepackage{zref-clever} +\zcRefTypeSetup{diagram}{ + Name-sg = Diagram , + name-sg = diagram , + Name-pl = Diagrams , + name-pl = diagrams , +} +\begin{document} +\section{Section 1} +\begin{diagram} + A diagram. + \caption{A diagram} + \zlabel{diagram-1} +\end{diagram} +\zcref{diagram-1} +\end{document} +\end{zchowto} + + +\subsection{\pkg{amsmath}} + +\zctask{Make references to \pkg{amsmath} display math environments.} + +\pkg{amsmath}'s display math environments have their contents processed twice, +once for measuring and the second does the final typesetting. Hence, +\pkg{amsmath} needs to handle \cs{label} specially inside these environments, +otherwise we'd have duplicate labels all around, and indeed it does redefine +\cs{label} locally inside them. Alas, the same treatment is not granted to +\cs{zlabel}. Therefore, you must use \cs{label} (not \cs{zlabel}) inside +\pkg{amsmath}'s display math environments, and the \opt{labelhook} option +provides that a \cs{label} sets both a regular \cs{label} and a \cs{zlabel}, +so that we can refer to the equations with both referencing systems. The +following environments are subject to this usage restriction: \env{equation}, +\env{align}, \env{alignat}, \env{flalign}, \env{xalignat}, \env{gather}, +\env{multline}, and their respective starred versions. For more details, see +the description of the \opt{amsmath} compatibility module at +\zcref{sec:comp-modules}. + +\begin{zchowto}[caption={\pkg{amsmath}},label={how:amsmath}] +\documentclass{article} +\usepackage{amsmath} +\usepackage{zref-clever} +\usepackage{hyperref} +\begin{document} +\section{Section 1} +\begin{equation}\label{eq:1} + A^{(1)}_l =\begin{cases} n!,&\text{if }l =1\\ + 0,&\text{otherwise}.\end{cases} +\end{equation} +\begin{equation*} \tag{foo}\label{eq:2} + A^{(1)}_l =\begin{cases} n!,&\text{if }l =1\\ + 0,&\text{otherwise}.\end{cases} +\end{equation*} +\begin{subequations}\label{eq:3} + \begin{align} + A+B&=B+A\\ + C&=D+E\label{eq:3b}\\ + E&=F + \end{align} +\end{subequations} +\zcref{eq:1, eq:2, eq:3, eq:3b} +\end{document} +\end{zchowto} + + +\subsection{Overriding the reference type} + +\zctask{Make references to a system of equations, which should be referred to + in the plural.} + +Though, usually, setting the \opt{countertype} option may provide a more +general and convenient way to set the reference type of a given counter, +sometimes we just need to do it for a particular label or set of labels. The +\opt{reftype} option allows us to do so and set the reference type directly, +regardless of what the current counter is. + +\begin{zchowto}[caption={Overriding the reference type}] +\documentclass{article} +\usepackage{amsmath} +\usepackage{zref-clever} +\usepackage{hyperref} +\zcRefTypeSetup{pluralequation}{ + Name-sg = Equations , + name-sg = equations , + Name-pl = Equations , + name-pl = equations , +} +\begin{document} +\section{Section 1} +\begin{equation} + \zcsetup{reftype=pluralequation} + \zlabel{eq:1} + \begin{aligned} + A+B&=B+A\\ + C&=D+E\\ + E&=F + \end{aligned} +\end{equation} +\zcref{eq:1} +\end{document} +\end{zchowto} + + +\subsection{\pkg{listings}} + +\zctask{Make references to a \env{lstlisting} environment from the + \pkg{listings} package.} + +Being \env{lstlisting} a verbatim environment, setting labels inside it +requires special treatment. \pkg{zref-clever}'s \opt{labelhook} option +provides that a label given to the \opt{label} option gets set with both a +regular \cs{label} and a \cs{zlabel}, so that we can refer to it with both +referencing systems. Setting labels for specific lines of the environment can +be done with \cs{zlabel} directly, subject to the same escaping as for the +standard \cs{label}. For more details, see the description of the +\opt{listings} compatibility module at \zcref{sec:comp-modules}. + +\begin{zchowto}[caption={\pkg{listings}},label={how:listings},escapeinside=`'] +\documentclass{article} +\usepackage{listings} +\usepackage{zref-clever} +\usepackage{hyperref} +\begin{document} +\section{Section 1} +\lstset{escapeinside={(*@}{@*)}, numbers=left, numberstyle=\tiny} +\begin{lstlisting}[caption={Useless code}, label=lst:1] + for i:=maxint to 0 do + begin + { do nothing }(*@\zlabel{ln:1.1}@*) + end; +\end{lstlisting} +\zcref{lst:1, ln:1.1} +\end{document} +\end{zchowto} + + +\subsection{\pkg{enumitem}} + +\zctask{Setup a custom enumerate environment created with \pkg{enumitem} to be + referred to.} + +Since the \texttt{enumerate} environment's counters are reset at each nesting +level, but not with the standard machinery, we have to inform +\pkg{zref-clever} of this resetting behavior with the \opt{counterresetby} +option. Also, given the naming of the underlying counters is tied with the +environment's name and the level's number, we cannot really rely on an +implicit counter-type association, and have to set it explicitly with the +\opt{countertype} option. + +\begin{zchowto}[caption={\pkg{enumitem}}] +\documentclass{article} +\usepackage{zref-clever} +\zcsetup{ + countertype = { + myenumeratei = item , + myenumerateii = item , + myenumerateiii = item , + myenumerateiv = item , + } , + counterresetby = { + myenumerateii = myenumeratei , + myenumerateiii = myenumerateii , + myenumerateiv = myenumerateiii , + } +} +\usepackage{enumitem} +\newlist{myenumerate}{enumerate}{4} +\setlist[myenumerate,1]{label=(\arabic*)} +\setlist[myenumerate,2]{label=(\Roman*)} +\setlist[myenumerate,3]{label=(\Alph*)} +\setlist[myenumerate,4]{label=(\roman*)} +\begin{document} +\begin{myenumerate} +\item An item.\zlabel{item-1} + \begin{myenumerate} + \item An item.\zlabel{item-2} + \begin{myenumerate} + \item An item.\zlabel{item-3} + \begin{myenumerate} + \item An item.\zlabel{item-4} + \end{myenumerate} + \end{myenumerate} + \end{myenumerate} +\end{myenumerate} +\zcref{item-1, item-2, item-3, item-4} +\end{document} +\end{zchowto} + + +\subsection{\pkg{zref-xr}} + +\zctask{Make references to labels set in an external document.} + +\pkg{zref} itself offers this functionality with module \pkg{zref-xr}, and +\pkg{zref-clever} is prepared to make use of it. Just a couple of details +have to be taken care of, for it to work as intended: i) \pkg{zref-clever} +must be loaded in both the main document and the external document, so that +the imported labels also contain the properties required by \pkg{zref-clever}; +ii) since \cs{zexternaldocument} defines any properties it finds in the labels +from the external document when it imports them, it must be called after +\pkg{zref-clever} is loaded, otherwise the later will find its own internal +properties already defined when it does get loaded, and will justifiably +complain. Note as well that the starred version of \cs{zexternaldocument*}, +which imports the standard labels from the external document, is not +sufficient for \pkg{zref-clever}, since the imported labels will not contain +all the required properties. + +Assuming here \file{documentA.tex} as the main file and \file{documentB.tex} +as the external one, and also assuming we just want to refer in ``\texttt{A}'' +to the labels from ``\texttt{B}'', and not the contrary, a minimum setup would +be the following. + + +\begin{zchowto}[caption={\pkg{zref-xr}},escapeinside=`'] +`\hspace*{-1em}\file{documentA.tex}:\vspace{1ex}' +\documentclass{article} +\usepackage{zref-clever} +\usepackage{zref-xr} +\zexternaldocument[B-]{documentB} +\usepackage{hyperref} +\begin{document} +\section{Section A1} +\zlabel{sec:section-a1} +\zcref{sec:section-a1, B-sec:section-b1} +\end{document} +`\vspace{-1ex}' +`\hspace*{-1em}\file{documentB.tex}:\vspace{1ex}' +\documentclass{article} +\usepackage{zref-clever} +\usepackage{hyperref} +\begin{document} +\section{Section B1} +\zlabel{sec:section-b1} +\end{document} +\end{zchowto} + + +\subsection{\pkg{tcolorbox}} + +\zctask{Make references to boxes from the \pkg{tcolorbox} package.} + +Since version 6.0.0, \pkg{tcolorbox} has support for \pkg{zref} and +\pkg{zref-clever}, through the \opt{label is zlabel} option. With this option +enabled, the \opt{label} option sets a \cs{zlabel}, which can be referred to +from \cs{zref} or \cs{zcref}. If you are using the \opt{auto counter}, or +some other custom counter, you can set the reference type for the box's labels +with the \opt{label type} option. + +\begin{zchowto}[caption={\pkg{tcolorbox}}] +\documentclass{article} +\usepackage{zref-clever} +\usepackage{zref-titleref} +\usepackage{tcolorbox} +\tcbuselibrary{theorems} +\tcbset{label is zlabel} +\usepackage{hyperref} +\newtcolorbox[auto counter,number within=section]{pabox}[2][]{% + label type=example, + title=Example~\thetcbcounter: #2,#1} +\newtcolorbox[use counter from=pabox,number within=section]{pabox2}[2][]{% + label type=solution, + title=Solution~\thetcbcounter: #2,#1} +\newtcbtheorem[number within=section]{mytheo}{My Theorem}{% + label type=mytheorem}{th} +\zcRefTypeSetup{mytheorem}{ + Name-sg=Mytheorem, + name-sg=mytheorem, + Name-pl=Mytheorems, + name-pl=mytheorems, +} +\begin{document} +\section{Section 1} +\zlabel{sec:section-1} +\begin{pabox}[label={box:1}]{Title text} + This is tcolorbox \zcref{box:1} on \zcpageref{box:1}. +\end{pabox} +\begin{pabox2}[label={box:2}]{Title text} + This is tcolorbox \zcref{box:2} on \zcpageref{box:2}. +\end{pabox2} +\begin{mytheo}{This is my title}{theo} + This is \zcref{th:theo} on \zcpageref{th:theo} and it is titled + ``\zcref[noname,ref=title]{th:theo}''. +\end{mytheo} +\end{document} +\end{zchowto} + + +\subsection{\pkg{breqn}} + +\zctask{Make references to \pkg{breqn} math environments.} + +\pkg{breqn}'s math environments \env{dgroup}, \env{dmath}, \env{dseries}, and +\env{darray} offer a \opt{label} option (plus \opt{labelprefix}) for the +purpose of label setting. \pkg{breqn}'s documentation says the following +about the use of \cs{label} inside its environments: \textquote{Use of the + normal \cs{label} command instead of the \opt{label} option works, I think, + most of the time (untested)}. My light testing suggests the same is true +for \cs{zlabel}, which can then be used directly in these environments. +Either way, given the \opt{labelhook} option, we can just use \pkg{breqn}'s +\opt{label} option and be at ease. Also, \pkg{breqn} does not use +\cs{refstepcounter} to increment the equation counters and, as a result, fails +to set \pkg{hyperref} anchors for the equations (thus affecting standard +labels too). You may wish to use the work-around provided by Heiko Oberdiek +at \url{https://tex.stackexchange.com/a/241150}. + +\begin{zchowto}[caption={\pkg{breqn}},label={how:breqn}] +\documentclass{article} +\usepackage{zref-clever} +\usepackage{breqn} +\usepackage{hyperref} +% From https://tex.stackexchange.com/a/241150. +\usepackage{etoolbox} +\makeatletter +\patchcmd\eq@setnumber{\stepcounter}{\refstepcounter}{}{% + \errmessage{Patching \noexpand\eq@setnumber failed}} +\makeatother +\begin{document} +\section{Section 1} +\begin{dmath}[label={eq:1}] + f(x)=\frac{1}{x} \condition{for $x\neq 0$} +\end{dmath} +\begin{dmath}[labelprefix={eq:},label={2}] + H_2^2 = x_1^2 + x_1 x_2 + x_2^2 - q_1 - q_2 +\end{dmath} +\zcref{eq:1, eq:2} +\end{document} +\end{zchowto} + + +\subsection{Ordinal references} + +\zctask{Typesetting the references as ordinal numbers.} + +This example is intended as an illustration of the flexibility \pkg{zref}'s +extensible referencing system grants us.\footnote{Though clearly simplified, + the example is less than academic. + See \url{https://tex.stackexchange.com/a/670088} for an application to add a + reference suffix needed in Turkish.} Getting references as ordinal numbers, +something that would be normally a tricky task, can be handled with a simple +custom \pkg{zref} property, which we then use to set \pkg{zref-clever}'s +\opt{ref} option. + +\begin{zchowto}[caption={Ordinal references}] +\documentclass{article} +\usepackage{zref-clever} +\usepackage{fmtcount} +\makeatletter +\zref@newprop{ordref}{\ordinal{\@currentcounter}} +\zref@addprop{main}{ordref} +\makeatother +\zcsetup{ref=ordref} +\begin{document} +\section{Section 1} +\zlabel{sec:section-1} +\begin{figure} +A figure. +\caption{Figure 1} +\zlabel{fig:figure-1} +\end{figure} +\zcref{sec:section-1,fig:figure-1} +\end{document} +\end{zchowto} + + +\section{Limitations} +\zlabel{sec:limitations} + +Being based on \pkg{zref} entails one quite sizable advantage for +\pkg{zref-clever}: the extensible referencing system of the former allows +\pkg{zref-clever} to store and retrieve the information it needs to work +without having to redefine some core \LaTeX{} commands. This alone makes for +reduced compatibility problems and less load order issues than the average +package in this functionality area. On the other hand, being based on +\pkg{zref} also does impair the supported scope of \pkg{zref-clever}. Not +because of any particular limitation of either, but because any class or +package which implements some special handling for reference labels +universally does so aiming at the standard referencing system, and whether +specific support for \pkg{zref} is included, or whether things work by +spillover of the particular technique employed, is not guaranteed. + +The limitation here is less one of \pkg{zref-clever} than that of a potencial +lack of support for \pkg{zref} itself. Broadly speaking, what +\pkg{zref-clever} does is setup \pkg{zref} so that its \cs{zref@newlabel}s +contains the information we need using \pkg{zref}'s API. Once the \cs{zlabel} +is set correctly, there is little in the way of \pkg{zref-clever}, it can just +extract the label's information, again using \pkg{zref}'s API, and do its job. +Therefore, the problems that may arise are really in \emph{label setting}. + +For \cs{zlabel} to be able to set a label with everything \pkg{zref-clever} +needs, some conditions must be fulfilled, most of which are pretty much the +same as that of a regular label, but not only. As far as my experience goes, +the following label setting requirements can be potentially problematic and +are not necessarily granted for \cs{zlabel}: + +\begin{enumerate} +\item One must be able to call \cs{zlabel}, directly or indirectly, at the + appropriate scope/location so as to set the label. +\item When \cs{zlabel} is set, it must see a correct value of + \cs{@currentcounter}. +\end{enumerate} + +As to the first, it is not everywhere we technically can set a (z)label. On +verbatim-like environments it depends on how they are defined and whether they +provide a proper place or option to do so. But other places may be +problematic too, for example, \pkg{amsmath} display math environments also +handle \cs{label} specially and the same work is not done for \cs{zlabel}. +Classes and packages may offer label setting by means of arguments or options, +and those usually only cater for the standard referencing system, etc. +Fortunately for us, the \texttt{label} hook introduced by the \LaTeX{} kernel +in the 2023-06-01 release improves the situation considerably. +\pkg{zref-clever} makes use of it with the \opt{labelhook} option, enabled by +default, so that a standard \cs{label} also sets a \cs{zlabel} with the same +name, thus providing a very general and reliable way to deal with these places +where setting a \cs{zlabel} directly is problematic: just set a standard +label. + +Regarding the second, a correctly set \cs{@currentcounter} is critical for the +task of \pkg{zref-clever}: the reference type will depend on that and, +consequently, sorting and compression as well, counter resetting behavior +information is also retrieved based on it, and so on. Since the 2020-10-01 +\LaTeX{} release, \cs{@currentcounter} is set by \cs{refstepcounter} alongside +\cs{@currentlabel} and, since the 2021-11-15 release, the support for +\cs{@currentcounter} has been further extended in the kernel. Hence, as long +as kernel features are involved, or as long as \cs{refstepcounter} is the tool +used for the purpose of reference setting, \cs{zlabel} will tend to have all +information within its grasp at label setting time. But that's not always the +case. For this reason, \pkg{zref-clever} has the option \opt{currentcounter} +which at least allows for some viable work-arounds when the value of +\cs{@currentcounter} cannot be relied upon. Whether we have a proper opening +to set it, depends on the case. Still, \cs{refstepcounter} is ubiquitous +enough a tool that we can count on \cs{@currentcounter} most of the time. + +All in all, most things work, but some things may not. And if the later will +eventually work depends essentially on whether support for \pkg{zref} is +provided by the relevant packages and classes or not. Or, failing that, +whether \pkg{zref-clever} is able to provide some specific support when a +reasonable way to do so is within reach. + + +\section{Compatibility modules} +\zlabel{sec:comp-modules} + +This section gives a description of each compatibility module provided by +\pkg{zref-clever}. These modules intend to smooth the interaction of \LaTeX{} +features, document classes, and packages with \pkg{zref-clever} and +\pkg{zref}, and they can be selectively or completely disabled with the option +\opt{nocompat} (see \zcref{sec:options}). This set is not to be confused with +``the list of packages or classes supported by \pkg{zref-clever}''. In most +circumstances, things should just work out of the box, and need no specific +handling. These are just the ones for which some special treatment was +required. Of course, this effort is bound to be incomplete (see +\zcref{sec:limitations}). + +The purpose of outlining to some extend what the compatibility modules do is +twofold. First, some of them require usage adjustments for label setting, +which must be somehow conveyed in this documentation. Second, the kind and +degree of intervention in external code varies significantly for each module, +and since this is an area of potential friction, a minimum of information for +the users to judge whether they want to leave these modules enabled or not is +due. For this reason, this is also a little technical, but for full details, +see the code documentation. + +\bigskip{} + +\DescribeOption{appendix} % +The \cs{appendix} command provided by many document classes is normally used +to change the behavior of the sectioning commands after that point. Usually, +depending on the class, the changes that interest us involve using \cs{@Alph} +for numbering and \cs{appendixname} for chapter's names. In sum, we'd like to +refer to the appendix sectioning commands as ``appendices'' rather than +``chapters'' or ``sections''. Since the sectioning commands are the same as +before \cs{appendix}, and so are their underlying counters, we must configure +the counter type of the sectioning counters to \texttt{appendix}. And this is +what this compatibility module does, and it uses a \pkg{ltcmdhooks} hook on +\cs{appendix} for the purpose. Hence, this module applies to any document +class or package which provides that command. + +\DescribeOption{appendices} % +This module implements support for the \env{appendices} and +\env{subappendices} environments provided by the \pkg{appendix} package, and +also by \cls{memoir}. The task is the same as for the \texttt{appendix} +module: set proper counter types for the sectioning counters. This module +employs environment hooks to \env{appendices} and \env{subappendices} and a +command hook to \cs{appendix} for the purpose. + +\DescribeOption{memoir} % +The \cls{memoir} class implements several features with one or another +implication for cross-referencing, usually bearing just the standard +referencing system in mind, and related mainly to captions, subfloats, and +notes. This compatibility module tries to adjust \pkg{zref-clever} to these +features with support for the following: i) set counter types for counters +\texttt{subfigure}, \texttt{subtable}, and \texttt{poemline} (used in the +\env{verse} environment); ii) configure resetting behavior +(\opt{counterresetby} option) for \texttt{subfigure} and \texttt{subtable} +counters; iii) provide the \pkg{zref} property ``\texttt{subcaption}'' so that +we can refer to, for example, \texttt{\cs{zcref}[ref=subcaption]\{subcap-1\}} +to emulate the functionality of \cls{memoir}'s \cs{subcaptionref}; iv) provide +that \cs{footnote}, \cs{verbfootnote}, \cs{sidefootnote}, and \cs{pagenote} +get a proper \opt{currentcounter} set; and v) set counter types for counters +\texttt{sidefootnote} and \texttt{pagenote}. The most sensitive changes are +the use of \pkg{ltcmdhooks} command hooks on \cs{@memsubcaption}, +\cs{@makefntext}, and \cs{@makesidefntext}. + +\DescribeOption{amsmath} % +The module ensures proper \opt{currentcounter} values are in place for the +display math environments, for which it uses environment hooks. The module +also provides a \texttt{subeq} property, for display math environments used +inside the \env{subequations} environment, which can be used to refer to them +directly with the \opt{ref} option, or to build terse ranges with the +\opt{endrange} option. + +\DescribeOption{mathtools} % +\pkg{mathtools} has a feature to show the numbers only for those equations +actually referenced (with \cs{eqref} or \cs{refeq}), which is enabled by the +\opt{showonlyrefs} option. This compatibility module adds support for this +feature, such that equation references made with \cs{zcref} also get marked as +``referenced'' for \pkg{mathtools}, when the option is active, of course. The +module uses a couple of \pkg{mathtools} functions, but does not need to +redefine or hook into anything, everything is handled on \pkg{zref-clever}'s +side. + +\DescribeOption{breqn} % +This compatibility module only sets proper \opt{currentcounter} values for the +environments \env{dgroup}, \env{dmath}, \env{dseries}, and \env{darray}, and +uses environment hooks for the purpose. See the \zcref{how:breqn} for an +usage example. + +\DescribeOption{listings} % +The module sets appropriate \opt{countertype}, \opt{counterresetby} and +\opt{currentcounter} values for the \pkg{listings}' counters: +\texttt{lstlisting} and \texttt{lstnumber}. See the \zcref{how:listings} for +an usage example. + +\DescribeOption{enumitem} % +\LaTeX{}'s \env{enumerate} environment requires some special treatment from +\pkg{zref-clever}, since its resetting behavior is not stored in the standard +way, and the counters' names, given they are numbered by level, do not map to +the reference type naturally. This is done by default for the up to four +levels of nested \env{enumerate} environments the kernel offers. +\pkg{enumitem}, though, allows one to increase this maximum list depth for +\env{enumerate} and, if this is done, setup for these deeper nesting levels +have also to be taken care of, and that's what this compatibility module does. +All settings here are internal to \pkg{zref-clever}, no hooks or redefinitions +are needed, we just check the existing pertinent counters at +\texttt{begindocument}, and supply settings for them. Of course, this means +that only \pkg{enumitem}'s settings done in the preamble will be visible to +the module and provided for. + +\DescribeOption{subcaption} % +This compatibility module sets appropriate \opt{countertype} and +\opt{counterresetby} for the \texttt{subfigure} and \texttt{subtable} +counters, and provides the \pkg{zref} property ``\texttt{subref}'' so that we +can refer to, for example, \texttt{\cs{zcref}[ref=subref]\{\meta{label}\}} to +emulate the functionality of \cls{subcaption}'s \cs{subref}. The later +feature uses the \cs{caption@subtypehook} provided by \pkg{caption} to locally +add the \texttt{subref} property to \pkg{zref}'s main property list. + +\DescribeOption{subfig} % +This module just sets appropriate \opt{countertype} and \opt{counterresetby} +for the \texttt{subfigure} and \texttt{subtable} counters. + + +\section{Work-arounds} + +\marginpar{\raggedleft\raisebox{-1.5ex}{\dbend}}As should be clear by now, the +use of \pkg{zref}'s \cs{zlabel} and thus of \pkg{zref-clever} may occasionally +require some adjustments, since it does not enjoy the universal support the +standard referencing system does. The compatibility modules presented in +\zcref{sec:comp-modules} go a long way in ensuring the user has to worry very +little about it, but they cannot be expected to go all the way. Not only +because this kind of support will never be exhaustive, but also since, +sometimes, given the way certain features are implemented by packages or +document classes, there may not be a reasonable way to provide this support, +from our side. But, still, most of the time, it is still ``viable'' to get +there, if one really wishes to do so. So, this section keeps track of some +known recipes, which I don't think belong in \pkg{zref-clever} itself, but +which you may choose to use. Note that this list is intended to spare users +from having to reinvent the wheel every time someone needs something of the +sort, but from \pkg{zref-clever}'s perspective, their status is ``not +supported''. + + +\subsection*{\cls{beamer}} + +\cls{beamer} does some really atypical things with regard to cross-references. +To start with, it redefines \cs{label} to receive an optional +\texttt{<\meta{overlay specification}>} argument. Then, presumably to support +overlays, it goes on and hijacks \pkg{hyperref}'s anchoring system, sets +anchors (\cs{hypertarget}s) to each \emph{label} in the \file{.snm} file, +while letting every standard label's anchor in the \file{.aux} file default to +\texttt{Doc-Start}. Of course, having rendered useless \pkg{hyperref}'s +anchoring, it has to redefine \cs{ref} so that it uses its own \file{.snm} +provided ``label anchors'' to make hyperlinks. In particular, from our +perspective, there is no support at all for \pkg{zref} provided by +\cls{beamer}. Which is specially unfortunate since the above procedures also +appear to break \pkg{cleveref}.\footnote{See, for example, + \url{https://tex.stackexchange.com/q/266080}, + \url{https://tex.stackexchange.com/q/668998}, and + \url{https://github.com/josephwright/beamer/issues/750}. The workaround + provided at \url{https://tex.stackexchange.com/a/266109} is not general + enough since it breaks \pkg{cleveref}'s ability to receive a list of labels + as argument.} + +Adding proper support for this is the business of \cls{beamer}, \pkg{zref}, +and/or \pkg{hyperref}. Likely the former's really. But, taking advantage of +\pkg{zref}'s flexibility, as a user, you can have a work-around in the +meantime. + +\begin{zcworkaround}[caption={\cls{beamer}}] +\documentclass{beamer} +\usepackage{zref-clever} +\makeatletter +\RenewDocumentCommand{\zlabel}{ D<>{1} m }{% + \ifx\label\ltx@gobble + \else + \zref@wrapper@babel{\zref@label<#1>}{#2}% + \fi +} +\NewCommandCopy\beamer@old@zref@label\zref@label +\RenewDocumentCommand{\zref@label}{ D<>{1} m }{% + \alt<#1>{% + \zref@ifpropundefined{anchor}{}{\zref@setcurrent{anchor}{#2}}% + \beamer@old@zref@label{#2}% + \beamer@nameslide{#2}% + }{% + \beamer@dummynameslide% + }% +} +\makeatother +\begin{document} +\begin{frame} + \begin{table} + \begin{tabular}{cc} + 1 & 2 \\ + 3 & 4 \\ + \end{tabular} + \caption{Table 1} + \zlabel{tab:1} + \end{table} +\end{frame} +\begin{frame} + \begin{figure} + \rule{5cm}{5cm} + \caption{Figure 1} + \zlabel{fig:1} + \end{figure} +\end{frame} +\begin{frame} + \zcref{tab:1,fig:1} +\end{frame} +\end{document} +\end{zcworkaround} + +This work-around redefines \cs{zlabel} so that it takes an overlay +specification argument, and provides that the work done by \cls{beamer} for +the standard \cs{label} is also done for it. And it works by setting the +\texttt{anchor} to the \emph{label} so as to be able to speak the +``\cls{beamer}-lingo'' of anchors. + +A couple of caveats though. First, there's probably still some work to be +done there in defining and setting reference types for \cls{beamer} specific +document objects, e.g. overlays. But it can be done by the standard user +interface of \pkg{zref-clever}. Second, since \cls{beamer}'s anchoring system +does not provide for uniqueness of anchors as \pkg{hyperref} does, if you +(need to) use \cs{label} to set both \cs{label} and \cs{zlabel}, relying on +the \opt{labelhook} option, this will result in duplicate anchors for labels +set in them, with corresponding \pkg{hyperref} warnings of ``destination with +the same identifier has been already used, duplicate ignored''. The warning +is actually harmless in this case, since both labels are set in the same +place, and thus have identical anchors, it is nevertheless there. + + +\section{Acknowledgments} + +\pkg{zref-clever} would not be possible without other people's previous work +and help. + +Heiko Oberdiek's \pkg{zref}, now maintained by the Oberdiek Package Support +Group, is the underlying infrastructure of this package. The potential of its +basic concept and the solid implementation were certainly among the reasons +I've chosen to venture into these waters, to start with. And I believe they +will remain one of the main assets of \pkg{zref-clever} as it matures. + +The name of the package makes no secret that a major inspiration for the kind +of ``feel'' I strove to achieve has been Toby Cubitt's \pkg{cleveref}. +Indeed, I have been a user of \pkg{cleveref} for several years, and a happy +one at that. But the role \pkg{cleveref} played in the development of +\pkg{zref-clever} extends beyond the visible influence in the design of user +facing functionality. Some technical solutions and, specially, the handling +of support for other packages were a valuable reference. Hence, the +accumulated experience of \pkg{cleveref} allowed for \pkg{zref-clever} to +start on a more solid foundation than would otherwise be the case. + +The long term efforts of the \LaTeX3 \cs{Team} around \pkg{expl3} and +\pkg{xparse} have also left their marks in this package. By implementing +powerful tools and smoothing several regular programming tasks, they have +certainly reduced my entry barrier to \LaTeX{} programming and enabled me to +develop this package with a significantly reduced effort. And, given the +constraints of my abilities, the result is no doubt much better than it would +be in their absence. + +Besides these more general acknowledgments, a number of people have +contributed to \pkg{zref-clever}, whether they are aware of it or not. +Suggestions, ideas, solutions to problems, bug reports or even encouragement +were generously provided by (in chronological order): + Ulrike Fischer, + % 2021-07-03: It's Ulrike's fault :-) : https://tex.stackexchange.com/questions/603514/#comment1513982_603514 + % 2021-08-20: https://tex.stackexchange.com/q/611424/105447 (comments) + % 2021-09-06: https://github.com/ho-tex/zref/issues/13 + % 2021-10-26: https://github.com/latex3/latex2e/issues/687 + % 2022-01-12: https://chat.stackexchange.com/transcript/message/60129233#60129233 + % 2022-04-09: https://github.com/latex3/hyperref/issues/229#issuecomment-1093870142 + % 2023-01-02: https://tex.stackexchange.com/q/670399 (comments) + % 2023-06-01: https://github.com/latex3/latex2e/pull/956 + Phelype Oleinik, + % 2021-08-20: https://tex.stackexchange.com/q/611370 (comments) + % 2021-09-09: https://tex.stackexchange.com/a/614704 + % 2021-10-06: https://tex.stackexchange.com/a/617998 + % 2021-10-21: https://github.com/latex3/latex2e/pull/699 + % 2022-01-12: https://tex.stackexchange.com/questions/629946/#comment1571118_629946 + % 2022-01-11: https://tex.stackexchange.com/questions/633341/#comment1579825_633347 + % 2023-06-01: https://github.com/latex3/latex2e/pull/1020 + Enrico Gregorio, + % 2021-08-20: https://tex.stackexchange.com/a/611385 + % 2021-08-20: https://tex.stackexchange.com/q/611370/#comment1529282_611385 + Steven B.\ Segletes, + % 2021-08-20: https://tex.stackexchange.com/a/611373 + Jonathan P.\ Spratte, + % 2021-09-09: https://tex.stackexchange.com/a/614719 + % 2021-09-09: https://github.com/latex3/latex3/pull/988 + David Carlisle, + % 2021-10-10: https://tex.stackexchange.com/questions/618434/#comment1544401_618439 + % 2022-01-12: https://chat.stackexchange.com/transcript/message/60129096#60129096 + % and following discussion. + % 2022-12-26: https://chat.stackexchange.com/transcript/message/62644791#62644791 + % and following discussion. + % 2023-01-02: https://chat.stackexchange.com/transcript/message/62684358#62684358 + % and following discussion. + % 2023-02-10: https://tex.stackexchange.com/a/674846 + Frank Mittelbach, + % 2021-10-14: https://github.com/latex3/latex2e/issues/687 + \username{samcarter}, + % 2021-10-14: https://chat.stackexchange.com/transcript/message/59361777#59361777 + % 2021-10-21: https://chat.stackexchange.com/transcript/message/59418309#59418309 + Alan Munn, + % 2021-10-14: https://chat.stackexchange.com/transcript/message/59364073#59364073 + % 2021-10-21: https://chat.stackexchange.com/transcript/message/59418189#59418189 + Florent Rougon, + % https://github.com/frougon/xcref has been an useful reference for + % declension support. + Denis Bitouzé, + % 2021-11-25: https://github.com/gusbrs/zref-clever/issues/1 + Marcel Krüger, + % 2021-11-26: https://github.com/latex3/l3build/issues/215 + Jürgen Spitzmüller, + % 2021-11-28: https://github.com/gusbrs/zref-clever/issues/2 + \username{niluxv}, + % 2022-01-05: https://github.com/gusbrs/zref-clever/issues/4 + Joseph Wright, + % 2023-01-02: https://chat.stackexchange.com/transcript/message/62684358#62684358 + % and following discussion. + Thomas F. Sturm, + % 2023-02-09: https://github.com/T-F-S/tcolorbox/issues/206 + % 2023-05-12: https://github.com/T-F-S/tcolorbox/issues/230 + and Yukai Chou. % 'muzimuzhi' + % 2023-02-18: https://github.com/gusbrs/zref-clever/pull/14 + % 2023-02-18: https://github.com/gusbrs/zref-clever/pull/15 + % 2023-05-11: https://github.com/T-F-S/tcolorbox/issues/230 + +The package's language files have been provided or improved thanks to: + Denis Bitouzé (French), + % 2021-11-25: https://github.com/gusbrs/zref-clever/issues/1 + François Lagarde (French), % 'flagarde' + % 2021-12-09: discussion at https://github.com/gusbrs/zref-clever/issues/1 + \username{niluxv} (Dutch), + % 2022-01-09: https://github.com/gusbrs/zref-clever/pull/5 + % 2022-12-27: https://github.com/gusbrs/zref-clever/pull/12 + % 2022-12-27: https://github.com/gusbrs/zref-clever/pull/13 + and Matteo Ferrigato (Italian). % 'matteo339' + % 2022-12-12: https://github.com/gusbrs/zref-clever/issues/11 + +If I have inadvertently left anyone off the list I apologize, and please let +me know, so that I can correct the oversight. + +Thank you all very much! + + +\section{Change history} + +A change log with relevant changes for each version, eventual upgrade +instructions, and upcoming changes, is maintained in the package's repository, +at \url{https://github.com/gusbrs/zref-clever/blob/main/CHANGELOG.md}. The +change log is also distributed with the package's documentation through CTAN +upon release so, most likely, \texttt{texdoc zref-clever/changelog} should +provide easy local access to it. An archive of historical versions of the +package is also kept at \url{https://github.com/gusbrs/zref-clever/releases}. + +\end{document} diff --git a/macros/latex/contrib/zref-clever/zref-clever.dtx b/macros/latex/contrib/zref-clever/zref-clever.dtx index cee60860c3..fff75c1b44 100644 --- a/macros/latex/contrib/zref-clever/zref-clever.dtx +++ b/macros/latex/contrib/zref-clever/zref-clever.dtx @@ -22,7 +22,7 @@ % % This work consists of the files zref-clever.dtx, % zref-clever.ins, -% zref-clever.tex, +% zref-clever-doc.tex, % zref-clever-code.tex, % and the files generated from them. % @@ -131,12 +131,11 @@ % % Taking a stance on backward compatibility of the package. During initial % development, we have used freely recent features of the kernel (albeit -% refraining from \pkg{l3candidates}, even though I'd have loved to have used -% \cs{bool_case_true:}\dots{}). We presume \pkg{xparse} (which made to the -% kernel in the 2020-10-01 release), and \pkg{expl3} as well (which made to -% the kernel in the 2020-02-02 release). We also just use UTF-8 for the +% refraining from \pkg{l3candidates}). We presume \pkg{xparse} (which made to +% the kernel in the 2020-10-01 release), and \pkg{expl3} as well (which made +% to the kernel in the 2020-02-02 release). We also just use UTF-8 for the % language files (which became the default input encoding in the 2018-04-01 -% release). Finally, a couple of changes came with the 2021-11-15 kernel +% release). Also, a couple of changes came with the 2021-11-15 kernel % release, which are important here. First, a fix was made to the new hook % management system (\pkg{ltcmdhooks}), with implications to the hook we add % to \cs{appendix} (by \contributor{Phelype Oleinik} at @@ -144,18 +143,23 @@ % \url{https://github.com/latex3/latex2e/pull/699}). Second, the support for % \cs{@currentcounter} has been improved, including \cs{footnote} and % \pkg{amsmath} (by \contributor{Frank Mittelbach} and \contributor{Ulrike -% Fischer} at \url{https://github.com/latex3/latex2e/issues/687}). Hence, -% since we would not be able to go much backwards without special handling -% anyway, we make the cut at the 2021-11-15 kernel release. +% Fischer} at \url{https://github.com/latex3/latex2e/issues/687}). Finally, +% and critically, the new \texttt{label} hook introduced in the 2023-06-01 +% release, alongside the corresponding new hooks with arguments, just +% simplifies and improves label setting so much, by allowing \cs{zlabel} to be +% set with \cs{label}, that it is definitely a must for \pkg{zref-clever}, so +% we require that too. Hence we make the cut at the 2023-06-01 kernel +% release. % % \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} -\IfFormatAtLeastTF{2021-11-15} +\IfFormatAtLeastTF{2023-06-01} {} {% \PackageError{zref-clever}{LaTeX kernel too old} {% - 'zref-clever' requires a LaTeX kernel 2021-11-15 or newer.% + 'zref-clever' requires a LaTeX kernel 2023-06-01 or newer.% \MessageBreak Loading will abort!% }% \endinput @@ -165,7 +169,7 @@ % % Identify the package. % \begin{macrocode} -\ProvidesExplPackage {zref-clever} {2023-02-21} {0.3.6} +\ProvidesExplPackage {zref-clever} {2023-06-14} {0.4.0} {Clever LaTeX cross-references based on zref} % \end{macrocode} % @@ -3927,6 +3931,36 @@ % \end{macrocode} % % +% \subsubsection*{\opt{labelhook} option} +% +% \begin{macrocode} +\bool_new:N \l_@@_labelhook_bool +\keys_define:nn { zref-clever/label } + { + labelhook .bool_set:N = \l_@@_labelhook_bool , + labelhook .initial:n = true , + labelhook .default:n = true , + } +% \end{macrocode} +% +% We \emph{must} use the lower level \cs{zref@label} in this context, and +% hence also handle protection with \cs{zref@wrapper@babel}, because +% \cs{zlabel} makes itself no-op when \cs{label} is equal to \cs{ltx@gobble}, +% and that's precisely the case inside the \pkg{amsmath}'s \env{multline} +% environment (and possibly elsewhere?). See +% \url{https://tex.stackexchange.com/a/402297} and +% \url{https://github.com/ho-tex/zref/issues/4}. +% +% \begin{macrocode} +\AddToHookWithArguments { label } + { + \bool_if:NT \l_@@_labelhook_bool + { \zref@wrapper@babel \zref@label {#1} } + } +% \end{macrocode} +% +% +% % \subsubsection*{\opt{nocompat} option} % % @@ -4007,8 +4041,8 @@ % % This is a set of options related to reference typesetting which receive % equal treatment and, hence, are handled in batch. Since we are dealing with -% options to be passed to \cs{zcref} or to \cs{zcsetup} or at load time, only -% ``not necessarily type-specific'' options are pertinent here. +% options to be passed to \cs{zcref} or to \cs{zcsetup}, only ``not +% necessarily type-specific'' options are pertinent here. % % % \begin{macrocode} @@ -7774,39 +7808,10 @@ % related features, mostly dealing with captions, subfloats, and notes. Some % of them are implemented in ways which make difficult the use of \pkg{zref}, % particularly \cs{zlabel}, short of redefining the whole stuff ourselves. -% Hopefully, these features are specialized enough to make \pkg{zref-clever} -% useful enough with \cls{memoir} without much friction, but unless some -% support is added upstream, it is difficult not to be a little intrusive -% here. +% Fortunately, however, the kernel's new \texttt{label} hook, and the +% \opt{labelhook} option, make things somewhat easier. % % \begin{enumerate} -% \item Caption functionality which receives \meta{label} as optional -% argument, namely: -% \begin{enumerate} -% \item The \env{sidecaption} and \env{sidecontcaption} environments. These -% environments \emph{store} the label in an internal macro, -% \cs{m@mscaplabel}, at the begin environment code (more precisely in -% \cs[replace=false]{@@sidecaption}), but both the call to -% \cs{refstepcounter} and the expansion of \cs{m@mscaplabel} take place at -% \cs{endsidecaption}. For this reason, hooks are not particularly -% helpful, and there is not any easy way to grab the \meta{label} argument -% to start with. I can see two ways to deal with these environments, none -% of which I really like. First, map through \cs{m@mscaplabel} until -% \cs{label} is found, then grab the next token which is the \meta{label}. -% This can be used to set a \cs{zlabel} either with a kernel environment -% hook, or with \cs{@mem@scap@afterhook} (the former requires running -% \cs{refstepcounter} on our own, since the \texttt{env/.../end} hook -% comes before this is done by \cs{endsidecaption}). Second, locally -% redefine \cs{label} to set both labels inside the environments. -% \item The bilingual caption commands: \cs{bitwonumcaption}, -% \cs{bionenumcaption}, and \cs{bicaption}. These commands do not support -% setting the label in their arguments (the labels do get set, but they -% end up included in the \texttt{title} property of the label too). So we -% do the same for them as for \env{sidecaption}, just taking care of -% grouping, since we can't count on the convenience of the environment -% hook (luckily for us, they are scoped themselves, so we can add an extra -% group there). -% \end{enumerate} % \item The \cs{subcaptionref} command, which makes a reference to the % subcaption without the number of the main caption (e.g. ``(b)'', instead % of ``2.3(b)''), for labels set inside the \meta{subtitle} argument of the @@ -7860,36 +7865,6 @@ } , } % \end{macrocode} -% Support for caption \cls{memoir} features that require that \meta{label} be -% supplied as an optional argument. -% \begin{macrocode} - \cs_new_protected:Npn \@@_memoir_both_labels: - { - \cs_set_eq:NN \@@_memoir_orig_label:n \label - \cs_set:Npn \@@_memoir_label_and_zlabel:n ##1 - { - \@@_memoir_orig_label:n {##1} - \zlabel{##1} - } - \cs_set_eq:NN \label \@@_memoir_label_and_zlabel:n - } - \AddToHook { env / sidecaption / begin } - { \@@_memoir_both_labels: } - \AddToHook { env / sidecontcaption / begin } - { \@@_memoir_both_labels: } - \AddToHook{ cmd / bitwonumcaption / before } - { \group_begin: \@@_memoir_both_labels: } - \AddToHook{ cmd / bitwonumcaption / after } - { \group_end: } - \AddToHook{ cmd / bionenumcaption / before } - { \group_begin: \@@_memoir_both_labels: } - \AddToHook{ cmd / bionenumcaption / after } - { \group_end: } - \AddToHook{ cmd / bicaption / before } - { \group_begin: \@@_memoir_both_labels: } - \AddToHook{ cmd / bicaption / after } - { \group_end: } -% \end{macrocode} % Support for \texttt{subcaption} reference. % \begin{macrocode} \zref@newprop { subcaption } @@ -7930,7 +7905,8 @@ % % \subsection{\opt{amsmath}} % -% About this, see \url{https://tex.stackexchange.com/a/402297}. +% About this, see \url{https://tex.stackexchange.com/a/402297} and +% \url{https://github.com/ho-tex/zref/issues/4}. % % \begin{macrocode} \@@_compat_module:nn { amsmath } @@ -7938,69 +7914,6 @@ \@@_if_package_loaded:nT { amsmath } { % \end{macrocode} -% First, we define a function for label setting inside \pkg{amsmath} math -% environments, we want it to set both \cs{zlabel} and \cs{label}. We may -% ``get a ride'', but not steal the place altogether. This makes for -% potentially redundant labels, but seems a good compromise. We \emph{must} -% use the lower level \cs{zref@label} in this context, and hence also handle -% protection with \cs{zref@wrapper@babel}, because \cs{zlabel} makes itself -% no-op when \cs{label} is equal to \cs{ltx@gobble}, and that's precisely the -% case inside the \env{multline} environment (and, damn!, I took a beating of -% this detail\dots{}). See also \url{https://github.com/ho-tex/zref/issues/4} -% and \url{https://github.com/latex3/latex2e/issues/272}. -% \begin{macrocode} - \cs_set_nopar:Npn \@@_ltxlabel:n #1 - { - \@@_orig_ltxlabel:n {#1} - \zref@wrapper@babel \zref@label {#1} - } -% \end{macrocode} -% Then we must store the original value of \cs{ltx@label}, which is the macro -% actually responsible for setting the labels inside \pkg{amsmath}'s math -% environments. And, after that, redefine it to be \cs{@@_ltxlabel:n} -% instead. We must handle \pkg{hyperref} here, which comes very late in the -% preamble, and which loads \pkg{nameref} at \texttt{begindocument} (though -% this has changed recently 2022-05-16, see -% \url{https://github.com/latex3/hyperref/commit/a011ba9308a1b047dc151796de557da0bb22abaa}), -% which in turn, lets \cs{ltx@label} be \cs{label}. This has to come after -% \pkg{nameref}. Other classes packages also redefine \cs{ltx@label}, which -% may cause some trouble. A \texttt{grep} on \texttt{texmf-dist} returns hits -% for: \file{thm-restate.sty}, \file{smartref.sty}, \file{jmlrbook.cls}, -% \file{cleveref.sty}, \file{cryptocode.sty}, \file{nameref.sty}, -% \file{easyeqn.sty}, \file{empheq.sty}, \file{ntheorem.sty}, -% \file{nccmath.sty}, \file{nwejm.cls}, \file{nwejmart.cls}, -% \file{aguplus.sty}, \file{aguplus.cls}, \file{agupp.sty}, -% \file{amsmath.hyp}, \file{amsmath.sty} (surprise!), \file{amsmath.4ht}, -% \file{nameref.4ht}, \file{frenchle.sty}, \file{french.sty}, plus -% corresponding documentations and different versions of the same packages. -% That's not too many, but not ``just a few'' either. The critical ones are -% explicitly handled here (\pkg{amsmath} itself, and \pkg{nameref}). A number -% of those I'm really not acquainted with. For \pkg{cleveref}, in particular, -% this procedure is not compatible with it. If we happen to come later than -% it and override its definition, this may be a substantial problem for -% \pkg{cleveref}, since it will find the label, but it won't contain the data -% it is expecting. However, this should normally not occur, if the user has -% followed the documented recommendation for \pkg{cleveref} to load it last, -% or at least very late, and besides I don't see much of an use case for using -% both \pkg{cleveref} and \pkg{zref-clever} together. I have documented in -% the user manual that this module may cause potential issues, and how to work -% around them. And I have made an upstream feature request for a hook, so -% that this could be made more cleanly at -% \url{https://github.com/latex3/hyperref/issues/212}. -% \begin{macrocode} - \@@_if_package_loaded:nTF { hyperref } - { - \AddToHook { package / nameref / after } - { - \cs_new_eq:NN \@@_orig_ltxlabel:n \ltx@label - \cs_set_eq:NN \ltx@label \@@_ltxlabel:n - } - } - { - \cs_new_eq:NN \@@_orig_ltxlabel:n \ltx@label - \cs_set_eq:NN \ltx@label \@@_ltxlabel:n - } -% \end{macrocode} % The \env{subequations} environment uses \texttt{parentequation} and % \texttt{equation} as counters, but only the later is subject to % \cs{refstepcounter}. What happens is: at the start, \texttt{equation} is @@ -8145,11 +8058,7 @@ % From the \pkg{breqn} documentation: \textquote{Use of the normal \cs{label} % command instead of the \opt{label} option works, I think, most of the time % (untested)}. Indeed, light testing suggests it does work for \cs{zlabel} -% just as well. However, if it happens not to work, there was no easy -% alternative handle I could find. In particular, it does not seem viable to -% leverage the \opt{label=} option without hacking the package internals, even -% if the case of doing so would not be specially tricky, just ``not very -% civil''. +% just as well. % % \begin{macrocode} \@@_compat_module:nn { breqn } @@ -8223,19 +8132,6 @@ counterresetby = { lstnumber = lstlisting } , } % \end{macrocode} -% Set (also) a \cs{zlabel} with the label received in the \texttt{label=} -% option from the \texttt{lstlisting} environment. The \emph{only} place to -% set this label is the \texttt{PreInit} hook. This hook, comes right after -% \cs{lst@MakeCaption} in \cs{lst@Init}, which runs \cs{refstepcounter} on -% \texttt{lstlisting}, so we must come after it. Also \pkg{listings} itself -% sets \cs{@currentlabel} to \cs{thelstnumber} in the \texttt{Init} hook, -% which comes right after the \texttt{PreInit} one in \cs{lst@Init}. Since, -% if we add to \texttt{Init} here, we go to the end of it, we'd be seeing the -% wrong \cs{@currentlabel} at that point. -% \begin{macrocode} - \lst@AddToHook { PreInit } - { \tl_if_empty:NF \lst@label { \zlabel { \lst@label } } } -% \end{macrocode} % Set \texttt{currentcounter} to \texttt{lstnumber} in the \texttt{Init} hook, % since \pkg{listings} itself sets \cs{@currentlabel} to \cs{thelstnumber} % here. Note that \pkg{listings} \emph{does use} \cs{refstepcounter} on diff --git a/macros/latex/contrib/zref-clever/zref-clever.ins b/macros/latex/contrib/zref-clever/zref-clever.ins index d4f77dcf36..668d25788f 100644 --- a/macros/latex/contrib/zref-clever/zref-clever.ins +++ b/macros/latex/contrib/zref-clever/zref-clever.ins @@ -22,7 +22,7 @@ % % This work consists of the files zref-clever.dtx, % zref-clever.ins, -% zref-clever.tex, +% zref-clever-doc.tex, % zref-clever-code.tex, % and the files generated from them. % @@ -68,7 +68,7 @@ This work is "maintained" (as per LPPL maintenance status) by This work consists of the files zref-clever.dtx, zref-clever.ins, - zref-clever.tex, + zref-clever-doc.tex, zref-clever-code.tex, and the files generated from them. diff --git a/macros/latex/contrib/zref-clever/zref-clever.pdf b/macros/latex/contrib/zref-clever/zref-clever.pdf deleted file mode 100644 index 4a4bfb147f..0000000000 Binary files a/macros/latex/contrib/zref-clever/zref-clever.pdf and /dev/null differ diff --git a/macros/latex/contrib/zref-clever/zref-clever.tex b/macros/latex/contrib/zref-clever/zref-clever.tex deleted file mode 100644 index 138e4e938e..0000000000 --- a/macros/latex/contrib/zref-clever/zref-clever.tex +++ /dev/null @@ -1,2672 +0,0 @@ -% \iffalse meta-comment -% -% File: zref-clever.tex -% -% This file is part of the LaTeX package "zref-clever". -% -% Copyright (C) 2021-2023 Gustavo Barros -% -% It may be distributed and/or modified under the conditions of the -% LaTeX Project Public License (LPPL), either version 1.3c of this -% license or (at your option) any later version. The latest version -% of this license is in the file: -% -% https://www.latex-project.org/lppl.txt -% -% and version 1.3 or later is part of all distributions of LaTeX -% version 2005/12/01 or later. -% -% -% This work is "maintained" (as per LPPL maintenance status) by -% Gustavo Barros. -% -% This work consists of the files zref-clever.dtx, -% zref-clever.ins, -% zref-clever.tex, -% zref-clever-code.tex, -% and the files generated from them. -% -% The released version of this package is available from CTAN. -% -% ----------------------------------------------------------------------- -% -% The development version of the package can be found at -% -% https://github.com/gusbrs/zref-clever -% -% for those people who are interested. -% -% ----------------------------------------------------------------------- -% -% \fi - -\documentclass{l3doc} - -% The package itself *must* be loaded so that \GetFileInfo can pick up date -% and version data. Naturally, we also use it. -\usepackage{zref-clever} -\zcsetup{cap} -\usepackage{zref-check} -\usepackage{zref-titleref} - -\usepackage[T1]{fontenc} - -\usepackage[sc]{mathpazo} -\linespread{1.05} -\usepackage[scale=.88]{tgheros} % sans -\usepackage[varqu,scaled=1.03]{inconsolata} % tt - -\usepackage{listings} - -\usepackage{microtype} - -\hypersetup{hidelinks} - -\NewDocumentCommand\opt{m}{\texttt{#1}} - -\NewDocumentCommand\username{m}{`\texttt{#1}'} - -\setlength{\marginparsep}{2\labelsep} - -\definecolor{reffmtbox}{gray}{0.15} -\definecolor{reffmtback}{gray}{0.85} -\NewDocumentCommand\reffmt{m}{% - \fcolorbox{reffmtbox}{reffmtback}{% - \rule[-0.2\baselineskip]{0pt}{0.8\baselineskip}\texttt{#1}}} - -\newlist{refformat}{itemize}{1} -\setlist[refformat]{label={}, beginpenalty=500, midpenalty=500} - -\NewDocumentCommand\zctask{m}{% - \begin{description} - \item[Task] #1 - \end{description}} - -\lstdefinestyle{code}{ - language=[LaTeX]TeX, - moretexcs={ - AddToHook, - define@key, - patchcmd, - eq@setnumber, - DeclareFloatingEnvironment, - newlist, - setlist, - zexternaldocument, - next@label, - next@label@pre, - @empty, - tag, - text, - lstset, - condition, - RenewDocumentCommand, - NewCommandCopy, - ltx@gobble, - @currentcounter, - zref@label, - zref@wrapper@babel, - zref@ifpropundefined, - zref@setcurrent, - zref@newprop, - zref@addprop, - beamer@old@zref@label, - alt, - beamer@nameslide, - beamer@dummynameslide, - ordinal, - tcbuselibrary, - tcbset, - newtcolorbox, - newtcbtheorem, - } -} -\lstdefinestyle{zrefclever}{ - style=code, - moretexcs={ - zcref, - zcpageref, - zlabel, - zcsetup, - zcLanguageSetup, - zcRefTypeSetup, - zcheck, - zvref, - zvpageref, - zvrefrange, - zvpagerefrange, - zfullref, - } -} -\lstset{ - style=zrefclever, - basicstyle=\ttfamily\small, - columns=fullflexible, - keepspaces, - xleftmargin=\leftmargin, - xrightmargin=.5\leftmargin, -} -% Setup inspired by https://tex.stackexchange.com/a/4068. For how to use these -% environments in a .dtx context see https://tex.stackexchange.com/a/31026. -\newcounter{zchowto} -\lstnewenvironment{zchowto}[1][]{% - \renewcommand{\lstlistingname}{How-to}% - \renewcommand*\theHlstlisting{ht.\thelstlisting}% - \lstset{#1}% - \setcounter{lstlisting}{\value{zchowto}}% -}{} -\newcounter{zcworkaround} -\lstnewenvironment{zcworkaround}[1][]{% - \renewcommand{\lstlistingname}{Work-around}% - \renewcommand*\theHlstlisting{wa.\thelstlisting}% - \lstset{#1}% - \setcounter{lstlisting}{\value{zcworkaround}}% -}{} -\lstnewenvironment{zcexample}[1][]{% - \renewcommand{\lstlistingname}{Example}% - \lstset{#1}% -}{} -\ExplSyntaxOn -\makeatletter -\lst@AddToHook { PreInit } - { - \cs_if_exist:cT { c@ \lstenv@name } - { \exp_args:Nx \refstepcounter { \lstenv@name } } - } -\makeatother -\ExplSyntaxOff - -\zcRefTypeSetup{zchowto}{ - Name-sg = {How-to}, - name-sg = {how-to}, - Name-pl = {How-tos}, - name-pl = {how-tos}, -} -\zcRefTypeSetup{zcworkaround}{ - Name-sg = {Work-around}, - name-sg = {work-around}, - Name-pl = {Work-arounds}, - name-pl = {work-arounds}, -} - -\begin{document} - -\GetFileInfo{zref-clever.sty} - -\title{% - The \pkg{zref-clever} package% - \thanks{This file describes \fileversion, released \filedate.}% - \texorpdfstring{\\{}\medskip{}}{ - }% - User manual% - \texorpdfstring{\medskip{}}{}% -} - -\author{% - Gustavo Barros% - \thanks{\url{https://github.com/gusbrs/zref-clever}}% -} - -\date{\filedate} - -\maketitle - -\begin{center} - {\bfseries \abstractname\vspace{-.5em}\vspace{0pt}} -\end{center} - -\begin{quotation} - \pkg{zref-clever} provides a user interface for making \LaTeX{} - cross-references which automates some of their typical features, thus easing - their input in the document and improving the consistency of typeset - results. A reference made with \cs{zcref} includes a ``name'' according to - its ``type'' and lists of multiple labels can be automatically sorted and - compressed into ranges when due. The reference format is highly and easily - customizable, both globally and locally. \pkg{zref-clever} is based on - \pkg{zref}'s extensible referencing system. -\end{quotation} - -\bigskip{} - -\begin{center} - \textbf{EXPERIMENTAL} - - Please read \zcref{sec:warning} carefully. -\end{center} - -\clearpage{} - -\tableofcontents - -\clearpage{} - -\section{Introduction} - -Cross-referencing is an area which lends itself quite naturally to automation. -Not only for input convenience but also, and most importantly, for end results -consistency. Indeed, the standard \LaTeX{} cross-referencing system -- with -\cs{label}, \cs{ref}, and \cs{pageref} -- is already a form of automation, by -relieving us from checking the number of the referenced object, and the page -where it lies. - -But the plethora of existing features, packages and document classes which, in -one way or another, extends this basic functionality is a clear indication of -a demand for more automation. Just to name the most popular: \pkg{cleveref}, -\pkg{hyperref}, \pkg{titleref}, \pkg{nameref}, \pkg{varioref}, \pkg{fancyref}, -and the kernel's \cs{labelformat}. - -However, the standard cross-referencing system stores two, and only two, -properties with the label: the printed representation of the counter last -incremented with \cs{refstepcounter} and the page. Of course, out of the -mentioned desire to automate more, the need arose to store more information -about the label to support this: the title or caption of the referenced -object; its counter or, even better, its ``type'', that is, whether it is a -section, chapter, figure, etc.; its hyperlink anchor, and so on. Thus those -two property ``fields'' of the standard label became quite a disputed real -state. And the packages in this area of functionality were bound to step on -each other's toes as a result. - -Out of this conundrum, Heiko Oberdiek eventually developed \pkg{zref}, which -implements an extensible referencing system, making the labels store a -property list of flexible length, so that new properties can be easily added -and queried. However, even when \pkg{zref} can rightfully boast this powerful -basic concept and is really quite featureful, with several different modules -available, it is fair to say that, for the average user, the package may -appear to be somewhat raw. Indeed, for someone who ``just wants to make a -cross-reference'', the user interface of the \pkg{zref-user} module is akin to -the standard \LaTeX{} cross-referencing system, and even requires some extra -work if you want to have a hyperlinked reference. In other words, \pkg{zref} -seems to have focused on infrastructure and on performing a number of -specialized tasks with different modules, and a large part of the landscape of -automation features available for the standard referencing system was not -carried over to \pkg{zref}, neither by the \pkg{zref} itself nor by other -packages. - -\pkg{zref-clever} tries to cover this gap, by bringing a number of existing -features available for the standard referencing system to \pkg{zref}. And the -package's name makes it clear that the core of the envisaged feature set is -that of \pkg{cleveref}, even though the attempt was less one of replicating -functionality per se than that of having it as a successful point of -reference, from where we could then try to tap into \pkg{zref}'s potential. -Indeed, although there is a significant intersection, the features of -\pkg{zref-clever} are neither a superset nor a subset of those of -\pkg{cleveref}. There are things either of them can do that the other can't. -There are also important differences in user interface design. In particular, -\pkg{zref-clever} relies heavily on \texttt{key=value} interfaces both for -general configuration and for centering in a single user command, \cs{zcref}, -as the main entrance for reference making, whose behavior can be modulated by -local options. - -Considering that \pkg{zref} itself offers the \pkg{zref-titleref} module, and -that \pkg{zref-vario} offers integration of \pkg{zref-clever} with -\pkg{varioref}, a significant part of the most prominent automation features -available to the standard referencing system is thus brought to \pkg{zref}, -working under a single consistent underlying infrastructure and user -interface. Alas, there are some limitations (see \zcref{sec:limitations}), -and it may be your cup of tea or not. Still, all in all, hopefully -\pkg{zref-clever} can make \pkg{zref} more accessible to the average user, and -more interesting to users in general. - - -\section{Warning} -\zlabel{sec:warning} - -This package is in its early days, and should be considered experimental. By -this I don't mean I expect it to be ``edgy'', indeed quite a lot of effort has -been put into it so that this is not the case. However, during the initial -development, I had to make a number of calls for which I felt I had -insufficient information: in relation to features, packages, or classes I -don't use much, or to languages I don't know well, user needs I found hard to -anticipate etc. Hence, the package needs some time, and some use by more -adventurous people, until it can settle down with more conviction. In the -meantime, polishing the user interface and the infrastructure have a clear -priority over backward compatibility. So, if you choose to use this package, -you should be ready to accommodate to eventual upstream changes. - - -\section{\pkg{zref-clever} for the impatient} - -\pkg{zref-clever} is based on \pkg{zref}'s referencing system which, though -independent of the standard one, is very similar to it in its user interface. -Indeed, to use \pkg{zref}, instead of setting a \cs{label} and making a -\cs{ref}, one would set a \cs{zlabel} and make \cs{zref}s to it, in pretty -much the same way as for the standard system. \pkg{zref-clever} introduces -the more featureful \cs{zcref} for making references, but relies on -\pkg{zref}'s \cs{zlabel} for label setting. - -A basic document using \pkg{zref-clever} is shown in \zcref{how:basic} which, -despite the small necessary adjustments, should feel very familiar to any -\LaTeX{} user acquainted with the standard referencing system: - -\begin{zchowto}[caption={Basic usage},label={how:basic}] -\documentclass{article} -\usepackage{zref-clever} -\usepackage{hyperref} -\begin{document} -\section{Section 1} -\zlabel{sec:section-1} -\begin{figure} - A figure. - \caption{Figure 1} - \zlabel{fig:figure-1} -\end{figure} -A reference to \zcref{sec:section-1}. \zcref[S]{fig:figure-1} shows some -interesting information. -A page reference can be done with either \zcpageref{sec:section-1} or with -\zcref[page]{sec:section-1}. -A reference can also be made to multiple labels, as in \zcref{sec:section-1, - fig:figure-1}. -\end{document} -\end{zchowto} - -The references in the document of \zcref{how:basic} illustrate one of the main -features of \pkg{zref-clever}, which is to include an appropriate ``type -name'' of the reference, alongside of the reference itself. The document -renders its references as: -\begin{quote} - A reference to section 1. Figure 1 shows some interesting information. A - page reference can be done with either page 1 or with page 1. A reference - can also be made to multiple labels, as in section 1 and figure 1. -\end{quote} - -\zcref[S]{how:basic} also illustrates the use the optional argument of -\cs{zcref} to modulate the behavior of the reference. In particular, the -\opt{S} option is one you should get acquainted with from the start, as it -ensures that the type name of a reference is properly capitalized and not -abbreviated, and it is meant to be used in references made at the beginning of -a sentence. - -But \pkg{zref-clever} is highly customizable, and several other options exist, -and multiple places where you can set them: - -\begin{itemize} -\item The optional argument of \cs{zcref}: for individual references. -\item \cs{zcsetup}: for settings meant to affect all references. -\item \cs{zcRefTypeSetup}: to customize the behavior of each reference type. -\item \cs{zcLanguageSetup}: for language-specific settings. -\end{itemize} - -For the list of available options, and for these different scopes in which -they can be used, see \zcref{sec:user-interface, sec:options, - sec:reference-format, sec:internationalization}. Other usage examples are -available at \zcref{sec:how-tos}. - - -\section{Loading the package} -\zlabel{sec:loading-package} - -\pkg{zref-clever} can be loaded with the usual: - -\begin{zcexample} -\usepackage{zref-clever} -\end{zcexample} - -The package does not accept load-time options, package options must be set -using \cs{zcsetup} (see \zcref{sec:user-interface}). - -\pkg{zref-clever} requires a recent \LaTeX{} kernel (2021-11-15 or newer) and -the packages \pkg{zref}, including some of its modules, and \pkg{ifdraft}. It -also requires UTF-8 input encoding, which has been the kernel's default for -some time. - - -\section{Dependencies} - -\pkg{zref-clever} requires \pkg{zref}, and \LaTeX{} kernel 2021-11-15, or -newer. It also needs \pkg{ifdraft}. Some packages are leveraged by -\pkg{zref-clever} if they are present, but are not loaded by default or -required by it, namely: \pkg{hyperref}, \pkg{zref-check}, and \pkg{zref}'s -\pkg{zref-titleref}, \pkg{zref-hyperref}, and \pkg{zref-xr} modules. - - -\section{User interface} -\zlabel{sec:user-interface} - -\begin{function}{\zcref} - \begin{syntax} - \cs{zcref}\meta{*}\oarg{options}\marg{labels} - \end{syntax} -\end{function} -Typesets references to \meta{labels}, given as a comma separated list. When -\pkg{hyperref} support is enabled, references will be hyperlinked to their -respective anchors, according to options. The starred version of the command -does the same as the plain one, just does not form links. The \meta{options} -are (mostly) the same as those of the package, and can be given to local -effect. The \meta{labels} argument is protected by \pkg{zref}'s -\cs{zref@wrapper@babel}, so that it enjoys the same support for \pkg{babel}'s -active characters as \pkg{zref} itself does. - -\begin{function}{\zcpageref} - \begin{syntax} - \cs{zcpageref}\meta{*}\oarg{options}\marg{labels} - \end{syntax} -\end{function} -Typesets page references to \meta{labels}, given as a comma separated list. -It is equivalent to calling \cs{zcref} with the \opt{ref=page} option: -\cs{zcref}\texttt{\meta{*}[}\meta{options}\texttt{,ref=page]}\marg{labels}. - - -\begin{function}{\zcsetup} - \begin{syntax} - \cs{zcsetup}\marg{options} - \end{syntax} -\end{function} -Sets \pkg{zref-clever}'s general options (see \zcref{sec:options, - sec:reference-format}). The settings performed by \cs{zcsetup} are local, -within the current group. But, of course, it can also be used to global -effects if ungrouped, e.g.\ in the preamble. - -\begin{function}{\zcRefTypeSetup} - \begin{syntax} - \cs{zcRefTypeSetup}\marg{type}\marg{options} - \end{syntax} -\end{function} -Sets type-specific reference format options (see -\zcref{sec:reference-format}). Just as for \cs{zcsetup}, the settings -performed by \cs{zcRefTypeSetup} are local, within the current group. - -\bigskip{} - -Besides these, user facing commands related to \zcref*[ref=title, - noname]{sec:internationalization} are presented in -\zcref{sec:internationalization}. Note still that all user commands are -defined with \cs{NewDocumentCommand}, which translates into the usual handling -of arguments by it and/or processing by \pkg{l3keys}, particularly with regard -to brace-stripping and space-trimming. - -Furthermore, \pkg{zref-clever} loads \pkg{zref}'s \pkg{zref-user} module by -default. So you also have its user commands available out of the box, -including \cs{zref} and \cs{zpageref}, but notably: - -\begin{function}{\zlabel} - \begin{syntax} - \cs{zlabel}\marg{label} - \end{syntax} -\end{function} -Sets \meta{label} for referencing with \cs{zref} and, thus, also \cs{zcref}. -\cs{zlabel} is provided by \pkg{zref-user} and is the counterpart of -\cs{label} for \pkg{zref}'s referencing system. - - -\section{Options} -\zlabel{sec:options} - -\pkg{zref-clever} is highly configurable, offering a lot of flexibility in -typeset results of the references, but it also tries to keep these ``handles'' -as convenient and user friendly as possible. To this end, most of what one -can do with \pkg{zref-clever} (pretty much all of it), can be achieved -directly through the standard and familiar ``comma separated list of -\texttt{key=value} options''. - -There are two main groups of options in \pkg{zref-clever}: ``general -options'', which affect the overall behavior of the package, or the reference -as a whole; and ``reference format options'', which control the detail of -reference formatting, including type-specific and language-specific settings. - -This section covers the first group (for the second one, see -\zcref{sec:reference-format}). General options can be set globally by means -of \cs{zcsetup} in the preamble (see \zcref{sec:user-interface}). They can -also be set locally with \cs{zcsetup} along the document or through the -optional argument of \cs{zcref} (see \zcref{sec:user-interface}). Most -general options can be used in any of these contexts, but that is not -necessarily true for all cases, some restrictions may apply, as described in -each option's documentation. - -\bigskip{} - -\DescribeOption{ref} % -\DescribeOption{page} % -The \opt{ref} option controls the label property to which \cs{zcref} refers -to. It can receive \pkg{zref} properties, as long as they are declared, but -notably \texttt{default}, \texttt{page}, \texttt{thecounter} and, if -\pkg{zref-titleref} is loaded, \texttt{title}. The package's default is, -well, \texttt{default}, which is our standard reference. \texttt{thecounter} -is a property set by \pkg{zref-clever} and is similar to \pkg{zref}'s -\texttt{default} property, except that it is not affected by the kernel's -\cs{labelformat}.\footnote{Technical note: the \texttt{default} property - stores \cs{@currentlabel}, while the \texttt{thecounter} property stores - \cs{the}\cs{@currentcounter}. The later is exactly what \cs{refstepcounter} - uses to build \cs{@currentlabel}, except for the \cs{labelformat} prefix - and, hence, has the advantage of being unaffected by it. But the former is - \emph{more reliable} since \cs{@currentlabel} is expected to be correct - pretty much anywhere whereas, although \cs{refstepcounter} does set - \cs{@currentcounter}, it is not everywhere that uses \cs{refstepcounter} for - the purpose. In the cases where the references from these two do diverge, - \pkg{zref-clever} will likely misbehave (reference type, sorting and - compression inevitably depend on a correct \opt{currentcounter}), but using - \texttt{default} at least ensures that the reference itself is correct. - That said, if you do set \cs{labelformat} for some reason, - \texttt{thecounter} may be useful.} By default, reference formatting, -sorting, and compression are done according to information inferred from the -\emph{current counter} (see \opt{currentcounter} option below). Special -treatment in these areas is provided for \texttt{page}, but not for any other -properties. The \opt{page} option is a convenience alias for -\texttt{ref=page}. - -\DescribeOption{typeset} % -\DescribeOption{noname} % -\DescribeOption{noref} % -When \cs{zcref} typesets a set of references, each group of references of the -same type can be, and by default are, preceded by the type's ``name'', and -this is indeed an important feature of \pkg{zref-clever}. This is optional -however, and the \opt{typeset} option controls this behavior. It can receive -values \texttt{ref}, in which case it typesets only the reference(s), -\texttt{name}, in which case it typesets only the name(s), or \texttt{both}, -in which case it typesets, well, both of them. Note that, when value -\texttt{name} is used, the name is still typeset according to the set of -references given to \cs{zcref}. For example, for multiple references, the -plural form is used, capitalization options are honored, etc. Also -hyperlinking behaves just \emph{as if} the references were present and, -depending on the corresponding options, the name may be linked to the first -reference of the type group. The \opt{noname} and \opt{noref} options are -convenience aliases for \texttt{typeset=ref} and \texttt{typeset=name}, -respectively. - -\DescribeOption{sort} % -\DescribeOption{nosort} % -The \opt{sort} option controls whether the list of \meta{labels} received as -argument by \cs{zcref} should be sorted or not. It is a boolean option, and -defaults to \texttt{true}. The \opt{nosort} option is a convenience alias for -\texttt{sort=false}. - -\DescribeOption{typesort} % -\DescribeOption{notypesort} % -Sorting references of the same type can be done with well defined logical -criteria. They either have the same counter or their counters share a clear -hierarchical relation (in the resetting behavior), such that a definite -sorting rule can be inferred from the label's data. The same is not true for -sorting of references of different types. Should ``tables'' come before or -after ``figures''? The \pkg{typesort} option allows to specify the sorting -priority of different reference types. It receives as value a comma separated -list of reference types, specifying that their sorting is to be done in the -order of that list. But \opt{typesort} does not need to receive \emph{all} -possible reference types. The special value \texttt{\{\{othertypes\}\}} (yes, -double braced, one for \pkg{l3keys}, so that the second can make the list) can -be placed anywhere along the list, to specify the sort priority of any type -not included explicitly. If \texttt{\{othertypes\}} is not present in the -list, it is presumed to be at the end of it. Any unspecified types (that is, -those falling implicitly or explicitly into the \texttt{\{othertypes\}} -category) get sorted between themselves in the order of their first appearance -in the label list given as argument to \cs{zcref}. I presume the common use -cases will not need to specify \texttt{\{othertypes\}} at all but, for the -sake of example, if you just really dislike equations, you could use -\texttt{typesort=\{\{\{othertypes\}\}, equation\}}. \opt{typesort}'s default -value is \texttt{\{part, chapter, section, paragraph\}}, which places the -sectioning reference types first in the list, in their hierarchical order, and -leaves everything else to the order of appearance of the labels. The -\opt{notypesort} option behaves like \texttt{typesort=\{\{\{othertypes\}\}\}} -would do, that is, it sorts all types in the order of the first appearance in -the labels' list. - -\DescribeOption{comp} % -\DescribeOption{nocomp} % -\cs{zcref} can automatically compress a set of references of the same type -into a range, when they occur in immediate sequence. The \opt{comp} controls -whether this compression should take place or not. It is a boolean option, -and defaults to \texttt{true}. The \opt{nocomp} option is a convenience alias -for \texttt{comp=false}. Of course, for better compression results the -\opt{sort} is recommended, but the two options are technically independent. - -\DescribeOption{endrange} % -The \opt{endrange} option provides additional control over how the end -reference of a range is typeset, so as to achieve terse ranges. The option -can operate in two technically different ways. It may receive one of a number -of predefined values, which can process the end reference of the range, -comparing it with the beginning reference, to achieve a given end -result.\footnote{For the \TeX{}nically inclined: those values that perform - some processing -- namely \texttt{stripprefix}, \texttt{pagecomp}, and - \texttt{pagecomp2} -- fully expand the references (\texttt{x}-type - expansion) before comparing them, since it makes sense to perform this task - as close as possible to the printed representation of the references. I - don't expect this to be a problem in normal use cases, but it does represent - a limitation on what the references can contain. In case some control over - this is needed, check the \texttt{zref-clever/endrange-setup} hook in the - code documentation.} Or, it can specify a label property to be used -directly, without any processing. The available predefined values are: -\texttt{ref}, \texttt{stripprefix}, \texttt{pagecomp}, and \texttt{pagecomp2}. -\texttt{ref} corresponds to the default behavior, and instructs \cs{zcref} to -use whatever property was set at the \opt{ref} option for the end of range -reference. \texttt{stripprefix} strips the common part at the start of each -reference from the end one. \texttt{pagecomp} is the equivalent of -\texttt{stripprefix} for page numbers, it does the same thing, but only if the -references are comprised exclusively of Arabic numerals. \texttt{pagecomp2} -is a variant of \texttt{pagecomp} that leaves at least two digits at the end -reference (except for a leading zero). If values other than the predefined -ones are given to \opt{endrange} they are considered as label properties, as -long as they are declared. This property is used to typeset the end of range -reference if the label contains it, and if both references would be -``compressible'' according to the \opt{comp} option, otherwise the property -specified by the \opt{ref} option is used. This is useful for things like -sub-elements for which we can build a proper abbreviated sub-reference and -populate the label with it (some compatibility modules already provide a -number of such properties, but other ones can be built with \pkg{zref}, as -needed). - -\DescribeOption{range} % -\DescribeOption{rangetopair} % -By default (that is, when the \opt{range} option is not given), \cs{zcref} -typesets a complete list of references according to the \meta{labels} it -received as argument, and only compresses some of them into ranges if the -\opt{comp} option is enabled and if references of the same type occur in -immediate sequence. The \opt{range} option makes \cs{zcref} behave -differently. Sorting is implied by this option (the \opt{sort} option is -disregarded) and, for each reference type group in \meta{labels}, \cs{zcref} -builds a range from the first to the last reference in it, even if references -in between do not occur in immediate sequence. It is a boolean option, and -the package's default is \texttt{range=false}. The option given without a -value is equivalent to \texttt{range=true} (in the \pkg{l3keys}' jargon, the -\emph{option}'s default is \texttt{true}). \cs{zcref} is smart enough to -recognize when the first and last references of a type do happen to be -contiguous, in which case it typesets a ``pair'', instead of a ``range''. But -this behavior can be disabled by setting the \opt{rangetopair} option to -\texttt{false}. - -\DescribeOption{cap} % -\DescribeOption{nocap} % -\DescribeOption{capfirst} % -The \opt{cap} option controls whether the reference type names should be -capitalized or not. It can receive values \texttt{true} or \texttt{false}, -and it can also be set for specific reference types or languages (see -\zcref{sec:reference-format}). The option given without a value is equivalent -to \texttt{cap=true}. The \opt{nocap} option is a convenience alias for -\texttt{cap=false}. The \opt{capfirst} option ensures that the reference type -name of the \emph{first} type block is capitalized, even when \opt{cap} is set -to \texttt{false}. - -\DescribeOption{abbrev} % -\DescribeOption{noabbrev} % -\DescribeOption{noabbrevfirst} % -The \opt{abbrev} option controls whether to use abbreviated reference type -names when they are available. It can receive values \texttt{true} or -\texttt{false}, and it can also be set for specific reference types or -languages (see \zcref{sec:reference-format}). The option given without a -value is equivalent to \texttt{abbrev=true}. The \opt{noabbrev} option is a -convenience alias for \texttt{abbrev=false}. The \opt{noabbrevfirst} ensures -that the reference type name of the \emph{first} type block is never -abbreviated, even when \opt{abbrev} is set to \texttt{true}. - -\DescribeOption{S} % -\opt{S} for ``Sentence''. The \opt{S} option is a convenience alias for -\texttt{capfirst=true, noabbrevfirst=true}, and is intended to be used in -references made at the beginning of a sentence. It is highly recommended that -you make a habit of using the \opt{S} option for beginning of sentence -references. Even if you do happen to be currently using \texttt{cap=true, - abbrev=false}, proper semantic markup will ensure you get expected results -even if you change your mind in that regard later on. For that reason, it was -made short and mnemonic, it can't get any easier. - -\DescribeOption{hyperref} % -The \opt{hyperref} option controls the use of \pkg{hyperref} by -\pkg{zref-clever} and takes values \opt{auto}, \opt{true}, \opt{false}. The -default value, \opt{auto}, makes \pkg{zref-clever} use \pkg{hyperref} if it is -loaded, meaning that references made with \cs{zcref} get hyperlinked to the -anchors of their respective \meta{labels}. \opt{true} does the same thing, -but warns if \pkg{hyperref} is not loaded (\pkg{hyperref} is never loaded for -you). In either of these cases, if \pkg{hyperref} is loaded, module -\pkg{zref-hyperref} is also loaded by \pkg{zref-clever}. \opt{false} means -not to use \pkg{hyperref} regardless of its availability. This is a preamble -only option, but \cs{zcref} provides granular control of hyperlinking by means -of its starred version. - -\DescribeOption{nameinlink} % -The \opt{nameinlink} option controls whether the type name should be included -in the reference hyperlink or not (provided there is a link, of course). -Naturally, the name can only be included in the link of the \emph{first} -reference of each type block. \opt{nameinlink} can receive values -\texttt{true}, \texttt{false}, \texttt{single}, and \texttt{tsingle}. When -the value is \texttt{true} the type name is always included in the hyperlink. -When it is \texttt{false} the type name is never included in the link. When -the value is \texttt{single}, the type name is included in the link only if -\cs{zcref} is typesetting a single reference (not necessarily having received -a single label as argument, as they may have been compressed), otherwise, the -name is left out of the link. When the value is \texttt{tsingle}, the type -name is included in the link for each type block with a single reference, -otherwise, it isn't. An example: suppose you make a couple of references to -something like \cs{zcref}\texttt{\{chap:chapter1\}} and -\cs{zcref}\texttt{\{chap:chapter1, sec:section1, fig:figure1, fig:figure2\}}. -The ``figure'' type name will only be included in the hyperlink if -\opt{nameinlink} option is set to \texttt{true}. If it is set to -\texttt{tsingle}, the first reference will include the name in the link for -``chapter'', as expected, but also in the second reference the ``chapter'' and -``section'' names will be included in their respective links, while that of -``figure'' will not. If the option is set to \texttt{single}, only the name -for ``chapter'' in the first reference will be included in the link, while in -the second reference none of them will. The package's default is -\texttt{nameinlink=tsingle}, and the option given without a value is -equivalent to \texttt{nameinlink=true}. - -\DescribeOption{lang} % -The \opt{lang} option controls the language used by \cs{zcref} when looking -for language-specific reference format options (see -\zcref{sec:reference-format}). The default value, \texttt{current}, uses the -current language, as defined by \pkg{babel} or \pkg{polyglossia} (or -\texttt{english} if none of them is loaded). Value \texttt{main} uses the -main document language, as defined by \pkg{babel} or \pkg{polyglossia} (or -\texttt{english} if none of them is loaded). The \opt{lang} option also -accepts that the language be specified directly by its name, as long as it's a -language known by \pkg{zref-clever}. For more details on -\zcref*[ref=title,noname]{sec:internationalization}, see -\zcref{sec:internationalization}. - -\DescribeOption{d} % -The \opt{d} option sets the declension case, and affects the type name used -for typesetting the reference. Whether this option is operative, and which -values it accepts, depends on the declared setup for each language. For -details, see \zcref{sec:internationalization}. - -\DescribeOption{nudge} % -\DescribeOption{nudgeif} % -\DescribeOption{nonudge} % -\DescribeOption{sg} % -\DescribeOption{g} % -This set of options revolving around \opt{nudge} aims to offer some guard -against mischievous automation on the part of \pkg{zref-clever} by providing a -number of ``nudges'' (compilation time messages) for cases in which you may -wish to revise material \emph{surrounding} the reference -- an article, a -preposition -- according to the reference typeset results. Useful mainly for -languages which inflect the preceding article to gender and/or number, but may -be used generally to fine-tune the language and style around the -cross-references made with \cs{zcref}. The \opt{nudge} option is the main -entrance to this feature and takes values \texttt{true}, \texttt{false}, -\texttt{ifdraft}, or \texttt{iffinal}. The first two, respectively, enable or -disable the ``nudging'' unconditionally. With \texttt{ifdraft}, \opt{nudge} -keeps quiet when option \texttt{draft} is given to \cs{documentclass}, while -with \texttt{iffinal}, nudging is only enabled when option \texttt{final} is -(explicitly) passed to \cs{documentclass}. The option given without a value -is equivalent to \texttt{nudge=true} and the package's default is -\texttt{nudge=false}. \opt{nonudge} is a convenience alias for -\texttt{nudge=false}, and can be used to silence individual references. The -\opt{nudgeif} option controls the events which may trigger a nudge. It takes -a comma separated list of elements, and recognizes values \texttt{multitype}, -\texttt{comptosing}, \texttt{gender}, and \texttt{all}. The -\texttt{multitype} nudge warns when the reference is composed by multiple type -blocks (see \zcref{sec:reference-format}). The \texttt{comptosing} nudge -let's you know when multiple labels of the same type have been compressed to a -singular type name form. It can be combined with the \opt{sg} option, which -is the way to tell \cs{zcref} you know it's a singular and so not to nudge if -a compression to singular occurs, but to nudge if the contrary occurs, that -is, when a plural type name form is employed. The \texttt{gender} nudge must -be combined with option \opt{g}, and depends on the language having support -for it. In essence language files can store the gender(s) of each type name -(this is done for built-in language files, but can also be done with -\cs{zcLanguageSetup} for languages declared to support it). The \opt{g} -option let's you specify the gender you expect for that particular reference -and the nudge is triggered if there is a mismatch between \opt{g} and the -gender(s) for the type name in the language file. Both the -\texttt{comptosing} and the \texttt{gender} nudges have a type block as its -scope. See \zcref{sec:internationalization} for more details and intended use -cases of the ``nudging'' feature. - -\DescribeOption{font} % -The \opt{font} option can receive font styling commands to change the -appearance of the whole reference list (see also the \opt{namefont} and -\opt{reffont} reference format options in \zcref{sec:reference-format}). It -does not affect the content of the \opt{note}, however. The option is -intended exclusively for commands that only change font attributes: style, -family, shape, weight, size, color, etc. Anything else, particularly commands -that may generate typeset output, is not supported. - -\DescribeOption{note} % -The \opt{note} option receives as value some text to be typeset at the end of -the whole reference list. It is separated from it by \opt{notesep} (see -\zcref{sec:reference-format}). - -\DescribeOption{check} % -Provides integration of \pkg{zref-clever} with the \pkg{zref-check} package. -The option is only functional in the document body and if \pkg{zref-check} has -been loaded. \opt{check} requires a value, which works exactly like the -optional argument of \cs{zcheck}, and can receive both checks and -\cs{zcheck}'s options. And the checks are performed for each label in -\marg{labels} received as argument by \cs{zcref}. See the User manual of -\pkg{zref-check} for details. The checks done by the \opt{check} option in -\cs{zcref} comprise the complete reference, including the \opt{note} (see -\zcref{sec:reference-format}). - -\DescribeOption{countertype} % -\DescribeOption{reftype} % -The \opt{countertype} option allows to specify the ``reference type'' of each -counter, which is stored as a label property when the label is set. This -reference type is what determines how a reference to this label will -eventually be typeset when it is referred to (see -\zcref{sec:reference-types}). A value like \texttt{countertype = \{foo = - bar\}} sets the \texttt{foo} counter to use the reference type \texttt{bar}. -There's only need to specify the \opt{countertype} for counters whose name -differs from that of their type, since \pkg{zref-clever} presumes the type has -the same name as the counter, unless otherwise specified. Also, the default -value of the option already sets appropriate types for basic \LaTeX{} -counters, including those from the standard classes. Setting a counter type -to an empty value removes any (explicit) type association for that counter, in -practice, this means it then uses a type equal to its name. The \opt{reftype} -option allows one to specify the reference type manually, regardless of the -current counter. This can be used to locally override any \opt{countertype} -settings of the package and, for those acquainted with it, is the equivalent -of \pkg{cleveref}'s optional argument to \cs{label}. Normally, you'd want to -use this option within a group, but if you must do otherwise, the default -value can be restored by setting the option without a value. Since these -options only affect how labels are set, they are not available in \cs{zcref}. - -\DescribeOption{\raisebox{-.2em}{\dbend}\ counterresetters} % -\DescribeOption{counterresetby} % -The sorting and compression of references done by \cs{zcref} requires that we -know the counter associated with a particular label but also information on -any counter whose stepping may trigger its resetting, or its ``enclosing -counters''. This information is not easily retrievable from the counter -itself but is (normally) stored with the counter that does the resetting. The -\opt{counterresetters} option adds counter names, received as a comma -separated list, to the list of counters \pkg{zref-clever} uses to search for -``enclosing counters'' of the counter for which a label is being set. -Unfortunately, not every counter gets reset through the standard machinery for -this, including some \LaTeX{} kernel ones (e.g. the \texttt{enumerate} -environment counters). For those, there is really no way to retrieve this -information directly, so we have to just tell \pkg{zref-clever} about them. -And that's what the \opt{counterresetby} option is made for. It receives a -comma separated list of \texttt{key=value} pairs, in which \texttt{key} is the -counter, and \texttt{value} is its ``enclosing counter'', that is, the counter -whose stepping results in its resetting. This is not really an ``option'' in -the sense of ``user choice'', it is more of a way to inform \pkg{zref-clever} -of something it cannot know or automatically find in general. One cannot -place arbitrary information there, or \pkg{zref-clever} can be thoroughly -confused. The setting must correspond to the actual resetting behavior of the -involved counters. \opt{counterresetby} has precedence over the search done -in the \opt{counterresetters} list. The default value of -\opt{counterresetters} includes the counters for sectioning commands of the -standard classes which, in most cases, should be the relevant ones for -cross-referencing purposes. The default value of \opt{counterresetby} -includes the \texttt{enumerate} environment counters. So, hopefully, you -don't need to ever bother with either of these options. But, if you do, they -are here. Use them with caution though. Since these options only affect how -labels are set, they are not available in \cs{zcref}. - -\DescribeOption{\raisebox{.4em}{\dbend}\ currentcounter} % -\LaTeX{}'s \cs{refstepcounter} sets two variables which potentially affect the -\cs{zlabel} set after it: \cs{@currentlabel} and \cs{@currentcounter}. -Actually, traditionally, only the current label was thus stored, the current -counter was added to \cs{refstepcounter} somewhat recently (with the -2020-10-01 kernel release). But, since \pkg{zref-clever} relies heavily on -the information of what the current counter is, it must set \pkg{zref} to -store that information with the label, as it does. As long as the document -element we are trying to refer to uses the standard machinery of -\cs{refstepcounter} we are on solid ground and can retrieve the correct -information. However, it is not always ensured that \cs{@currentcounter} is -kept up to date. For example, packages which handle labels specially, for one -reason or another, may or may not set \cs{@currentcounter} as required. -Considering the addition of \cs{@currentcounter} to \cs{refstepcounter} itself -is not that old, it is likely that in a good number of places a reliable -\cs{@currentcounter} is not really in place. Therefore, it may happen we need -to tell \pkg{zref-clever} what the current counter is in certain -circumstances, and that's what \opt{currentcounter} does. The same as with -the previous two options, this is not really an ``user choice'' kind of -option, but a way to tell \pkg{zref-clever} a piece of information it has no -means to retrieve automatically. The setting must correspond to the actual -``current counter'', meaning here ``the counter underlying -\cs{@currentlabel}'' in a given situation. Also, when using the -\opt{currentcounter} option, take care that the setting is duly grouped -because, if set, it has precedence over \cs{@currentcounter} and, contrary to -the later, the former is not reset the next time \cs{refstepcounter} runs. -Its default value is, quite naturally, \cs{@currentcounter}. The default -value can be reset by calling the option with no value. Since this option -only affects how labels are set, it is not available in \cs{zcref}. - -\DescribeOption{nocompat} % -Some packages, document classes, or LaTeX features may require specific -support to work with \pkg{zref-clever} (see \zcref{sec:limitations}). -\pkg{zref-clever} tries to make things smoother by covering some of them. -Depending on the case, this can take the form of some simple setup for -\pkg{zref-clever}, or may involve the use of hooks to external environments or -commands and, eventually, a patch or redefinition. By default, all the -available compatibility modules are enabled. Should this be undesired or -cause any problems in your environment, the option \opt{nocompat} can -selectively or completely inhibit their loading. \opt{nocompat} receives a -comma separated list of compatibility modules to disable (for the list of -available modules and details about each of them, see -\zcref{sec:comp-modules}). You can disable all modules by setting -\opt{nocompat} without a value (or an empty one). This is a preamble only -option. - - -\section{Reference types} -\zlabel{sec:reference-types} - -A ``reference type'' is the basic \pkg{zref-clever} setup unit for specifying -how a cross-reference group of a certain kind is to be typeset. Though, -usually, it will have the same name as the underlying \LaTeX{} \emph{counter}, -they are conceptually different. \pkg{zref-clever} sets up \emph{reference - types} and an association between each \emph{counter} and its \emph{type}, -it does not define the counters themselves, which are defined by your -document. One \emph{reference type} can be associated with one or more -\emph{counters}, and a \emph{counter} can be associated with different -\emph{types} at different points in your document. But each label is stored -with only one \emph{type}, as specified by the counter-type association at the -moment it is set, and that determines how the reference to that label is -typeset. References to different \emph{counters} of the same \emph{type} are -grouped together, and treated alike by \cs{zcref}. A \emph{reference type} -may be known to \pkg{zref-clever} when the \emph{counter} it is associated -with is not actually defined, and this inconsequential. In practice, the -contrary may also happen, a \emph{counter} may be defined but we have no -\emph{type} for it, but this must be handled by \pkg{zref-clever} as an error -(at least, if we try to refer to it), usually a ``missing name'' error. - -\pkg{zref-clever} provides default settings for the following reference types: -\texttt{part}, \texttt{chapter}, \texttt{section}, \texttt{paragraph}, -\texttt{appendix}, \texttt{subappendix}, \texttt{page}, \texttt{line}, -\texttt{figure}, \texttt{table}, \texttt{item}, \texttt{footnote}, -\texttt{endnote}, \texttt{note}, \texttt{equation}, \texttt{theorem}, -\texttt{lemma}, \texttt{corollary}, \texttt{proposition}, \texttt{definition}, -\texttt{proof}, \texttt{result}, \texttt{remark}, \texttt{example}, -\texttt{algorithm}, \texttt{listing}, \texttt{exercise}, and -\texttt{solution}. Therefore, if you are using a language for which -\pkg{zref-clever} has built-in support (see \zcref{sec:internationalization}), -these reference types are available for use out of the box.\footnote{There may - be slight availability differences depending on the language, but - \pkg{zref-clever} strives to keep this complete list available for the - languages it has built-in language files.} And, in any case, it is always -easy to setup custom reference types with \cs{zcRefTypeSetup} or -\cs{zcLanguageSetup} (see \zcref{sec:user-interface, sec:reference-format, - sec:internationalization}). - -The association of a \emph{counter} to its \emph{type} is controlled by the -\opt{countertype} option. As seen in its documentation, \pkg{zref-clever} -presumes the \emph{type} to be the same as the \emph{counter} unless -instructed otherwise by that option. This association, as determined by the -local value of the option, affects how the \emph{label} is set, which stores -the type among its properties. However, when it comes to typesetting, that is -from the perspective of \cs{zcref}, only the \emph{type} matters. In other -words, how the reference is supposed to be typeset is determined at the point -the \emph{label} gets set. In sum, they may be namesakes (or not), but type -is type and counter is counter. - -Indeed, a reference type can be associated with multiple counters because we -may want to refer to different document elements, with different -\emph{counters}, as a single \emph{type}, with a single name. One prominent -case of this are sectioning commands. \cs{section}, \cs{subsection}, and -\cs{subsubsection} have each their counter, but we'd like to refer to all of -them by ``sections'' and group them together. The same for \cs{paragraph} and -\cs{subparagraph}. - -There are also cases in which we may want to use different \emph{reference - types} to refer to document objects sharing the same \emph{counter}. -Notably, the environments created with \LaTeX{}'s \cs{newtheorem} command and -the \cs{appendix}. - - -One more observation about ``reference types'' is due here. A \emph{type} is -not really ``defined'' in the sense a variable or a function is. It is more -of a ``name'' which \pkg{zref-clever} uses to look for a whole set of -type-specific reference format options (see \zcref{sec:reference-format}). -Each of these options individually may be ``set'' or not, ``defined'' or not. -And, depending on the setup and the relevant precedence rules for this, some -of them may be required and some not. In practice, \pkg{zref-clever} uses the -\emph{type} to look for these options when it needs one, and issues a -compilation warning when it cannot find a suitable value. - - -\section{Reference format} -\zlabel{sec:reference-format} - -Formatting how the reference is to be typeset is, quite naturally, a big part -of the user interface of \pkg{zref-clever}. In this area, we tried to balance -``flexibility'' and ``user friendliness''. But the former does place a big -toll overall, since there are indeed many places where tweaking may be -desired, and the settings may depend on at least two important dimensions of -variation: the reference type and the language. Combination of those -necessarily makes for a large set of possibilities. Hence, the attempt here -is to provide a rich set of ``handles'' for fine tuning the reference format -but, at the same time, do not \emph{require} detailed setup by the users, -unless they really want it. - -With that in mind, we have settled with a user interface for reference -formatting which allows settings to be done in different scopes, with more or -less overarching effects, and some precedence rules to regulate the relation -of settings given in each of these scopes. There are four scopes in which -reference formatting can be specified by the user, in the following precedence -order: i) as \emph{general options}; ii) as \emph{type-specific options}; iii) -as \emph{language- and type-specific options}; and iv) as -\emph{language-specific default options}. Besides those, there's a fifth -\emph{internal} scope, with the least priority of all, a ``fallback'', for the -cases where it is meaningful to provide some value, even for an unknown -language. The package itself places the default setup for reference -formatting at low precedence levels, and the users can easily and conveniently -override them as desired. - -``General'' options (i) can be given by the user in the optional argument of -\cs{zcref}, but also set through \cs{zcsetup} (see \zcref{sec:options}). -``Type'' specific options (ii) are handled by \cs{zcRefTypeSetup} (see -\zcref{sec:user-interface}). ``Language'' options, whether ``type'' specific -(iii) or ``default'' (iv) have their user interface in \cs{zcLanguageSetup}, -and have their values populated by the package's built-in language files (see -\zcref{sec:internationalization}). Not all reference format specifications -can be given in all of these scopes, though. Some of them can't be -type-specific, others must be type-specific, so the set available in each -scope depends on the pertinence of the case. \zcref{tab:reference-format} -introduces the available reference format options, which will be discussed in -more detail soon, and lists the scopes in which each is available. - - -\begin{table}[htb] - \centering - \begin{tabular}{l>{\ttfamily}lcccc} - \toprule - & & General & Type & \multicolumn{2}{c}{Language} \\ - \cmidrule(lr){5-6} - & & & & Type & Default \\ - & & (i) & (ii) & (iii) & (iv) \\ - - \midrule - Typesetting & tpairsep & $\bullet$ & & & $\bullet$ \\ - (necessarily not & tlistsep & $\bullet$ & & & $\bullet$ \\ - type-specific) & tlastsep & $\bullet$ & & & $\bullet$ \\ - & notesep & $\bullet$ & & & $\bullet$ \\ - - \addlinespace - Typesetting & namesep & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - (possibly & pairsep & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - type-specific) & listsep & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & lastsep & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & rangesep & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & refbounds & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - - \addlinespace - Typesetting & Name-sg & & $\bullet$ & $\bullet$ & \\ - (necessarily & name-sg & & $\bullet$ & $\bullet$ & \\ - type-specific) & Name-pl & & $\bullet$ & $\bullet$ & \\ - & name-pl & & $\bullet$ & $\bullet$ & \\ - & Name-sg-ab & & $\bullet$ & $\bullet$ & \\ - & name-sg-ab & & $\bullet$ & $\bullet$ & \\ - & Name-pl-ab & & $\bullet$ & $\bullet$ & \\ - & name-pl-ab & & $\bullet$ & $\bullet$ & \\ - - \addlinespace - Font & namefont & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & reffont & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - - \addlinespace - Other & cap & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & abbrev & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & endrange & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & rangetopair & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - \bottomrule - \end{tabular} - \caption{Reference format options and their scopes} - \zlabel{tab:reference-format} -\end{table} - - -Understanding the role of each of these reference format options is likely -eased by some visual schemes of how \pkg{zref-clever} builds a reference based -on the labels' data and the value of these options. Take a \texttt{ref} to be -that which a standard \LaTeX{} \cs{ref} would typeset. A \pkg{zref-clever} -``reference block'', or \texttt{ref-block}, is constructed as: - -\begin{refformat} -\item \reffmt{ref-block} \(\equiv\) -\item \reffmt{preref*} - \raisebox{-\baselineskip}{\makebox[0pt]{\^{}}}% - \raisebox{-1.2\baselineskip}{\makebox[0pt]{\footnotesize{}hyperlink start}} - \reffmt{preref} \reffmt{ref} \reffmt{postref} - \raisebox{-\baselineskip}{\makebox[0pt]{\^{}}}% - \raisebox{-1.2\baselineskip}{\makebox[0pt]{\footnotesize{}hyperlink end}} - \reffmt{postref*} -\end{refformat} - -Where the \opt{refbounds} option, which receives as value a comma separated -list of four items in the form \texttt{\{preref*,preref,postref,postref*\}}, -sets the surrounding elements to \texttt{ref}.\footnote{As usual, if each of - the items contains start or end spaces, or commas anywhere, they must be - protected by a pair of braces. However, care is taken that empty items - don't need such protection. So you can set, for example, something like - \texttt{refbounds=\{(,{},{},)\}} to get parentheses around your references, - outside the hyperlink.} A \texttt{ref-block} is built for \emph{each} label -given as argument to \cs{zcref}. When the \meta{labels} argument is comprised -of multiple labels, each ``reference type group'', or \texttt{type-group} is -potentially made from the combination of single reference blocks, ``reference -block pairs'', ``reference block lists'', or ``reference block ranges'', where -each is respectively built as: - -\begin{refformat} -\item \reffmt{type-group} is a combination of: -\item \reffmt{ref-block} -\item \reffmt{ref-block1} \reffmt{pairsep} \reffmt{ref-block2} -\item \reffmt{ref-block1} \reffmt{listsep} \reffmt{ref-block2} - \reffmt{listsep} \reffmt{ref-block3} \dots{} \par \qquad - \dots{}\reffmt{ref-blockN-1} \reffmt{lastsep} \reffmt{ref-blockN} -\item \reffmt{ref-block1} \reffmt{rangesep} \reffmt{ref-blockN} -\end{refformat} - -To complete a ``type-block'', a \texttt{type-group} only needs to be -accompanied by the ``type name'': - -\begin{refformat} -\item \reffmt{type-block} \(\equiv\) -\item \reffmt{type-name} \reffmt{namesep} \reffmt{type-group} -\end{refformat} - -The \texttt{type-name} is determined not by one single reference format option -but by the appropriate one among the \opt{[Nn]ame-} options according to the -composition of \texttt{type-group} and the general options. The reference -format name options are eight in total: \opt{Name-sg}, \opt{name-sg}, -\opt{Name-pl}, \opt{name-pl}, \opt{Name-sg-ab}, \opt{name-sg-ab}, -\opt{Name-pl-ab}, and \opt{name-pl-ab}. The initial uppercase ``\texttt{N}'' -signals the capitalized form of the type name. The \texttt{-sg} suffix stands -for singular, while \texttt{-pl} for plural. The \texttt{-ab} is appended to -the abbreviated type name form options. When setting up a type, not -necessarily all forms need to be provided. \pkg{zref-clever} will always use -the non-abbreviated form as a fallback to the abbreviated one, if the later is -not available. Hence, if a reference type is not intended to be used with -abbreviated names (the most common case), only the basic four forms are -needed. Besides that, if you are using the \opt{cap} option, only the -capitalized forms will ever be required by \cs{zcref}, so you can get away -setting only \opt{Name-sg} and \opt{Name-pl}. You should not do the contrary -though, and provide only the non-capitalized forms because, even if you are -using the \opt{nocap} option, the capitalized forms will be still required for -\opt{capfirst} and \opt{S} options to work. Whatever the case may be, you -need not worry too much about being remiss in this area: if \cs{zcref} does -lack a name form in any given reference, it will let you know with a -compilation warning (and will typeset the usual missing reference sign: -``\textbf{??}''). - -A complete reference typeset by \cs{zcref} may be comprised of multiple -\texttt{type-block}s, in which case the ``type-block-group'' can also be made -of single type blocks, ``type block pairs'' or ``type block lists'', where -each is respectively built as: - -\begin{refformat} -\item \reffmt{type-block-group} is one of: -\item \reffmt{type-block} -\item \reffmt{type-block1} \reffmt{tpairsep} \reffmt{type-block2} -\item \reffmt{type-block1} \reffmt{tlistsep} \reffmt{type-block2} - \reffmt{tlistsep} \reffmt{type-block3} \dots{} \par \qquad \dots{} - \reffmt{type-blockN-1} \reffmt{tlastsep} \reffmt{type-blockN} -\end{refformat} - -Finally, since \cs{zcref} can also receive an optional \opt{note}, its full -typeset output is built as: - -\begin{refformat} -\item A complete \reffmt{\cs{zcref}} reference: -\item \reffmt{type-block-group} \reffmt{notesep} \reffmt{note} -\end{refformat} - -Reference format options can yet be divided in three general categories: i) -``typesetting'' options, the ones which we have seen thus far, as ``building -blocks'' of the reference; ii) ``font'' options, which control font attributes -of parts of the reference, namely \opt{namefont} and \opt{reffont}; and iii) -``other'' options. ``Typesetting'' options are intended exclusively for -typesetting material: things you expect to see in the output of your -references. ``Font'' options set the font, respectively, for the -\texttt{type-name} and for \texttt{ref} (to set the font for the whole -reference, see the \opt{font} option in \zcref{sec:options}). These options -are intended exclusively for commands that only change font attributes: style, -family, shape, weight, size, color, etc. In either case, anything other than -their intended uses is not supported. - -Finally, a comment about the internal ``fallback'' reference format values -mentioned above. These ``last resort'' option values are required by -\pkg{zref-clever} for a clear particular case: if the user loads either -\pkg{babel} or \pkg{polyglossia}, or explicitly sets a language, with a -language that \pkg{zref-clever} does not know and has no language file for, it -cannot guess what language that is, and thus has to provide some reasonable -``language agnostic'' default, at least for the options for which this makes -sense. Users do not need to have access to this scope, since they know the -language of their document, or know the values they want for those options, -and can set them as general options, type-specific options, or language -options through the user interface provided for the purpose. But the -``fallback'' options are documented here so that you can recognize when you -are getting these values and change them appropriately as desired. Though -hopefully reasonable, they may not be what you want. The ``fallback'' option -values are the following: - -\begin{zcexample}[escapeinside=`'] -tpairsep = {,`\textvisiblespace{}'} , -tlistsep = {,`\textvisiblespace{}'} , -tlastsep = {,`\textvisiblespace{}'} , -notesep = {`\textvisiblespace{}'} , -namesep = {\nobreakspace} , -pairsep = {,`\textvisiblespace{}'} , -listsep = {,`\textvisiblespace{}'} , -lastsep = {,`\textvisiblespace{}'} , -rangesep = {\textendash} , -\end{zcexample} - - -\subsection{Advanced reference formatting} - -The reference format options discussed above and presented in -\zcref{tab:reference-format} should suffice for most needs. However, if more -fine-grained control of the reference format is needed, this can be achieved -through a more detailed specification of \opt{refbounds} for the different -cases in which they may occur when a reference is processed. The options -available for this purpose are presented in -\zcref{tab:advanced-reference-format}. - -\begin{table} - \centering - \DeleteShortVerb \| - \begin{tabular}{l>{\ttfamily}lcccc} - \toprule - & & General & Type & \multicolumn{2}{c}{Language} \\ - \cmidrule(lr){5-6} - & & & & Type & Default \\ - & & (i) & (ii) & (iii) & (iv) \\ - - \midrule - Base & refbounds-first & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - options & refbounds-first-sg & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & refbounds-first-pb & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & refbounds-first-rb & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & refbounds-mid & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & refbounds-mid-rb & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & refbounds-mid-re & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & refbounds-last & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & refbounds-last-pe & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & refbounds-last-re & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - - \addlinespace - Derived & +refbounds-first & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - options & +refbounds-mid & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - (groups) & +refbounds-last & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & +refbounds-rb & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & +refbounds-re & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - & +refbounds & $\bullet$ & $\bullet$ & $\bullet$ & $\bullet$ \\ - \bottomrule - \end{tabular} - \caption{Advanced reference format options and their scopes} - \zlabel{tab:advanced-reference-format} -\end{table} - -The ``base'' options are the actually operative ones, while the ``derived'' -options are convenience aliases to set multiple base options in one go. In -the naming scheme of these options, as is easy to presume, ``\texttt{first}'' -refers to the first reference of a type-block, ``\texttt{mid}'' to the middle -ones, and ``\texttt{last}'' to the last reference of the type-block. Less -obviously, but hopefully still mnemonic enough, ``\texttt{sg}'' stands for -``single'', ``\texttt{pb}'' and ``\texttt{pe}'' for ``pair begin'' and ``pair -end'', and finally ``\texttt{rb}'' and ``\texttt{re}'' for ``range begin'' and -``range end''. Each of them receives as value a comma separated list of four -items in the form \texttt{\{preref*,preref,postref,postref*\}}, just like -\opt{refbounds}. - -The base options are mutually exclusive, which means, for example, that it is -not sufficient to set \opt{refbounds-first} to define the behavior of all -first references of a type block. \opt{refbounds-first} is the value used for -the first reference when not single, not the beginning of a pair, and not the -beginning of a range. Setting a group of them is the purpose of the derived -options. Each of these sets all options under it. Some examples. -\opt{+refbounds-first} sets \opt{refbounds-first}, \opt{refbounds-first-sg}, -\opt{refbounds-first-pb}, and \opt{refbounds-first-rg}. In turn, -\opt{+refbounds-rb} sets \opt{refbounds-first-rb} and \opt{refbounds-mid-rb}. -And quite conveniently, \opt{+refbounds} sets \opt{+refbounds-first}, -\opt{+refbounds-mid}, and \opt{+refbounds-last}, it is hence sufficient to set -it to define the behavior of what is typeset around all references for the -whole type-block. As you probably guessed by now, the \opt{refbounds} option -presented in \zcref{tab:reference-format} is an alias of \opt{+refbounds}. - -Given that base and derived options are actually setting the same group of -underlying options (the base ones), the order in which they are given is -relevant: the last one prevails. The idea here is to use first the derived -options to set some general defaults, and then change one or another base -option to handle exceptions as needed. Of course, how best to use them -depends on the case. - - -\section{Internationalization} -\zlabel{sec:internationalization} - -\pkg{zref-clever} provides internationalization facilities and integrates with -\pkg{babel} and \pkg{polyglossia} to adapt to the languages in use by either -of these language packages, or to a language specified directly by the user. -This is primarily relevant for reference format options, particularly -reference type \emph{names} (though not only, since most reference format -options can have language-specific values see \zcref{sec:reference-format}). -But other features of the package also cater for language specific needs. - -As far as language selection is concerned, if the language is declared and -\pkg{zref-clever} has a built-in ``language file'' for it, most use cases will -likely be covered by the \opt{lang} option (see \zcref{sec:options}), and its -values \texttt{current} and \texttt{main}. When the \opt{lang} option is set -to \texttt{current} or \texttt{main}, \pkg{zref-check} will use, respectively, -the \emph{current} or \emph{main} language of the document, as defined by -\pkg{babel} or \pkg{polyglossia}.\footnote{Technically, \pkg{zref-clever} uses - \cs{languagename} and \cs{bbl@main@language} for \pkg{babel}, and - \cs{babelname} and \cs{mainbabelname} for \pkg{polyglossia}, which boils - down to \pkg{zref-clever} always using \emph{\pkg{babel} names} internally, - regardless of which language package is in use. Indeed, an acquainted user - will note that \zcref{tab:languages-and-aliases} contains only \pkg{babel} - language names.} Users can also set \opt{lang} to a specific language -directly, in which case \pkg{babel} and \pkg{polyglossia} are disregarded. -\pkg{zref-clever} provides a number of built-in ``language files'', for the -languages listed in \zcref{tab:languages-and-aliases}, which also includes the -declared aliases to those languages. - -\pkg{zref-clever}'s ``language files'' are loaded sparingly and lazily. A -language file for a single language -- that specified by user options in the -preamble, which by default is the current document language -- is loaded at -\texttt{begindocument}. If any other language file is needed, it is loaded on -the fly, if and when required. Of course, in either case, conditioned on -availability. In sum, \pkg{zref-clever} loads as little as possible, but -allows for convenient on the fly loading of language files if the values are -indeed required, without users having to worry about it at all. - -\begin{table} - \centering - \begin{tabular}{ll} - \toprule - Language & Aliases \\ - \midrule - dutch & \\ - english & american \\ - & australian \\ - & british \\ - & canadian \\ - & newzealand \\ - & UKenglish \\ - & USenglish \\ - french & acadian \\ - & \\ - \bottomrule - \end{tabular} - \quad - \begin{tabular}{ll} - \toprule - Language & Aliases \\ - \midrule - german & ngerman \\ - & austrian \\ - & naustrian \\ - & swissgerman \\ - & nswissgerman \\ - italian & \\ - portuguese & brazilian \\ - & brazil \\ - & portuges \\ - spanish & \\ - \bottomrule - \end{tabular} - \caption{Declared languages and aliases} - \zlabel{tab:languages-and-aliases} -\end{table} - - -But if the built-in language files do not cover your language, or if you'd -like to adjust some of the default language-specific options, this can be done -with \cs{zcDeclareLanguage}, \cs{zcDeclareLanguageAlias}, and -\cs{zcLanguageSetup}.\footnote{Needless to say, if you'd like to contribute a - language file or improve an existing one, that is much welcome at - \url{https://github.com/gusbrs/zref-clever/issues}.} - -\begin{function}{\zcDeclareLanguage} - \begin{syntax} - \cs{zcDeclareLanguage}\oarg{options}\marg{language} - \end{syntax} -\end{function} -Declare a new language for use with \pkg{zref-clever}. If \meta{language} has -already been declared, just warn. The \meta{options} argument receives the -usual \texttt{key=value} list and recognizes three keys: \opt{declension}, -\opt{gender}, and \opt{allcaps}. \opt{declension} receives a coma separated -list of valid declension cases for \meta{language}. The first element of the -list is considered to be the default case, both for the \opt{d} option in -\cs{zcref} and for the \opt{case} option in \cs{zcLanguageSetup}. Similarly, -\opt{gender} receives a comma separated list of genders for \meta{language}. -The elements in this list are those which are recognized as valid for the -language for both the \opt{g} option in \cs{zcref} and the \opt{gender} option -in \cs{zcLanguageSetup}. There is no default presumed in this case. Finally, -\opt{allcaps} can be used with languages for which nouns must be always -capitalized for grammatical reasons. For a language declared with the -\opt{allcaps} option, the \opt{cap} reference option (see \zcref{sec:options}) -is disregarded, and \cs{zcref} always uses the capitalized type name forms. -This means that language files for languages with such a trait can be halved -in size, and that user customization for them is simplified, only requiring -the capitalized name forms. On the other hand, the non-capitalized -\texttt{name-} reference format options are rendered no-op for the language in -question. \zcref[S]{tab:language-options} presents an overview of the options -in effect for the languages declared by \pkg{zref-clever}. -\cs{zcDeclareLanguage} is preamble only. - -\begin{table} - \centering - \begin{tabular}{l>{\ttfamily}c>{\ttfamily}c>{\ttfamily}c} - \toprule - Language & declension & gender & allcaps \\ - \midrule - dutch & -- & f,m,n & -- \\ - english & -- & -- & -- \\ - french & -- & f,m & -- \\ - german & N,A,D,G & f,m,n & yes \\ - italian & -- & f,m & -- \\ - portuguese & -- & f,m & -- \\ - spanish & -- & f,m & -- \\ - \bottomrule - \end{tabular} - \caption{Options for declared languages} - \zlabel{tab:language-options} -\end{table} - -\begin{function}{\zcDeclareLanguageAlias} - \begin{syntax} - \cs{zcDeclareLanguageAlias}\marg{language alias}\marg{aliased language} - \end{syntax} -\end{function} -Declare \meta{language alias} to be an alias of \meta{aliased language}. -\meta{aliased language} must be already known to \pkg{zref-clever}. Once set, -the \meta{language alias} is treated by \pkg{zref-clever} as completely -equivalent to the \meta{aliased language} for any language specification by -the user. \cs{zcDeclareLanguageAlias} is preamble only. - -\begin{function}{\zcLanguageSetup} - \begin{syntax} - \cs{zcLanguageSetup}\marg{language}\marg{options} - \end{syntax} -\end{function} -Sets language-specific reference format options for \meta{language} (see -\zcref{sec:reference-format}), be they type-specific or not. \meta{language} -must be already known to \pkg{zref-clever}. Besides reference format options, -\cs{zcLanguageSetup} knows three other keys: \opt{type}, \opt{case}, and -\opt{gender}. The first two work like a ``switch'' affecting the options -\emph{following} it. For example, if \texttt{type=foo} is given in -\meta{options} the options following it will be set as type-specific options -for reference type \texttt{foo}. Similarly, after \texttt{case=X} (provided -\texttt{X} is a valid declension case for \meta{language}), the following -\texttt{[Nn]ame-} options will set values for the \texttt{X} declension case -(other reference format options are not affected by \opt{case}). Before the -first occurrence of either \opt{type} or \opt{case} default values are set. -For \opt{case} this means the default declension case, which is the first -element of the list provided to the \opt{declension} option in -\cs{zcDeclareLanguage}. For \opt{type} this means language-specific but not -type-specific option values (see \zcref{sec:reference-format}). An empty -valued \texttt{type=} key can also ``unset'' the type. The \opt{gender} key -sets the gender of the current \texttt{type} (provided the value it receives -is one of the declared genders for \meta{language}). For \texttt{type}s which -have multiple valid genders for a given language, the option can also receive -a comma separated list. \cs{zcLanguageSetup} is preamble only. - -A couple of examples to illustrate the syntax of \cs{zcLanguageSetup}: - -\begin{zcexample} -\zcLanguageSetup{french}{ - type = section , - gender = f , - Name-sg = Section , - name-sg = section , - Name-pl = Sections , - name-pl = sections , -} -\zcLanguageSetup{german}{ - type = section , - gender = m , - case = N , - Name-sg = Abschnitt , - Name-pl = Abschnitte , - case = A , - Name-sg = Abschnitt , - Name-pl = Abschnitte , - case = D , - Name-sg = Abschnitt , - Name-pl = Abschnitten , - case = G , - Name-sg = Abschnitts , - Name-pl = Abschnitte , -} -\end{zcexample} - -\bigskip{} - -As already noted, \pkg{zref-clever} has some support for languages with -declension. This means mainly the declension of \emph{nouns}, which is used -for the reference type names. But some tools are also provided to support the -user in getting better results for the text surrounding a reference, -particularly for numbered and gendered articles, even if those don't have -their typeset output automated. - -For reference type names, the declension cases for each language must be -declared with \cs{zcDeclareLanguage}, and the name reference format options -must be provided for each case, which is done for built-in language files of -languages which have noun declension, and can be done by the user with -\cs{zcLanguageSetup}, as we've seen. \pkg{zref-clever} does not try to guess -or infer the case though, you must tell it to \cs{zcref}. And this is done by -means of the \opt{d} option (see \zcref{sec:options}). So you may write -something like ``\texttt{nach den - \cs{zcref}[d=D]\{sec:section-1,sec:section-2\}}'' to get ``nach den -Abschnitten 1 und 2''. Or ``\texttt{trotz des - \cs{zcref}[d=G]\{eq:theorem-1\}}'' to get ``trotz des Theorems 1''. - -Regarding the text surrounding the reference -- the inflected article, the -passing preposition, etc.\ --, the issue is more delicate. \pkg{zref-clever} -cannot and intends not to typeset those for you. But, depending on the -language, it is true that the kind of automation provided by \pkg{zref-clever} -may betray your best efforts to get a proper surrounding text. Multiple -labels passed to \cs{zcref} may result in singular type names, either because -the labels are of different types, or because they got compressed into a -single reference. References comprised of multiple type blocks may have each -a name with a different gender. Or, worse, \opt{tpairsep}, \opt{tpairsep}, -and \opt{tlastsep} may not provide a general enough way to separate different -type blocks in your language altogether. You may change something in your -document that causes a label to change its type, and hence the gender of the -type name. A page reference to a couple of floats which were by chance on the -same page and all of a sudden no longer are. And so on. - -In this area, the approach taken by \pkg{zref-clever} is to identify some -typical situations in which your attention may be required in reviewing the -surrounding text, and signal it at compilation time. Just like bad boxes, for -example. This feature can be enabled by the \opt{nudge} option (which is -opt-in, see \zcref{sec:options}). There are three ``nudges'' available for -this purpose which trigger messages at different events: \opt{multitype}, -\opt{comptosing}, and \opt{gender}. \opt{multitype} nudges when a reference -is comprised of multiple type blocks. \opt{comptosing} when multiple labels -of the same type block have been compressed into a single one and, hence, the -type name used is singular. Finally, \opt{gender} nudges when there is a -mismatch between the gender specified in \cs{zcref} with the \opt{g} option -and the gender of the type name, as set in the language file or with -\cs{zcLanguageSetup}, for each type block. Which nudges to use is -configurable with the option \opt{nudgeif}. And, if you're sure of the -results for a particular \cs{zcref} call, you can always silence the nudges -locally with the \opt{nonudge} option. - -The main reason to watch for multiple type references with the \opt{multitype} -nudge is that bundling together automatically a list of type blocks is less -smooth an operation than it is for a single reference type. While it arguably -works reasonably well for English, even there it is not always flawless, and -depending on the language, results may range from ``poor style'' to outright -wrong. A typical case would be of that of a language with inflected articles -and a reference with multiple types of different genders or numbers. For -example, in French, with a standard ``\texttt{au \cs{zcref}\{cha:chapter-3, - sec:section-3.1\}}'' we get ``au chapitre 3 et section 3.1'' which sounds -ugly, at best. So we may be better off writing instead ``\texttt{au - \cs{zcref}\{cha:chapter-3\} et à la \cs{zcref}\{sec:section-3.1\}}''. Or -something else, of course. But the general point is that, depending on -circumstances and on the language, the results of automating the grouping of -multiple reference types, as \pkg{zref-clever} is able to do, may leave things -to be desired for. Hence it lets you know when one such case occurs, so that -you can review it for best results. - -The case of the \opt{comptosing} and \opt{gender} nudges is more objective in -nature, they respectively signal mismatches of number and gender. When a -reference is made with \cs{zcref} to a single label we are sure the type name -will be a singular form. However, when \cs{zcref} receives multiple labels of -the same type, the type name will normally be a plural, but not necessarily -so, since the labels may be compressed into a single one (see the \opt{comp} -option in \zcref{sec:options}), in which case the singular is used. The -compression of multiple labels into a single reference should be an exception -for default references, but not so for \opt{page} references, where it is easy -to conceive practical situations where it may occur. Suppose, for example, -you have two contiguous floats in your document and make a page reference to -both of them. Will they end up in the same page or not? Maybe we know what -the current state is, but we cannot know what may happen as the document keeps -being edited. As a consequence, we don't know whether that reference will end -up having a plural or a singular type name. That given, the logic of the -\opt{comptosing} nudge is the following. If we are giving multiple labels to -\cs{zcref}, we can \emph{presume} a plural type name, but we get a nudge in -case the compression of the labels results in a singular type name form. If -one such compression did happen to one of your references, you can use a -singular article and then tell \cs{zcref} you did so with option \opt{sg}. -The effect of the \opt{sg} option is to inhibit the nudge when a compression -to singular occurs, but to do it instead when the compression \emph{ceases} to -occur, that is, if we get a plural type name again at some point. - -The \opt{gender} nudge aims to guard against one particular situation: -possible changes of a reference's type. This does not occur by reason of any -internal behavior of \pkg{zref-clever}, but it may be caused by changes in the -document. You may wish to change one \texttt{theorem} into a -\texttt{proposition} and, if you're writing in French or Portuguese, for -example, that implies that the reference to it changes gender and the likely -preceding article will no longer pass to the reference. The \opt{gender} -nudge requires that the gender of each type name and of each reference be -explicitly specified. For the type names, this is done for the built-in -language files of languages were this matters, and can be done with -\cs{zcLanguageSetup} as well. For the references, that is the purpose of the -\opt{g} option. When there is a mismatch between the two for any type block, -the nudge is triggered. Of couse, this means that the gender markup has to be -supplied in the document at each reference. And given such type changes may -not be frequent for you, or considered not particularly problematic, you'll -have to balance if doing so is worth it. Still, the feature is available, and -it's up to you. - - -\section{How-tos} -\zlabel{sec:how-tos} - -This section gathers some usage examples, or ``how-tos'', of cases which may -require some \pkg{zref-clever} setup, or usage adjustments, and each item is -set around a cross-reference ``task'' we'd like to perform with -\pkg{zref-clever}. - - -\subsection{Extended page references (\pkg{varioref})} - -\zctask{Make cross-references to pages which are sensitive to the relative - position between the reference and the label being referred to using - \pkg{varioref}.} - -The \pkg{zref-vario} package offers a layer of compatibility with -\pkg{varioref} and provides \texttt{\textbackslash{}z}\dots{} counterparts for -the latter's main reference commands. - -\begin{zchowto}[caption={\pkg{zref-vario}}] -\documentclass{article} -\usepackage{zref-clever} -\usepackage{zref-vario} -\begin{document} -\section{Section 1} -\zlabel{sec:section-1} -\begin{figure} - A figure. - \caption{Figure 1} - \zlabel{fig:figure-1} -\end{figure} -\begin{figure} - Another figure. - \caption{Figure 2} - \zlabel{fig:figure-2} -\end{figure} -\zvref[S]{sec:section-1} -\zvpageref{fig:figure-1} -\zvrefrange{fig:figure-1}{fig:figure-2} -\zvpagerefrange{fig:figure-1}{fig:figure-2} -\zfullref{fig:figure-1} -\end{document} -\end{zchowto} - - -\subsection{\cs{newtheorem}} - -Since \LaTeX{}'s \cs{newtheorem} allows users to create arbitrary numbered -environments, with respective arbitrary counters, the most \pkg{zref-clever} -can do in this regard is to provide some ``typical'' built-in reference types -to smooth user setup but, in the general case, some user setup may be indeed -required. The examples below are equaly valid for \pkg{amsthm}'s -\cs{newtheorem} since, even it provides features beyond those available in the -kernel, its syntax and underlying relation with counters is pretty much the -same. The same for \pkg{ntheorem}. For \pkg{thmtools}' \cs{declaretheorem}, -though some adjustments to the examples below may be required, the basic logic -is the same (there is no integration with the \opt{Refname}, \opt{refname}, -and \opt{label} options, which are targeted to the standard reference system, -but you don't actually need them to get things working conveniently). - - -\subsubsection*{Simple case} - -\zctask{Setup up a new theorem environment created with \cs{newtheorem} to be - referred to with \cs{zcref}. The theorem environment does not share its - counter with other theorem environments, and one of \pkg{zref-clever} - built-in reference types is adequate for my needs.} - -Suppose you set a ``Lemma'' environment with: - -\begin{zcexample} -\newtheorem{lemma}{Lemma}[section] -\end{zcexample} - -In this case, since \pkg{zref-clever} provides a built-in \texttt{lemma} type -(for supported languages) and presumes the reference type to be the same name -as the counter, there is no need for setup, and things just work out of the -box. So, you can go ahead with: - -\begin{zchowto}[caption={\cs{newtheorem}, simple case}] -\documentclass{article} -\usepackage{zref-clever} -\newtheorem{lemma}{Lemma}[section] -\begin{document} -\section{Section 1} -\begin{lemma}\zlabel{lemma-1} - A lemma. -\end{lemma} -\zcref{lemma-1} -\end{document} -\end{zchowto} - -If, however, you had chosen an environment name which did not happen to -coincide with the built-in reference type, all you'd need to do is instruct -\pkg{zref-clever} to associate the counter for your environment to the desired -type with the \opt{countertype} option: - -\begin{zchowto}[caption={\cs{newtheorem}, simple case}] -\documentclass{article} -\usepackage{zref-clever} -\zcsetup{countertype={lem=lemma}} -\newtheorem{lem}{Lemma}[section] -\begin{document} -\section{Section 1} -\begin{lem}\zlabel{lemma-1} - A lemma. -\end{lem} -\zcref{lemma-1} -\end{document} -\end{zchowto} - - -\subsubsection*{Shared counter} - -\zctask{Setup up two new theorem environments created with \cs{newtheorem} to - be referred to with \cs{zcref}. The theorem environments share the same - counter, and the available \pkg{zref-clever} built-in reference types are - adequate for my needs.} - -In this case, we need to set the \opt{countertype} option in the appropriate -contexts, so that the labels of each environment get set with the expected -reference type. As we've seen (at \zcref{sec:user-interface}), \cs{zcsetup} -has local effects, so it can be issued inside the respective environments for -the purpose. Even better, we can leverage the kernel's new hook management -system and just set it for all occurrences with -\cs{AddToHook}\texttt{\{env/\meta{myenv}/begin\}}. - -\begin{zchowto}[caption={\cs{newtheorem}, shared counter}] -\documentclass{article} -\usepackage{zref-clever} -\AddToHook{env/mytheorem/begin}{% - \zcsetup{countertype={mytheorem=theorem}}} -\AddToHook{env/myproposition/begin}{% - \zcsetup{countertype={mytheorem=proposition}}} -\newtheorem{mytheorem}{Theorem}[section] -\newtheorem{myproposition}[mytheorem]{Proposition} -\begin{document} -\section{Section 1} -\begin{mytheorem}\zlabel{theorem-1} - A theorem. -\end{mytheorem} -\begin{myproposition}\zlabel{proposition-1} - A proposition. -\end{myproposition} -\zcref{theorem-1, proposition-1} -\end{document} -\end{zchowto} - - -\subsubsection*{Custom type} - -\zctask{Setup up a new theorem environment created with \cs{newtheorem} to be - referred to with \cs{zcref}. The theorem environment does not share its - counter with other theorem environments, but none of \pkg{zref-clever} - built-in reference types is adequate for my needs.} - -In this case, we need to provide \pkg{zref-clever} with settings pertaining to -the custom reference type we'd like to use. Unless you need to typeset your -cross-references in multiple languages, in which case you'd require -\cs{zcLanguageSetup}, the most convenient way to setup a reference type is -\cs{zcRefTypeSetup}. In most cases, what we really need to provide for a -custom type are the ``type names'' and other reference format options can rely -on default language options already provided by the package (assuming the -language is supported). - -\begin{zchowto}[caption={\cs{newtheorem}, custom type}] -\documentclass{article} -\usepackage{zref-clever} -\newtheorem{myconjecture}{Conjecture}[section] -\zcRefTypeSetup{myconjecture}{ - Name-sg = Conjecture , - name-sg = conjecture , - Name-pl = Conjectures , - name-pl = conjectures , -} -\begin{document} -\section{Section 1} -\begin{myconjecture}\zlabel{conjecture-1} - A conjecture. -\end{myconjecture} -\zcref{conjecture-1} -\end{document} -\end{zchowto} - - -\subsection{\pkg{newfloat}} - -\zctask{Setup a new float environment created with \pkg{newfloat} to be - referred to with \cs{zcref}. None of \pkg{zref-clever} built-in reference - types is adequate for my needs.} - -The case here is pretty much the same as that for \cs{newtheorem} with a -custom type. Hence, we need to setup a corresponding type, for which -providing the ``type names'' should normally suffice. Note that, as far as -\pkg{zref-clever} is concerned, there's nothing specific to the \pkg{newfloat} -package in the setup, the same procedure can be used with \cls{memoir}'s -\cs{newfloat} command or with the \pkg{float}, \pkg{floatrow}, and -\pkg{trivfloat} packages. - -\begin{zchowto}[caption={\pkg{newfloat}}] -\documentclass{article} -\usepackage{newfloat} -\DeclareFloatingEnvironment{diagram} -\usepackage{zref-clever} -\zcRefTypeSetup{diagram}{ - Name-sg = Diagram , - name-sg = diagram , - Name-pl = Diagrams , - name-pl = diagrams , -} -\begin{document} -\section{Section 1} -\begin{diagram} - A diagram. - \caption{A diagram} - \zlabel{diagram-1} -\end{diagram} -\zcref{diagram-1} -\end{document} -\end{zchowto} - - -\subsection{\pkg{amsmath}} - -\zctask{Make references to \pkg{amsmath} display math environments.} - -Given how \pkg{amsmath}'s display math environments work, they need to handle -\cs{label} specially, and this support is quite hard-wired into the -environments, but it is not extended to \cs{zlabel}. \pkg{zref-clever}'s -\opt{amsmath} compatibility module provides that a \cs{label} used inside -these environments set both a regular \cs{label} and a \cs{zlabel}, so that we -can refer to the equations with both referencing systems. Note the use of -\cs{zlabel} for \env{subequations} though. For more details, see the -description of the \opt{amsmath} compatibility module at -\zcref{sec:comp-modules}. - -\begin{zchowto}[caption={\pkg{amsmath}},label={how:amsmath}] -\documentclass{article} -\usepackage{amsmath} -\usepackage{zref-clever} -\usepackage{hyperref} -\begin{document} -\section{Section 1} -\begin{equation}\label{eq:1} - A^{(1)}_l =\begin{cases} n!,&\text{if }l =1\\ - 0,&\text{otherwise}.\end{cases} -\end{equation} -\begin{equation*} \tag{foo}\label{eq:2} - A^{(1)}_l =\begin{cases} n!,&\text{if }l =1\\ - 0,&\text{otherwise}.\end{cases} -\end{equation*} -\begin{subequations}\zlabel{eq:3} - \begin{align} - A+B&=B+A\\ - C&=D+E\label{eq:3b}\\ - E&=F - \end{align} -\end{subequations} -\zcref{eq:1, eq:2, eq:3, eq:3b} -\end{document} -\end{zchowto} - - -\subsection{Overriding the reference type} - -\zctask{Make references to a system of equations, which should be referred to - in the plural.} - -Though, usually, setting the \opt{countertype} option may provide a more -general and convenient way to set the reference type of a given counter, -sometimes we just need to do it for a particular label or set of labels. The -\opt{reftype} option allows us to do so and set the reference type directly, -regardless of what the current counter is. - -\begin{zchowto}[caption={Overriding the reference type}] -\documentclass{article} -\usepackage{amsmath} -\usepackage{zref-clever} -\usepackage{hyperref} -\zcRefTypeSetup{pluralequation}{ - Name-sg = Equations , - name-sg = equations , - Name-pl = Equations , - name-pl = equations , -} -\begin{document} -\section{Section 1} -\begin{equation} - \zcsetup{reftype=pluralequation} - \zlabel{eq:1} - \begin{aligned} - A+B&=B+A\\ - C&=D+E\\ - E&=F - \end{aligned} -\end{equation} -\zcref{eq:1} -\end{document} -\end{zchowto} - - -\subsection{\pkg{listings}} - -\zctask{Make references to a \env{lstlisting} environment from the - \pkg{listings} package.} - -Being \env{lstlisting} a verbatim environment, setting labels inside it -requires special treatment. \pkg{zref-clever}'s \opt{listings} compatibility -module provides that a label given to the \opt{label} option gets set with -both a regular \cs{label} and a \cs{zlabel}, so that we can refer to it with -both referencing systems. Setting labels for specific lines of the -environment can be done with \cs{zlabel} directly, subject to the same -escaping as for the standard \cs{label}. For more details, see the -description of the \opt{listings} compatibility module at -\zcref{sec:comp-modules}. - -\begin{zchowto}[caption={\pkg{listings}},label={how:listings},escapeinside=`'] -\documentclass{article} -\usepackage{listings} -\usepackage{zref-clever} -\usepackage{hyperref} -\begin{document} -\section{Section 1} -\lstset{escapeinside={(*@}{@*)}, numbers=left, numberstyle=\tiny} -\begin{lstlisting}[caption={Useless code}, label=lst:1] - for i:=maxint to 0 do - begin - { do nothing }(*@\zlabel{ln:1.1}@*) - end; -\end{lstlisting} -\zcref{lst:1, ln:1.1} -\end{document} -\end{zchowto} - - -\subsection{\pkg{enumitem}} - -\zctask{Setup a custom enumerate environment created with \pkg{enumitem} to be - referred to.} - -Since the \texttt{enumerate} environment's counters are reset at each nesting -level, but not with the standard machinery, we have to inform -\pkg{zref-clever} of this resetting behavior with the \opt{counterresetby} -option. Also, given the naming of the underlying counters is tied with the -environment's name and the level's number, we cannot really rely on an -implicit counter-type association, and have to set it explicitly with the -\opt{countertype} option. - -\begin{zchowto}[caption={\pkg{enumitem}}] -\documentclass{article} -\usepackage{zref-clever} -\zcsetup{ - countertype = { - myenumeratei = item , - myenumerateii = item , - myenumerateiii = item , - myenumerateiv = item , - } , - counterresetby = { - myenumerateii = myenumeratei , - myenumerateiii = myenumerateii , - myenumerateiv = myenumerateiii , - } -} -\usepackage{enumitem} -\newlist{myenumerate}{enumerate}{4} -\setlist[myenumerate,1]{label=(\arabic*)} -\setlist[myenumerate,2]{label=(\Roman*)} -\setlist[myenumerate,3]{label=(\Alph*)} -\setlist[myenumerate,4]{label=(\roman*)} -\begin{document} -\begin{myenumerate} -\item An item.\zlabel{item-1} - \begin{myenumerate} - \item An item.\zlabel{item-2} - \begin{myenumerate} - \item An item.\zlabel{item-3} - \begin{myenumerate} - \item An item.\zlabel{item-4} - \end{myenumerate} - \end{myenumerate} - \end{myenumerate} -\end{myenumerate} -\zcref{item-1, item-2, item-3, item-4} -\end{document} -\end{zchowto} - - -\subsection{\pkg{zref-xr}} - -\zctask{Make references to labels set in an external document.} - -\pkg{zref} itself offers this functionality with module \pkg{zref-xr}, and -\pkg{zref-clever} is prepared to make use of it. Just a couple of details -have to be taken care of, for it to work as intended: i) \pkg{zref-clever} -must be loaded in both the main document and the external document, so that -the imported labels also contain the properties required by \pkg{zref-clever}; -ii) since \cs{zexternaldocument} defines any properties it finds in the labels -from the external document when it imports them, it must be called after -\pkg{zref-clever} is loaded, otherwise the later will find its own internal -properties already defined when it does get loaded, and will justifiably -complain. Note as well that the starred version of \cs{zexternaldocument*}, -which imports the standard labels from the external document, is not -sufficient for \pkg{zref-clever}, since the imported labels will not contain -all the required properties. - -Assuming here \file{documentA.tex} as the main file and \file{documentB.tex} -as the external one, and also assuming we just want to refer in ``\texttt{A}'' -to the labels from ``\texttt{B}'', and not the contrary, a minimum setup would -be the following. - - -\begin{zchowto}[caption={\pkg{zref-xr}},escapeinside=`'] -`\hspace*{-1em}\file{documentA.tex}:\vspace{1ex}' -\documentclass{article} -\usepackage{zref-clever} -\usepackage{zref-xr} -\zexternaldocument[B-]{documentB} -\usepackage{hyperref} -\begin{document} -\section{Section A1} -\zlabel{sec:section-a1} -\zcref{sec:section-a1, B-sec:section-b1} -\end{document} -`\vspace{-1ex}' -`\hspace*{-1em}\file{documentB.tex}:\vspace{1ex}' -\documentclass{article} -\usepackage{zref-clever} -\usepackage{hyperref} -\begin{document} -\section{Section B1} -\zlabel{sec:section-b1} -\end{document} -\end{zchowto} - - -\subsection{\pkg{tcolorbox}} - -\zctask{Make references to boxes from the \pkg{tcolorbox} package.} - -Since version 6.0.0, \pkg{tcolorbox} has support for \pkg{zref} and -\pkg{zref-clever}, through the \opt{label is zlabel} option. With this option -enabled, the \opt{label} option sets a \cs{zlabel}, which can be referred to -from \cs{zref} or \cs{zcref}. If you are using the \opt{auto counter}, or -some other custom counter, you can set the reference type for the box's labels -with the \opt{label type} option. - -\begin{zchowto}[caption={\pkg{tcolorbox}}] -\documentclass{article} -\usepackage{zref-clever} -\usepackage{zref-titleref} -\usepackage{tcolorbox} -\tcbuselibrary{theorems} -\tcbset{label is zlabel} -\usepackage{hyperref} -\newtcolorbox[auto counter,number within=section]{pabox}[2][]{% - label type=example, - title=Example~\thetcbcounter: #2,#1} -\newtcolorbox[use counter from=pabox,number within=section]{pabox2}[2][]{% - label type=solution, - title=Solution~\thetcbcounter: #2,#1} -\newtcbtheorem[number within=section]{mytheo}{My Theorem}{% - label type=mytheorem}{th} -\zcRefTypeSetup{mytheorem}{ - Name-sg=Mytheorem, - name-sg=mytheorem, - Name-pl=Mytheorems, - name-pl=mytheorems, -} -\begin{document} -\section{Section 1} -\zlabel{sec:section-1} -\begin{pabox}[label={box:1}]{Title text} - This is tcolorbox \zcref{box:1} on \zcpageref{box:1}. -\end{pabox} -\begin{pabox2}[label={box:2}]{Title text} - This is tcolorbox \zcref{box:2} on \zcpageref{box:2}. -\end{pabox2} -\begin{mytheo}{This is my title}{theo} - This is \zcref{th:theo} on \zcpageref{th:theo} and it is titled - ``\zcref[noname,ref=title]{th:theo}''. -\end{mytheo} -\end{document}\end{zchowto} - - -\subsection{Ordinal references} - -\zctask{Typesetting the references as ordinal numbers.} - -This example is intended as an illustration of the flexibility \pkg{zref}'s -extensible referencing system grants us.\footnote{Though clearly simplified, - the example is less than academic. - See \url{https://tex.stackexchange.com/a/670088} for an application to add a - reference suffix needed in Turkish.} Getting references as ordinal numbers, -something that would be normally a tricky task, can be handled with a simple -custom \pkg{zref} property, which we then use to set \pkg{zref-clever}'s -\opt{ref} option. - -\begin{zchowto}[caption={Ordinal references}] -\documentclass{article} -\usepackage{zref-clever} -\usepackage{fmtcount} -\makeatletter -\zref@newprop{ordref}{\ordinal{\@currentcounter}} -\zref@addprop{main}{ordref} -\makeatother -\zcsetup{ref=ordref} -\begin{document} -\section{Section 1} -\zlabel{sec:section-1} -\begin{figure} -A figure. -\caption{Figure 1} -\zlabel{fig:figure-1} -\end{figure} -\zcref{sec:section-1,fig:figure-1} -\end{document} -\end{zchowto} - - -\section{Limitations} -\zlabel{sec:limitations} - -Being based on \pkg{zref} entails one quite sizable advantage for -\pkg{zref-clever}: the extensible referencing system of the former allows -\pkg{zref-clever} to store and retrieve the information it needs to work -without having to redefine some core \LaTeX{} commands. This alone makes for -reduced compatibility problems and less load order issues than the average -package in this functionality area. On the other hand, being based on -\pkg{zref} also does impair the supported scope of \pkg{zref-clever}. Not -because of any particular limitation of either, but because any class or -package which implements some special handling for reference labels -universally does so aiming at the standard referencing system, and whether -specific support for \pkg{zref} is included, or whether things work by -spillover of the particular technique employed, is not guaranteed. - -The limitation here is less one of \pkg{zref-clever} than that of a potencial -lack of support for \pkg{zref} itself. Broadly speaking, what -\pkg{zref-clever} does is setup \pkg{zref} so that its \cs{zref@newlabel}s -contains the information we need using \pkg{zref}'s API. Once the \cs{zlabel} -is set correctly, there is little in the way of \pkg{zref-clever}, it can just -extract the label's information, again using \pkg{zref}'s API, and do its job. -Therefore, the problems that may arise are really in \emph{label setting}. - -For \cs{zlabel} to be able to set a label with everything \pkg{zref-clever} -needs, some conditions must be fulfilled, most of which are pretty much the -same as that of a regular label, but not only. As far as my experience goes, -the following label setting requirements can be potentially problematic and -are not necessarily granted for \cs{zlabel}: - -\begin{enumerate} -\item One must be able to call \cs{zlabel}, directly or indirectly, at the - appropriate scope/location so as to set the label. -\item When \cs{zlabel} is set, it must see a correct value of - \cs{@currentcounter}. -\end{enumerate} - -As to the first, it is not everywhere we technically can set a (z)label. On -verbatim-like environments it depends on how they are defined and whether they -provide a proper place or option to do so. But other places may be -problematic too, for example, \pkg{amsmath} display math environments also -handle \cs{label} specially and the same work is not done for \cs{zlabel}. - -Regarding the second, a correctly set \cs{@currentcounter} is critical for the -task of \pkg{zref-clever}: the reference type will depend on that and, -consequently, sorting and compression as well, counter resetting behavior -information is also retrieved based on it, and so on. Since the 2020-10-01 -\LaTeX{} release, \cs{@currentcounter} is set by \cs{refstepcounter} alongside -\cs{@currentlabel} and, since the 2021-11-15 release, the support for -\cs{@currentcounter} has been further extended in the kernel. Hence, as long -as kernel features are involved, or as long as \cs{refstepcounter} is the tool -used for the purpose of reference setting, \cs{zlabel} will tend to have all -information within its grasp at label setting time. But that's not always the -case. For this reason, \pkg{zref-clever} has the option \opt{currentcounter} -which at least allows for some viable work-arounds when the value of -\cs{@currentcounter} cannot be relied upon. Whether we have a proper opening -to set it, depends on the case. Still, \cs{refstepcounter} is ubiquitous -enough a tool that we can count on \cs{@currentcounter} most of the time. - -All in all, most things work, but some things don't. And if the later will -eventually work depends essentially on whether support for \pkg{zref} is -provided by the relevant packages and classes or not. Or, failing that, -whether \pkg{zref-clever} is able to provide some specific support when a -reasonable way to do so is within reach. - - -\section{Compatibility modules} -\zlabel{sec:comp-modules} - -This section gives a description of each compatibility module provided by -\pkg{zref-clever}. These modules intend to smooth the interaction of \LaTeX{} -features, document classes, and packages with \pkg{zref-clever} and -\pkg{zref}, and they can be selectively or completely disabled with the option -\opt{nocompat} (see \zcref{sec:options}). This set is not to be confused with -``the list of packages or classes supported by \pkg{zref-clever}''. In most -circumstances, things should just work out of the box, and need no specific -handling. These are just the ones for which some special treatment was -required. Of course, this effort is bound to be incomplete (see -\zcref{sec:limitations}). - -The purpose of outlining to some extend what the compatibility modules do is -twofold. First, some of them require usage adjustments for label setting, -which must be somehow conveyed in this documentation. Second, the kind and -degree of intervention in external code varies significantly for each module, -and since this is an area of potential friction, a minimum of information for -the users to judge whether they want to leave these modules enabled or not is -due. For this reason, this is also a little technical, but for full details, -see the code documentation. - -\bigskip{} - -\DescribeOption{appendix} % -The \cs{appendix} command provided by many document classes is normally used -to change the behavior of the sectioning commands after that point. Usually, -depending on the class, the changes that interest us involve using \cs{@Alph} -for numbering and \cs{appendixname} for chapter's names. In sum, we'd like to -refer to the appendix sectioning commands as ``appendices'' rather than -``chapters'' or ``sections''. Since the sectioning commands are the same as -before \cs{appendix}, and so are their underlying counters, we must configure -the counter type of the sectioning counters to \texttt{appendix}. And this is -what this compatibility module does, and it uses a \pkg{ltcmdhooks} hook on -\cs{appendix} for the purpose. Hence, this module applies to any document -class or package which provides that command. - -\DescribeOption{appendices} % -This module implements support for the \env{appendices} and -\env{subappendices} environments provided by the \pkg{appendix} package, and -also by \cls{memoir}. The task is the same as for the \texttt{appendix} -module: set proper counter types for the sectioning counters. This module -employs environment hooks to \env{appendices} and \env{subappendices} and a -command hook to \cs{appendix} for the purpose. - -\DescribeOption{memoir} % -The \cls{memoir} class implements several features with one or another -implication for cross-referencing, usually bearing just the standard -referencing system in mind, and related mainly to captions, subfloats, and -notes. This compatibility module tries to adjust \pkg{zref-clever} to these -features with support for the following: i) set counter types for counters -\texttt{subfigure}, \texttt{subtable}, and \texttt{poemline} (used in the -\env{verse} environment); ii) configure resetting behavior -(\opt{counterresetby} option) for \texttt{subfigure} and \texttt{subtable} -counters; iii) provide that the \meta{label} arguments to environments -\env{sidecaption} and \env{sidecontcaption} and commands \cs{bitwonumcaption}, -\cs{bionenumcaption}, and \cs{bicaption} \emph{also} set a \cs{zlabel} of the -same name; iv) provide the \pkg{zref} property ``\texttt{subcaption}'' so that -we can refer to, for example, \texttt{\cs{zcref}[ref=subcaption]\{subcap-1\}} -to emulate the functionality of \cls{memoir}'s \cs{subcaptionref}; v) provide -that \cs{footnote}, \cs{verbfootnote}, \cs{sidefootnote}, and \cs{pagenote} -get a proper \opt{currentcounter} set; and v) set counter types for counters -\texttt{sidefootnote} and \texttt{pagenote}. Naturally, the sheer number of -features that required some specific support implies that some gymnastics were -needed here. But the most sensitive changes are: i) a local redefinition of -\cs{label} inside the environments \env{sidecaption} and \env{sidecontcaption} -and the commands \cs{bitwonumcaption}, \cs{bionenumcaption}, and -\cs{bicaption}; and ii) the use of \pkg{ltcmdhooks} command hooks on -\cs{bitwonumcaption}, \cs{bionenumcaption}, \cs{bicaption}, -\cs{@memsubcaption}, \cs{@makefntext}, and \cs{@makesidefntext}. - -\DescribeOption{amsmath} % -\pkg{amsmath}'s display math environments have their contents processed twice, -once for measuring and the second does the final typesetting. Hence, -\pkg{amsmath} needs to handle \cs{label} specially inside these environments, -otherwise we'd have duplicate labels all around, and indeed it does redefine -\cs{label} locally inside them. Alas, the same treatment is not granted to -\cs{zlabel}. However, \cs{label} is set basically to \emph{store} the value -of the argument inside the environments, and its global meaning is kept in -\cs{ltx@label} which is called at the appropriate time to actually set the -label. So, what \pkg{zref-clever} does is redefine \cs{ltx@label} to set -\texttt{both} a regular \cs{label} and a \cs{zlabel} for the same \meta{label} -(which does not generate a duplicate label problem since the referencing -systems are independent). Therefore, you must use \cs{label} (not -\cs{zlabel}) inside \pkg{amsmath}'s display math environments, and this -compatibility module arranges that you can also refer to that label with -\pkg{zref} and, thus, with \cs{zcref} as well. The following environments are -subject to this usage restriction: \env{equation}, \env{align}, \env{alignat}, -\env{flalign}, \env{xalignat}, \env{gather}, \env{multline}, and their -respective starred versions. In particular, the same is not the case for the -\env{subequations} environment, inside which \cs{zlabel} works as usual (to -refer to the main equation number, that is, right after -\texttt{\cs{begin}\{subequations\}}). See the \zcref{how:amsmath} for an -usage example. The module also ensures proper \opt{currentcounter} values are -in place for the display math environments, for which it uses environment -hooks, and sets the font of equation references to \cs{upshape}, following -\pkg{amsmath}'s \cs{eqref}. Finally, the module also provides a -\texttt{subeq} property, for display math environments used inside the -\env{subequations} environment, which can be used to refer to them directly -with the \opt{ref} option, or to build terse ranges with the \opt{endrange} -option. Note that \pkg{zref-clever} is not the only package to redefine -\cs{ltx@label}, and compatibility problems may arise if this module is used -with such packages or with document classes that do the same. In case of -trouble, you can load \pkg{zref-clever} with option \texttt{nocompat=amsmath} -and either use the standard referencing system's facilities to refer to -\pkg{amsmath}'s equations or check the code documentation for the technique -used for this (which is pretty standard) and adapt it to your case. Given -that any trouble that may arise here is one of the proper ``timing'' of the -redefinition, it should not be particularly complicated to make such -adjustments. - -\DescribeOption{mathtools} % -\pkg{mathtools} has a feature to show the numbers only for those equations -actually referenced (with \cs{eqref} or \cs{refeq}), which is enabled by the -\opt{showonlyrefs} option. This compatibility module adds support for this -feature, such that equation references made with \cs{zcref} also get marked as -``referenced'' for \pkg{mathtools}, when the option is active, of course. The -module uses a couple of \pkg{mathtools} functions, but does not need to -redefine or hook into anything, everything is handled on \pkg{zref-clever}'s -side. - -\DescribeOption{breqn} % -This compatibility module only sets proper \opt{currentcounter} values for the -environments \env{dgroup}, \env{dmath}, \env{dseries}, and \env{darray}, and -uses environment hooks for the purpose. Note that these environments offer a -\opt{label} option for label setting, but implements it in a way that is -somewhat tricky to grab for our purposes, so we don't do it. However, -\pkg{breqn}'s documentation says the following about the use of \cs{label} -inside its environments: \textquote{Use of the normal \cs{label} command - instead of the \opt{label} option works, I think, most of the time - (untested)}. My light testing suggests the same is true for \cs{zlabel}, -which can then be used directly in these environments. But the ``second -class'' status for this use is the one granted by \pkg{breqn}, there's not -much we can do here. If you have any trouble with this, you may wish to check -\zcref{wkrnd:breqn}. - -\DescribeOption{listings} % -Being \env{lstlisting}s environments what they are, one cannot simply place a -label inside them without special treatment. \pkg{listings} arranges to this -by providing a \opt{label} option for setting a label for the whole -environment, and a properly escaped label command inside the environment can -be used to refer to the line number. While the later can also be used to set -a \cs{zlabel} to make line number references, the \opt{label} option is -catered to the standard labels exclusively. Hence, this compatibility module -uses the same label name -- which luckily and atypically is stored in a -variable -- and sets a \cs{zlabel} as well. This is done by using -\pkg{listings}' \texttt{PreInit} hook, se we don't have to redefine or tamper -with anything for the purpose. Besides this, the module also sets appropriate -\opt{countertype}, \opt{counterresetby} and \opt{currentcounter} values for -the \pkg{listings}' counters: \texttt{lstlisting} and \texttt{lstnumber}. See -the \zcref{how:listings} for an usage example. - -\DescribeOption{enumitem} % -\LaTeX{}'s \env{enumerate} environment requires some special treatment from -\pkg{zref-clever}, since its resetting behavior is not stored in the standard -way, and the counters' names, given they are numbered by level, do not map to -the reference type naturally. This is done by default for the up to four -levels of nested \env{enumerate} environments the kernel offers. -\pkg{enumitem}, though, allows one to increase this maximum list depth for -\env{enumerate} and, if this is done, setup for these deeper nesting levels -have also to be taken care of, and that's what this compatibility module does. -All settings here are internal to \pkg{zref-clever}, no hooks or redefinitions -are needed, we just check the existing pertinent counters at -\texttt{begindocument}, and supply settings for them. Of course, this means -that only \pkg{enumitem}'s settings done in the preamble will be visible to -the module and provided for. - -\DescribeOption{subcaption} % -This compatibility module sets appropriate \opt{countertype} and -\opt{counterresetby} for the \texttt{subfigure} and \texttt{subtable} -counters, and provides the \pkg{zref} property ``\texttt{subref}'' so that we -can refer to, for example, \texttt{\cs{zcref}[ref=subref]\{\meta{label}\}} to -emulate the functionality of \cls{subcaption}'s \cs{subref}. The later -feature uses the \cs{caption@subtypehook} provided by \pkg{caption} to locally -add the \texttt{subref} property to \pkg{zref}'s main property list. - -\DescribeOption{subfig} % -This module just sets appropriate \opt{countertype} and \opt{counterresetby} -for the \texttt{subfigure} and \texttt{subtable} counters. - - -\section{Work-arounds} - -\marginpar{\raggedleft\raisebox{-1.5ex}{\dbend}}As should be clear by now, the -use of \pkg{zref}'s \cs{zlabel} and thus of \pkg{zref-clever} may occasionally -require some adjustments, since it does not enjoy the universal support the -standard referencing system does. The compatibility modules presented in -\zcref{sec:comp-modules} go a long way in ensuring the user has to worry very -little about it, but they cannot be expected to go all the way. Not only -because this kind of support will never be exhaustive, but also since, -sometimes, given the way certain features are implemented by packages or -document classes, there may not be a reasonable way to provide this support, -from our side. But, still, most of the time, it is still ``viable'' to get -there, if one really wishes to do so. So, this section keeps track of some -known recipes, which I don't think belong in \pkg{zref-clever} itself, but -which you may choose to use. Note that this list is intended to spare users -from having to reinvent the wheel every time someone needs something of the -sort, but from \pkg{zref-clever}'s perspective, their status is ``not -supported''. - - -\subsection*{\pkg{breqn}} - -As mentioned in \opt{breqn}'s compatibility module (\zcref{sec:comp-modules}), -\pkg{breqn}'s math environments \env{dgroup}, \env{dmath}, \env{dseries}, and -\env{darray} offer a \opt{label} option (plus \opt{labelprefix}) for the -purpose of label setting. Setting a \cs{zlabel} alongside with a regular -\cs{label} based on that option requires redefining some of \pkg{breqn} -internals. Also, \pkg{breqn} does not use \cs{refstepcounter} to increment -the equation counters and, as a result, fails to set \pkg{hyperref} anchors -for the equations (thus affecting standard labels too). The example below -also provides to that.\footnote{The later work-around thanks to Heiko - Oberdiek, at \url{https://tex.stackexchange.com/a/241150}.} - - -\begin{zcworkaround}[caption={\pkg{breqn}},label={wkrnd:breqn}] -\documentclass{article} -\usepackage{zref-clever} -\usepackage{breqn} -\makeatletter -\define@key{breqn}{label}{% - \edef\next@label{% - \noexpand\label{\next@label@pre#1}% - \noexpand\zlabel{\next@label@pre#1}}% - \let\next@label@pre\@empty} -\makeatother -\usepackage{hyperref} -\usepackage{etoolbox} -\makeatletter -\patchcmd\eq@setnumber{\stepcounter}{\refstepcounter}{}{% - \errmessage{Patching \noexpand\eq@setnumber failed}} -\makeatother -\begin{document} -\section{Section 1} -\begin{dmath}[label={eq:1}] - f(x)=\frac{1}{x} \condition{for $x\neq 0$} -\end{dmath} -\begin{dmath}[labelprefix={eq:},label={2}] - H_2^2 = x_1^2 + x_1 x_2 + x_2^2 - q_1 - q_2 -\end{dmath} -\zcref{eq:1, eq:2} -\end{document} -\end{zcworkaround} - -Of course, you can always adapt things to your needs and, e.g., make the -\opt{label} option set just \cs{zlabel} instead of both labels, or create a -separate \opt{zlabel} option. - - -\subsection*{\cls{beamer}} - -\cls{beamer} does some really atypical things with regard to cross-references. -To start with, it redefines \cs{label} to receive an optional -\texttt{<\meta{overlay specification}>} argument. Then, presumably to support -overlays, it goes on and hijacks \pkg{hyperref}'s anchoring system, sets -anchors (\cs{hypertarget}s) to each \emph{label} in the \file{.snm} file, -while letting every standard label's anchor in the \file{.aux} file default to -\texttt{Doc-Start}. Of course, having rendered useless \pkg{hyperref}'s -anchoring, it has to redefine \cs{ref} so that it uses its own \file{.snm} -provided ``label anchors'' to make hyperlinks. In particular, from our -perspective, there is no support at all for \pkg{zref} provided by -\cls{beamer}. Which is specially unfortunate since the above procedures also -appear to break \pkg{cleveref}.\footnote{See, for example, - \url{https://tex.stackexchange.com/q/266080}, - \url{https://tex.stackexchange.com/q/668998}, and - \url{https://github.com/josephwright/beamer/issues/750}. The workaround - provided at \url{https://tex.stackexchange.com/a/266109} is not general - enough since it breaks \pkg{cleveref}'s ability to receive a list of labels - as argument.} - -Adding proper support for this is the business of \cls{beamer}, \pkg{zref}, -and/or \pkg{hyperref}. Likely the former's really. But, taking advantage of -\pkg{zref}'s flexibility, as a user, you can have a work-around in the -meantime. - -\begin{zcworkaround}[caption={\cls{beamer}}] -\documentclass{beamer} -\usepackage{zref-clever} -\makeatletter -\RenewDocumentCommand{\zlabel}{ D<>{1} m }{% - \ifx\label\ltx@gobble - \else - \zref@wrapper@babel{\zref@label<#1>}{#2}% - \fi -} -\NewCommandCopy\beamer@old@zref@label\zref@label -\RenewDocumentCommand{\zref@label}{ D<>{1} m }{% - \alt<#1>{% - \zref@ifpropundefined{anchor}{}{\zref@setcurrent{anchor}{#2}}% - \beamer@old@zref@label{#2}% - \beamer@nameslide{#2}% - }{% - \beamer@dummynameslide% - }% -} -\makeatother -\begin{document} -\begin{frame} - \begin{table} - \begin{tabular}{cc} - 1 & 2 \\ - 3 & 4 \\ - \end{tabular} - \caption{Table 1} - \zlabel{tab:1} - \end{table} -\end{frame} -\begin{frame} - \begin{figure} - \rule{5cm}{5cm} - \caption{Figure 1} - \zlabel{fig:1} - \end{figure} -\end{frame} -\begin{frame} - \zcref{tab:1,fig:1} -\end{frame} -\end{document} -\end{zcworkaround} - -This work-around redefines \cs{zlabel} so that it takes an overlay -specification argument, and provides that the work done by \cls{beamer} for -the standard \cs{label} is also done for it. And it works by setting the -\texttt{anchor} to the \emph{label} so as to be able to speak the -``\cls{beamer}-lingo'' of anchors. - -A couple of caveats though. First, there's probably still some work to be -done there in defining and setting reference types for \cls{beamer} specific -document objects, e.g. overlays. But it can be done by the standard user -interface of \pkg{zref-clever}. Second, since \cls{beamer}'s anchoring system -does not provide for uniqueness of anchors as \pkg{hyperref} does, the -procedure used by \pkg{zref-clever} in its \opt{amsmath} compatibility module -of setting both \cs{label} and \cs{zlabel} in \pkg{amsmath}'s display math -environments will result in duplicate anchors for labels set in them, with -corresponding \pkg{hyperref} warnings of ``destination with the same -identifier has been already used, duplicate ignored''. The warning is -actually harmless in this case, since both labels are set in the same place, -and thus have identical anchors. But, if it bothers you enough, you can look -at the \opt{amsmath} compatibility module in the code documentation, and -adjust things so that it sets only a \cs{zlabel}. - - -\section{Acknowledgments} - -\pkg{zref-clever} would not be possible without other people's previous work -and help. - -Heiko Oberdiek's \pkg{zref}, now maintained by the Oberdiek Package Support -Group, is the underlying infrastructure of this package. The potential of its -basic concept and the solid implementation were certainly among the reasons -I've chosen to venture into these waters, to start with. And I believe they -will remain one of the main assets of \pkg{zref-clever} as it matures. - -The name of the package makes no secret that a major inspiration for the kind -of ``feel'' I strove to achieve has been Toby Cubitt's \pkg{cleveref}. -Indeed, I have been a user of \pkg{cleveref} for several years, and a happy -one at that. But the role \pkg{cleveref} played in the development of -\pkg{zref-clever} extends beyond the visible influence in the design of user -facing functionality. Some technical solutions and, specially, the handling -of support for other packages were a valuable reference. Hence, the -accumulated experience of \pkg{cleveref} allowed for \pkg{zref-clever} to -start on a more solid foundation than would otherwise be the case. - -The long term efforts of the \LaTeX3 \cs{Team} around \pkg{expl3} and -\pkg{xparse} have also left their marks in this package. By implementing -powerful tools and smoothing several regular programming tasks, they have -certainly reduced my entry barrier to \LaTeX{} programming and enabled me to -develop this package with a significantly reduced effort. And, given the -constraints of my abilities, the result is no doubt much better than it would -be in their absence. - -Besides these more general acknowledgments, a number of people have -contributed to \pkg{zref-clever}, whether they are aware of it or not. -Suggestions, ideas, solutions to problems, bug reports or even encouragement -were generously provided by (in chronological order): - Ulrike Fischer, - % 2021-07-03: It's Ulrike's fault :-) : https://tex.stackexchange.com/questions/603514/#comment1513982_603514 - % 2021-08-20: https://tex.stackexchange.com/q/611424/105447 (comments) - % 2021-09-06: https://github.com/ho-tex/zref/issues/13 - % 2021-10-26: https://github.com/latex3/latex2e/issues/687 - % 2022-01-12: https://chat.stackexchange.com/transcript/message/60129233#60129233 - % 2022-04-09: https://github.com/latex3/hyperref/issues/229#issuecomment-1093870142 - % 2023-01-02: https://tex.stackexchange.com/q/670399 (comments) - Phelype Oleinik, - % 2021-08-20: https://tex.stackexchange.com/q/611370 (comments) - % 2021-09-09: https://tex.stackexchange.com/a/614704 - % 2021-10-06: https://tex.stackexchange.com/a/617998 - % 2021-10-21: https://github.com/latex3/latex2e/pull/699 - % 2022-01-12: https://tex.stackexchange.com/questions/629946/#comment1571118_629946 - % 2022-01-11: https://tex.stackexchange.com/questions/633341/#comment1579825_633347 - Enrico Gregorio, - % 2021-08-20: https://tex.stackexchange.com/a/611385 - % 2021-08-20: https://tex.stackexchange.com/q/611370/#comment1529282_611385 - Steven B.\ Segletes, - % 2021-08-20: https://tex.stackexchange.com/a/611373 - Jonathan P.\ Spratte, - % 2021-09-09: https://tex.stackexchange.com/a/614719 - % 2021-09-09: https://github.com/latex3/latex3/pull/988 - David Carlisle, - % 2021-10-10: https://tex.stackexchange.com/questions/618434/#comment1544401_618439 - % 2022-01-12: https://chat.stackexchange.com/transcript/message/60129096#60129096 - % and following discussion. - % 2022-12-26: https://chat.stackexchange.com/transcript/message/62644791#62644791 - % and following discussion. - % 2023-01-02: https://chat.stackexchange.com/transcript/message/62684358#62684358 - % and following discussion. - % 2023-02-10: https://tex.stackexchange.com/a/674846 - Frank Mittelbach, - % 2021-10-14: https://github.com/latex3/latex2e/issues/687 - \username{samcarter}, - % 2021-10-14: https://chat.stackexchange.com/transcript/message/59361777#59361777 - % 2021-10-21: https://chat.stackexchange.com/transcript/message/59418309#59418309 - Alan Munn, - % 2021-10-14: https://chat.stackexchange.com/transcript/message/59364073#59364073 - % 2021-10-21: https://chat.stackexchange.com/transcript/message/59418189#59418189 - Florent Rougon, - % https://github.com/frougon/xcref has been an useful reference for - % declension support. - Denis Bitouzé, - % 2021-11-25: https://github.com/gusbrs/zref-clever/issues/1 - Marcel Krüger, - % 2021-11-26: https://github.com/latex3/l3build/issues/215 - Jürgen Spitzmüller, - % 2021-11-28: https://github.com/gusbrs/zref-clever/issues/2 - \username{niluxv}, - % 2022-01-05: https://github.com/gusbrs/zref-clever/issues/4 - Joseph Wright, - % 2023-01-02: https://chat.stackexchange.com/transcript/message/62684358#62684358 - % and following discussion. - Thomas F. Sturm, - % 2023-02-09: https://github.com/T-F-S/tcolorbox/issues/206 - and Yukai Chou. % 'muzimuzhi' - % 2023-02-18: https://github.com/gusbrs/zref-clever/pull/14 - % 2023-02-18: https://github.com/gusbrs/zref-clever/pull/15 - -The package's language files have been provided or improved thanks to: - Denis Bitouzé (French), - % 2021-11-25: https://github.com/gusbrs/zref-clever/issues/1 - François Lagarde (French), % 'flagarde' - % 2021-12-09: discussion at https://github.com/gusbrs/zref-clever/issues/1 - \username{niluxv} (Dutch), - % 2022-01-09: https://github.com/gusbrs/zref-clever/pull/5 - % 2022-12-27: https://github.com/gusbrs/zref-clever/pull/12 - % 2022-12-27: https://github.com/gusbrs/zref-clever/pull/13 - and Matteo Ferrigato (Italian). % 'matteo339' - % 2022-12-12: https://github.com/gusbrs/zref-clever/issues/11 - -If I have inadvertently left anyone off the list I apologize, and please let -me know, so that I can correct the oversight. - -Thank you all very much! - - -\section{Change history} - -A change log with relevant changes for each version, eventual upgrade -instructions, and upcoming changes, is maintained in the package's repository, -at \url{https://github.com/gusbrs/zref-clever/blob/main/CHANGELOG.md}. The -change log is also distributed with the package's documentation through CTAN -upon release so, most likely, \texttt{texdoc zref-clever/changelog} should -provide easy local access to it. An archive of historical versions of the -package is also kept at \url{https://github.com/gusbrs/zref-clever/releases}. - -\end{document} diff --git a/macros/latex/contrib/zref-vario/CHANGELOG.md b/macros/latex/contrib/zref-vario/CHANGELOG.md index 2f0b419280..876440be3e 100644 --- a/macros/latex/contrib/zref-vario/CHANGELOG.md +++ b/macros/latex/contrib/zref-vario/CHANGELOG.md @@ -1,6 +1,12 @@ # Changelog -## [Unreleased](https://github.com/gusbrs/zref-vario/compare/v0.1.7...HEAD) +## [Unreleased](https://github.com/gusbrs/zref-vario/compare/v0.1.8...HEAD) + +## [v0.1.8](https://github.com/gusbrs/zref-vario/compare/v0.1.7...v0.1.8) (2023-06-14) + +### Changed +- Improvements to User manual. +- Simplify and improve regression tests. ## [v0.1.7](https://github.com/gusbrs/zref-vario/compare/v0.1.6...v0.1.7) (2023-01-03) diff --git a/macros/latex/contrib/zref-vario/zref-vario-code.pdf b/macros/latex/contrib/zref-vario/zref-vario-code.pdf index e5aa9feaa1..b035eabb67 100644 Binary files a/macros/latex/contrib/zref-vario/zref-vario-code.pdf and b/macros/latex/contrib/zref-vario/zref-vario-code.pdf differ diff --git a/macros/latex/contrib/zref-vario/zref-vario-code.tex b/macros/latex/contrib/zref-vario/zref-vario-code.tex index 914208b02e..d1774f8f21 100644 --- a/macros/latex/contrib/zref-vario/zref-vario-code.tex +++ b/macros/latex/contrib/zref-vario/zref-vario-code.tex @@ -22,7 +22,7 @@ % % This work consists of the files zref-vario.dtx, % zref-vario.ins, -% zref-vario.tex, +% zref-vario-doc.tex, % zref-vario-code.tex, % and the files generated from them. % diff --git a/macros/latex/contrib/zref-vario/zref-vario-doc.pdf b/macros/latex/contrib/zref-vario/zref-vario-doc.pdf new file mode 100644 index 0000000000..0119708112 Binary files /dev/null and b/macros/latex/contrib/zref-vario/zref-vario-doc.pdf differ diff --git a/macros/latex/contrib/zref-vario/zref-vario-doc.tex b/macros/latex/contrib/zref-vario/zref-vario-doc.tex new file mode 100644 index 0000000000..0923b299ae --- /dev/null +++ b/macros/latex/contrib/zref-vario/zref-vario-doc.tex @@ -0,0 +1,376 @@ +% \iffalse meta-comment +% +% File: zref-vario.tex +% +% This file is part of the LaTeX package "zref-vario". +% +% Copyright (C) 2022-2023 Gustavo Barros +% +% It may be distributed and/or modified under the conditions of the +% LaTeX Project Public License (LPPL), either version 1.3c of this +% license or (at your option) any later version. The latest version +% of this license is in the file: +% +% https://www.latex-project.org/lppl.txt +% +% and version 1.3 or later is part of all distributions of LaTeX +% version 2005/12/01 or later. +% +% +% This work is "maintained" (as per LPPL maintenance status) by +% Gustavo Barros. +% +% This work consists of the files zref-vario.dtx, +% zref-vario.ins, +% zref-vario-doc.tex, +% zref-vario-code.tex, +% and the files generated from them. +% +% The released version of this package is available from CTAN. +% +% ----------------------------------------------------------------------- +% +% The development version of the package can be found at +% +% https://github.com/gusbrs/zref-vario +% +% for those people who are interested. +% +% ----------------------------------------------------------------------- +% +% \fi + +\documentclass{l3doc} + +% The package itself *must* be loaded so that \GetFileInfo can pick up date +% and version data. +\usepackage{zref-vario} + +\usepackage[T1]{fontenc} + +\usepackage[sc]{mathpazo} +\linespread{1.05} +\usepackage[scale=.88]{tgheros} % sans +\usepackage[varqu,scaled=1.03]{inconsolata} % tt + +\usepackage{listings} + +\usepackage{microtype} + +\hypersetup{hidelinks} + +\NewDocumentCommand\opt{m}{\texttt{#1}} + +\NewDocumentCommand\username{m}{`\texttt{#1}'} + +\setlength{\marginparsep}{2\labelsep} + +\lstdefinestyle{code}{ + language=[LaTeX]TeX, + % moretexcs={ + % } +} +\lstdefinestyle{zrefvario}{ + style=code, + % moretexcs={ + % } +} +\lstset{ + style=zrefvario, + basicstyle=\ttfamily\small, + columns=fullflexible, + keepspaces, + xleftmargin=\leftmargin, + xrightmargin=.5\leftmargin, +} +\lstnewenvironment{zvexample}[1][]{% + \renewcommand{\lstlistingname}{Example}% + \lstset{#1}% +}{} + +\begin{document} + +\GetFileInfo{zref-vario.sty} + +\title{% + The \pkg{zref-vario} package% + \thanks{This file describes \fileversion, released \filedate.}% + \texorpdfstring{\\{}\medskip{}}{ - }% + User manual% + \texorpdfstring{\medskip{}}{}% +} + +\author{% + Gustavo Barros% + \thanks{\url{https://github.com/gusbrs/zref-vario}}% +} + +\date{\filedate} + +\maketitle + +\begin{center} + {\bfseries \abstractname\vspace{-.5em}\vspace{0pt}} +\end{center} + +\begin{quotation} + \pkg{zref-vario} offers a compatibility layer for \pkg{varioref} to be used + alongside \pkg{zref-clever}. It provides + ``\texttt{\textbackslash{}z}\dots{}'' counterparts to \pkg{varioref}'s main + reference commands, each of which essentially does some (scoped) setup for + \pkg{varioref}, then calls the original one. +\end{quotation} + +\bigskip{} + +\begin{center} + \textbf{EXPERIMENTAL} +\end{center} + +\tableofcontents + +\clearpage{} + +\section{Loading the package} + +As usual: + +\begin{zvexample} +\usepackage{zref-vario} +\end{zvexample} + +\pkg{zref-vario} loads \pkg{zref-clever}, and will load \pkg{varioref} at +\texttt{begindocument/before}, if it hasn't already been loaded. However, +considering \pkg{varioref} has known load order interaction with other +packages, prominently with \pkg{hyperref}, you may wish to load it explicitly +to ensure its load order requirements are met. + + +\section{Package options} + +Package options can be set by means of \cs{zvsetup}. + +\begin{function}{\zvsetup} + \begin{syntax} + \cs{zvsetpup}\marg{options} + \end{syntax} +\end{function} + +Available options are: + +\bigskip{} + +\DescribeOption{pageprop} % +\pkg{varioref} uses the \texttt{page} field of the standard label to check +whether a reference and its label are on the same page, nearby, or far away. +And has no real alternative data to use for the purpose. Possibly for this +reason, the basic mechanism of page comparison in \pkg{varioref} is restricted +to arabic numbered pages. Any other page numbering scheme results in +\pkg{varioref} making no distinction between one or many pages off. But with +\pkg{zref} it is trivial to detach the printed representation of the reference +and the data used to make page comparisons. And that's what the +\opt{pageprop} option allows to control. It receives a \pkg{zref} property as +value to be used by \pkg{zref-vario} to make page comparisons, and defaults to +the \texttt{page} property, which corresponds to the usual \pkg{varioref} +behavior. The property must be defined and be included in \pkg{zref}'s main +list at the time the setting is performed. The natural intended use case of +this option is the \texttt{abspage} property provided by the +\pkg{zref-abspage} module, which already handles these two requirements. +Thus, loading this module and setting \opt{pageprop} to \texttt{abspage} gives +us page comparisons independent of the page numbering scheme, which works in +the front matter with roman numbering, across front and main matter +boundaries, etc. In sum, regardless of whether the page numbering is arabic +or anything else. + + +\section{Reference commands} + +\begin{function}{\zvref} + \begin{syntax} + \cs{zvref}\meta{*}\oarg{options}\marg{label} + \end{syntax} +\end{function} + +\begin{function}{\zvpageref} + \begin{syntax} + \cs{zvpageref}\meta{*}\oarg{options}\marg{label} + \end{syntax} +\end{function} + +\begin{function}{\zvrefrange} + \begin{syntax} + \cs{zvrefrange}\meta{*}\oarg{options}\marg{label}\marg{label} + \end{syntax} +\end{function} + +\begin{function}{\zvpagerefrange} + \begin{syntax} + \cs{zvpagerefrange}\meta{*}\oarg{options}\marg{label}\marg{label} + \end{syntax} +\end{function} + +\begin{function}{\zfullref} + \begin{syntax} + \cs{zfullref}\meta{*}\oarg{options}\marg{label} + \end{syntax} +\end{function} + +These user commands work pretty much as their \pkg{varioref} +counterparts.\footnote{If you are not acquainted with them, see + \pkg{varioref}'s documentation.} Indeed, they are just wrappers around +them. As such, differently from \pkg{zref-clever}'s commands, these can +receive single labels as arguments, not lists of them. In all of them the +starred version inhibits hyperlinking, and they (locally) set \pkg{varioref}'s +\opt{nospace} option, so that the this syntax can be used unambiguously. + +All of them have a single optional argument, which can receive any of +\cs{zcref}'s options, and those are set for calls to \cs{zcref} or +\cs{zpageref} which are part of the building blocks of the reference formats +and strings set for \pkg{varioref}. However, there is indeed some potential +friction and caveats stemming from the use of these options, which were +designed to work for single calls of \cs{zcref}, to apply to \emph{pairs} of +them. Hence, whether each and every of these options is meaningful, useful, +or potentially harmful in this context depends on the case, and it is up to +the user to make proper use of them. Of course, one can always split the pair +using \cs{zcref} and then \cs{zvpageref}, \cs{zvpagerefrange}, or +\cs{zcpageref}, and have more control over each part. Anyway, the package +does what it says: passes the options along to the underlying call(s) to +\cs{zcref}.\footnote{Note that the options given to each call of these user + macros are set \emph{before} the call to the original \pkg{varioref} + counterpart. This means that options given to \cs{zcref} or \cs{zpageref} + in the strings and formats in \cs{zvLanguageSetup} will have precedence over + the former. Which is useful, so that we can distinguish to some degree the + first from the second call of \cs{zcref}/\cs{zpageref} done in the formats, + but does not eliminate the limitations which arise from the underlying + problem.} + +\DescribeOption{vcurrent} % +\DescribeOption{vother} % +Besides \cs{zcref}'s options, mentioned above, two other ones are provided for +\pkg{zref-vario}'s reference commands, corresponding to \pkg{varioref}'s +commands optional arguments: \opt{vcurrent} (the first optional argument) and +\opt{vother} (the second optional argument). Of course, these are only +available when the underlying \pkg{varioref} command supports them. + + +\section{Reference format} + +\begin{function}{\zvLanguageSetup} + \begin{syntax} + \cs{zvLanguageSetup}\marg{language}\marg{options} + \end{syntax} +\end{function} + +User interface for customization of ``strings'' and ``formats'' for +\meta{language}. \meta{language} must be known to \pkg{zref-clever}. The +\meta{options} are familiar to users of \pkg{varioref}: +\opt{reftextfaceafter}, \opt{reftextfacebefore}, \opt{reftextafter}, +\opt{reftextbefore}, \opt{reftextcurrent}, \opt{reftextfaraway}, +\opt{reftextpagerange}, \opt{reftextlabelrange}, \opt{vrefformat}, +\opt{vrefrangeformat}, and \opt{fullrefformat}.\footnote{For details, see + \pkg{varioref}'s documentation.} Their meaning is the same as the ones they +have in \pkg{varioref} and, indeed, they work by setting those \pkg{varioref} +macros to the values given to the corresponding options in +\cs{zvLanguageSetup}. If you are setting up a language which has no built-in +support, you should set at least the whole set of ``\texttt{reftext}\dots{}'' +options. Language independent default values are provided for the +``\dots{}\texttt{format}'' options (equivalent to the ones from +\pkg{varioref}, which are adequate for most use cases), so you may omit them. +But, if you need to adjust them, the default values can be overridden by +setting the corresponding options in \cs{zvLanguageSetup}. +\cs{zvLanguageSetup} is preamble only. + +\begin{function}{\zvhyperlink} + \begin{syntax} + \cs{zvhyperlink}\marg{text} + \end{syntax} +\end{function} + +Inside the options of \cs{zvLanguageSetup}, and also inside the \opt{vcurrent} +and \opt{vother} options of \pkg{zref-vario}'s reference commands, +\cs{zvhyperlink} can be used to produce a hyperlink to the label of the +reference. For example, one could set \texttt{reftextafter=\{on the + \cs{zvhyperlink}\{next page\}\}} to get ``next page'' hyperlinked. +\cs{zvhyperlink} can be used regardless of \opt{hyperref} being enabled for +\pkg{zref-clever}, it will just pass on the \meta{text} argument if it is not. +On range reference commands, \cs{zvhyperlink} only produces a link when both +labels fall on the same page, in which case it hyperlinks to the first label. + +\bigskip{} + +As far as \pkg{zref-vario} is concerned, \pkg{varioref}'s options are (mostly) +not taken into account: the language options are disregarded (settings made +with \cs{zvLanguageSetup} are used instead), the \opt{nospace} option is +hard-coded (locally) for the ``\texttt{\textbackslash{}z}\dots{}'' commands, +and \opt{draft} and \opt{final} are typically given to \cs{documentclass}, +though they do affect \pkg{zref-vario}'s commands, just as they do with +\pkg{varioref}'s. + + +\section{Integration with \pkg{zref-check}} + +When package \pkg{zref-check} is loaded, \pkg{zref-vario} provides one further +option to its user commands: \opt{vcheck}. The purpose of this option is to +check the relative position of label and reference within the same page. It +can receive two values: \texttt{above} and \texttt{below}, being those the +names of the \pkg{zref-check}'s checks which are meaningful for the use case +at hand. Of course, these could also be performed with \cs{zcref}'s +\opt{check} option, which is available for \pkg{zref-vario}'s commands as +well. The difference here is that the check specified in \opt{vcheck} is only +performed when the referenced label -- or labels, in the case of a range -- +fall on the same page as the reference itself.\footnote{There's another + technical difference between them. \pkg{zref-check}'s checks, and hence + those of the \opt{check} option, make sure the whole reference passes each + check by setting labels both at the start and the end of the reference, and + verifying if each one of them passes the checks. But, since \pkg{varioref} + already has it's own mechanism to handle references which cross page + boundaries, \opt{vcheck}'s checks set only one label, at the end of the + reference, the same position \pkg{varioref} uses to check whether label and + reference are on the same page.} In other words, when \opt{vcurrent} would +be used (if provided). For this reason, only the commands which support +\opt{vcurrent} offer \pkg{vcheck}. Also, \opt{vcheck} cannot receive +\pkg{zref-check}'s options, as \opt{check} is able to, but the latter can be +used for the purpose of locally controlling the behavior of the checks +performed by \opt{vcheck}. Consult \pkg{zref-check}'s documentation for +details and limitations of these checks and envisaged workflows for their +reliable use. + + +\section{Acknowledgments} + +A number of people have contributed to \pkg{zref-vario}. Suggestions, +ideas, solutions to problems, bug reports or even encouragement were +generously provided by (in chronological order): + Matteo Ferrigato, % 'matteo339' + % 2023-01-02: https://github.com/gusbrs/zref-vario/issues/1 + Ulrike Fischer, + % 2023-01-02: https://tex.stackexchange.com/q/670399 (comments) + David Carlisle, + % 2023-01-02: https://chat.stackexchange.com/transcript/message/62684358#62684358 + % and following discussion. + % 2023-02-10: https://tex.stackexchange.com/a/674846 + and Joseph Wright. + % 2023-01-02: https://chat.stackexchange.com/transcript/message/62684358#62684358 + % and following discussion. + +The package's language settings have been provided or improved thanks to: + Matteo Ferrigato (Italian). % 'matteo339' + % 2023-01-02: https://github.com/gusbrs/zref-vario/issues/1 + +If I have inadvertently left anyone off the list I apologize, and please let +me know, so that I can correct the oversight. + +Thank you all very much! + + +\section{Change history} + +A change log with relevant changes for each version, eventual upgrade +instructions, and upcoming changes, is maintained in the package's repository, +at \url{https://github.com/gusbrs/zref-vario/blob/main/CHANGELOG.md}. The +change log is also distributed with the package's documentation through CTAN +upon release so, most likely, \texttt{texdoc zref-vario/changelog} should +provide easy local access to it. An archive of historical versions of the +package is also kept at \url{https://github.com/gusbrs/zref-vario/releases}. + +\end{document} diff --git a/macros/latex/contrib/zref-vario/zref-vario.dtx b/macros/latex/contrib/zref-vario/zref-vario.dtx index 1e07c94694..e029af643c 100644 --- a/macros/latex/contrib/zref-vario/zref-vario.dtx +++ b/macros/latex/contrib/zref-vario/zref-vario.dtx @@ -22,7 +22,7 @@ % % This work consists of the files zref-vario.dtx, % zref-vario.ins, -% zref-vario.tex, +% zref-vario-doc.tex, % zref-vario-code.tex, % and the files generated from them. % @@ -126,9 +126,14 @@ % \end{macrocode} % % +% \begin{macrocode} +\NeedsTeXFormat{LaTeX2e} +% \end{macrocode} +% +% % Identify the package. % \begin{macrocode} -\ProvidesExplPackage {zref-vario} {2023-01-03} {0.1.7} +\ProvidesExplPackage {zref-vario} {2023-06-14} {0.1.8} {Extended LaTeX page cross-references with varioref and zref-clever} % \end{macrocode} % diff --git a/macros/latex/contrib/zref-vario/zref-vario.ins b/macros/latex/contrib/zref-vario/zref-vario.ins index bdc92fffdb..211c1ff0b2 100644 --- a/macros/latex/contrib/zref-vario/zref-vario.ins +++ b/macros/latex/contrib/zref-vario/zref-vario.ins @@ -22,7 +22,7 @@ % % This work consists of the files zref-vario.dtx, % zref-vario.ins, -% zref-vario.tex, +% zref-vario-doc.tex, % zref-vario-code.tex, % and the files generated from them. % @@ -68,7 +68,7 @@ This work is "maintained" (as per LPPL maintenance status) by This work consists of the files zref-vario.dtx, zref-vario.ins, - zref-vario.tex, + zref-vario-doc.tex, zref-vario-code.tex, and the files generated from them. diff --git a/macros/latex/contrib/zref-vario/zref-vario.pdf b/macros/latex/contrib/zref-vario/zref-vario.pdf deleted file mode 100644 index ef33353401..0000000000 Binary files a/macros/latex/contrib/zref-vario/zref-vario.pdf and /dev/null differ diff --git a/macros/latex/contrib/zref-vario/zref-vario.tex b/macros/latex/contrib/zref-vario/zref-vario.tex deleted file mode 100644 index 859519a2ef..0000000000 --- a/macros/latex/contrib/zref-vario/zref-vario.tex +++ /dev/null @@ -1,374 +0,0 @@ -% \iffalse meta-comment -% -% File: zref-vario.tex -% -% This file is part of the LaTeX package "zref-vario". -% -% Copyright (C) 2022-2023 Gustavo Barros -% -% It may be distributed and/or modified under the conditions of the -% LaTeX Project Public License (LPPL), either version 1.3c of this -% license or (at your option) any later version. The latest version -% of this license is in the file: -% -% https://www.latex-project.org/lppl.txt -% -% and version 1.3 or later is part of all distributions of LaTeX -% version 2005/12/01 or later. -% -% -% This work is "maintained" (as per LPPL maintenance status) by -% Gustavo Barros. -% -% This work consists of the files zref-vario.dtx, -% zref-vario.ins, -% zref-vario.tex, -% zref-vario-code.tex, -% and the files generated from them. -% -% The released version of this package is available from CTAN. -% -% ----------------------------------------------------------------------- -% -% The development version of the package can be found at -% -% https://github.com/gusbrs/zref-vario -% -% for those people who are interested. -% -% ----------------------------------------------------------------------- -% -% \fi - -\documentclass{l3doc} - -% The package itself *must* be loaded so that \GetFileInfo can pick up date -% and version data. -\usepackage{zref-vario} - -\usepackage[T1]{fontenc} - -\usepackage[sc]{mathpazo} -\linespread{1.05} -\usepackage[scale=.88]{tgheros} % sans -\usepackage[varqu,scaled=1.03]{inconsolata} % tt - -\usepackage{listings} - -\usepackage{microtype} - -\hypersetup{hidelinks} - -\NewDocumentCommand\opt{m}{\texttt{#1}} - -\NewDocumentCommand\username{m}{`\texttt{#1}'} - -\setlength{\marginparsep}{2\labelsep} - -\lstdefinestyle{code}{ - language=[LaTeX]TeX, - % moretexcs={ - % } -} -\lstdefinestyle{zrefvario}{ - style=code, - % moretexcs={ - % } -} -\lstset{ - style=zrefvario, - basicstyle=\ttfamily\small, - columns=fullflexible, - keepspaces, - xleftmargin=\leftmargin, - xrightmargin=.5\leftmargin, -} -\lstnewenvironment{zvexample}[1][]{% - \renewcommand{\lstlistingname}{Example}% - \lstset{#1}% -}{} - -\begin{document} - -\GetFileInfo{zref-vario.sty} - -\title{% - The \pkg{zref-vario} package% - \thanks{This file describes \fileversion, released \filedate.}% - \texorpdfstring{\\{}\medskip{}}{ - }% - User manual% - \texorpdfstring{\medskip{}}{}% -} - -\author{% - Gustavo Barros% - \thanks{\url{https://github.com/gusbrs/zref-vario}}% -} - -\date{\filedate} - -\maketitle - -\begin{center} - {\bfseries \abstractname\vspace{-.5em}\vspace{0pt}} -\end{center} - -\begin{quotation} - \pkg{zref-vario} offers a compatibility layer for \pkg{varioref} to be used - alongside \pkg{zref-clever}. It provides - ``\texttt{\textbackslash{}z}\dots{}'' counterparts to \pkg{varioref}'s main - reference commands, each of which essentially does some (scoped) setup for - \pkg{varioref}, then calls the original one. -\end{quotation} - -\bigskip{} - -\begin{center} - \textbf{EXPERIMENTAL} -\end{center} - -\tableofcontents - -\clearpage{} - -\section{Loading the package} - -As usual: - -\begin{zvexample} -\usepackage{zref-vario} -\end{zvexample} - -\pkg{zref-vario} loads \pkg{zref-clever}, and will load \pkg{varioref} at -\texttt{begindocument/before}, if it hasn't already been loaded. However, -considering \pkg{varioref} has known load order interaction with other -packages, prominently with \pkg{hyperref}, you may wish to load it explicitly -to ensure its load order requirements are met. - - -\section{Package options} - -Package options can be set by means of \cs{zvsetup}. - -\begin{function}{\zvsetup} - \begin{syntax} - \cs{zvsetpup}\marg{options} - \end{syntax} -\end{function} - -Available options are: - -\bigskip{} - -\DescribeOption{pageprop} % -\pkg{varioref} uses the \texttt{page} field of the standard label to check -whether a reference and its label are on the same page, nearby, or far away. -And has no real alternative data to use for the purpose. Possibly for this -reason, the basic mechanism of page comparison in \pkg{varioref} is restricted -to arabic numbered pages. Any other page numbering scheme results in -\pkg{varioref} making no distinction between one or many pages off. But with -\pkg{zref} it is trivial to detach the printed representation of the reference -and the data used to make page comparisons. And that's what the -\opt{pageprop} option allows to control. It receives a \pkg{zref} property as -value to be used by \pkg{zref-vario} to make page comparisons, and defaults to -the \texttt{page} property, which corresponds to the usual \pkg{varioref} -behavior. The property must be defined and be included in \pkg{zref}'s main -list at the time the setting is performed. The natural intended use case of -this option is the \texttt{abspage} property provided by the -\pkg{zref-abspage} module, which already handles these two requirements. -Thus, loading this module and setting \opt{pageprop} to \texttt{abspage} gives -us page comparisons independent of the page numbering scheme, which works in -the front matter with roman numbering, across front and main matter -boundaries, etc. In sum, regardless of whether the page numbering is arabic -or anything else. - - -\section{Reference commands} - -\begin{function}{\zvref} - \begin{syntax} - \cs{zvref}\meta{*}\oarg{options}\marg{label} - \end{syntax} -\end{function} - -\begin{function}{\zvpageref} - \begin{syntax} - \cs{zvpageref}\meta{*}\oarg{options}\marg{label} - \end{syntax} -\end{function} - -\begin{function}{\zvrefrange} - \begin{syntax} - \cs{zvrefrange}\meta{*}\oarg{options}\marg{label}\marg{label} - \end{syntax} -\end{function} - -\begin{function}{\zvpagerefrange} - \begin{syntax} - \cs{zvpagerefrange}\meta{*}\oarg{options}\marg{label}\marg{label} - \end{syntax} -\end{function} - -\begin{function}{\zfullref} - \begin{syntax} - \cs{zfullref}\meta{*}\oarg{options}\marg{label} - \end{syntax} -\end{function} - -These user commands work pretty much as their \pkg{varioref} -counterparts.\footnote{If you are not acquainted with them, see - \pkg{varioref}'s documentation.} Indeed, they are just wrappers around -them. As such, differently from \pkg{zref-clever}'s commands, these can -receive single labels as arguments, not lists of them. In all of them the -starred version inhibits hyperlinking, and they (locally) set \pkg{varioref}'s -\opt{nospace} option, so that the this syntax can be used unambiguously. - -All of them have a single optional argument, which can receive any of -\cs{zcref}'s options, and those are set for calls to \cs{zcref} or -\cs{zpageref} which are part of the building blocks of the reference formats -and strings set for \pkg{varioref}. However, there is indeed some potential -friction and caveats stemming from the use of these options, which were -designed to work for single calls of \cs{zcref}, to apply to \emph{pairs} of -them. Hence, whether each and every of these options is meaningful, useful, -or potentially harmful in this context depends on the case, and it is up to -the user to make proper use of them. Of course, one can always split the pair -using \cs{zcref} and then \cs{zvpageref}, \cs{zvpagerefrange}, or -\cs{zcpageref}, and have more control over each part. Anyway, the package -does what it says: passes the options along to the underlying call(s) to -\cs{zcref}.\footnote{Note that the options given to each call of these user - macros are set \emph{before} the call to the original \pkg{varioref} - counterpart. This means that options given to \cs{zcref} or \cs{zpageref} - in the strings and formats in \cs{zvLanguageSetup} will have precedence over - the former. Which is useful, so that we can distinguish to some degree the - first from the second call of \cs{zcref}/\cs{zpageref} done in the formats, - but does not eliminate the limitations which arise from the underlying - problem.} - -\DescribeOption{vcurrent} % -\DescribeOption{vother} % -Besides \cs{zcref}'s options, mentioned above, two other ones are provided for -\pkg{zref-vario}'s reference commands, corresponding to \pkg{varioref}'s -commands optional arguments: \opt{vcurrent} (the first optional argument) and -\opt{vother} (the second optional argument). Of course, these are only -available when the underlying \pkg{varioref} command supports them. - - -\section{Reference format} - -\begin{function}{\zvLanguageSetup} - \begin{syntax} - \cs{zvLanguageSetup}\marg{language}\marg{options} - \end{syntax} -\end{function} - -User interface for customization of ``strings'' and ``formats'' for -\meta{language}. \meta{language} must be known to \pkg{zref-clever}. The -\meta{options} are familiar to users of \pkg{varioref}: -\opt{reftextfaceafter}, \opt{reftextfacebefore}, \opt{reftextafter}, -\opt{reftextbefore}, \opt{reftextcurrent}, \opt{reftextfaraway}, -\opt{reftextpagerange}, \opt{reftextlabelrange}, \opt{vrefformat}, -\opt{vrefrangeformat}, and \opt{fullrefformat}.\footnote{For details, see - \pkg{varioref}'s documentation.} Their meaning is the same as the ones they -have in \pkg{varioref} and, indeed, they work by setting those \pkg{varioref} -macros to the values given to the corresponding options in -\cs{zvLanguageSetup}. If you are setting up a language which has no built-in -support, you should set at least the whole set of ``\texttt{reftext}\dots{}'' -options. Language independent default values are provided for the -``\dots{}\texttt{format}'' options (equivalent to the ones from -\pkg{varioref}, which are adequate for most use cases), so you may omit them. -But, if you need to adjust them, the default values can be overridden by -setting the corresponding options in \cs{zvLanguageSetup}. - -\begin{function}{\zvhyperlink} - \begin{syntax} - \cs{zvhyperlink}\marg{text} - \end{syntax} -\end{function} - -Inside the options of \cs{zvLanguageSetup}, and also inside the \opt{vcurrent} -and \opt{vother} options of \pkg{zref-vario}'s reference commands, -\cs{zvhyperlink} can be used to produce a hyperlink to the label of the -reference. For example, one could set \texttt{reftextafter=\{on the - \cs{zvhyperlink}\{next page\}\}} to get ``next page'' hyperlinked. -\cs{zvhyperlink} can be used regardless of \opt{hyperref} being enabled for -\pkg{zref-clever}, it will just pass on the \meta{text} argument if it is not. -On range reference commands, \cs{zvhyperlink} only produces a link when both -labels fall on the same page, in which case it hyperlinks to the first label. - -\bigskip{} - -As far as \pkg{zref-vario} is concerned, \pkg{varioref}'s options are (mostly) -not taken into account: the language options are disregarded (settings made -with \cs{zvLanguageSetup} are used instead), the \opt{nospace} option is -hard-coded (locally) for the ``\texttt{\textbackslash{}z}\dots{}'' commands, -and \opt{draft} and \opt{final} are typically given to \cs{documentclass}, -though they do affect \pkg{zref-vario}'s commands, just as they do with -\pkg{varioref}'s. - - -\section{Integration with \pkg{zref-check}} - -When package \pkg{zref-check} is loaded, \pkg{zref-vario} provides one further -option to its user commands: \opt{vcheck}. The purpose of this option is to -check the relative position of label and reference within the same page. It -can receive two values: \texttt{above} and \texttt{below}, being those the -names of the \pkg{zref-check}'s checks which are meaningful for the use case -at hand. Of course, these could also be performed with \cs{zcref}'s -\opt{check} option, which is available for \pkg{zref-vario}'s commands as -well. The difference here is that the check specified in \opt{vcheck} is only -performed when the referenced label -- or labels, in the case of a range -- -fall on the same page as the reference itself.\footnote{There's another - technical difference between them. \pkg{zref-check}'s checks, and hence - those of the \opt{check} option, make sure the whole reference passes each - check by setting labels both at the start and the end of the reference, and - verifying if each one of them passes the checks. But, since \pkg{varioref} - already has it's own mechanism to handle references which cross page - boundaries, \opt{vcheck}'s checks set only one label, at the end of the - reference, the same position \pkg{varioref} uses to check whether label and - reference are on the same page.} In other words, when \opt{vcurrent} would -be used (if provided). For this reason, only the commands which support -\opt{vcurrent} offer \pkg{vcheck}. Also, \opt{vcheck} cannot receive -\pkg{zref-check}'s options, as \opt{check} is able to, but the latter can be -used for the purpose of locally controlling the behavior of the checks -performed by \opt{vcheck}. Consult \pkg{zref-check}'s documentation for -details and limitations of these checks and envisaged workflows for their -reliable use. - - -\section{Acknowledgments} - -A number of people have contributed to \pkg{zref-vario}. Suggestions, -ideas, solutions to problems, bug reports or even encouragement were -generously provided by (in chronological order): - Matteo Ferrigato, % 'matteo339' - % 2023-01-02: https://github.com/gusbrs/zref-vario/issues/1 - Ulrike Fischer, - % 2023-01-02: https://tex.stackexchange.com/q/670399 (comments) - David Carlisle, - % 2023-01-02: https://chat.stackexchange.com/transcript/message/62684358#62684358 - % and following discussion. - and Joseph Wright. - % 2023-01-02: https://chat.stackexchange.com/transcript/message/62684358#62684358 - % and following discussion. - -The package's language settings have been provided or improved thanks to: - Matteo Ferrigato (Italian). % 'matteo339' - % 2023-01-02: https://github.com/gusbrs/zref-vario/issues/1 - -If I have inadvertently left anyone off the list I apologize, and please let -me know, so that I can correct the oversight. - -Thank you all very much! - - -\section{Change history} - -A change log with relevant changes for each version, eventual upgrade -instructions, and upcoming changes, is maintained in the package's repository, -at \url{https://github.com/gusbrs/zref-vario/blob/main/CHANGELOG.md}. The -change log is also distributed with the package's documentation through CTAN -upon release so, most likely, \texttt{texdoc zref-vario/changelog} should -provide easy local access to it. An archive of historical versions of the -package is also kept at \url{https://github.com/gusbrs/zref-vario/releases}. - -\end{document} diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl index 0286b102e6..27a64a6604 100644 --- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl @@ -54,9 +54,6 @@ $mirrors = { 'https://mirror.kakao.com/CTAN/' => 1, 'https://mirror.navercorp.com/CTAN/' => 1, }, - 'Singapore' => { - 'https://download.nus.edu.sg/mirror/ctan/' => 1, - }, 'Taiwan' => { 'https://ctan.mirror.twds.com.tw/tex-archive/' => 1, }, @@ -127,7 +124,6 @@ $mirrors = { }, 'Netherlands' => { 'https://ftp.snt.utwente.nl/pub/software/tex/' => 1, - 'https://mirror.koddos.net/CTAN/' => 1, 'https://mirror.lyrahosting.com/CTAN/' => 1, 'https://mirrors.evoluso.com/CTAN/' => 1, }, diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb index abcf2fcf8f..1a3a8de674 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb @@ -26,7 +26,7 @@ depend container_split_src_files/1 depend frozen/0 depend minrelease/2016 depend release/2023 -depend revision/67355 +depend revision/67369 name 00texlive.image category TLCore @@ -4756,7 +4756,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd name 00texlive.installer category TLCore -revision 67351 +revision 67357 shortdesc TeX Live standalone installer package longdesc This package defines the files to go into the installer longdesc archives (install-tl-unx.tar.gz, install-tl.zip) built by the @@ -46001,7 +46001,7 @@ catalogue-version 0.2 name bxjscls category Package -revision 63011 +revision 67364 shortdesc Japanese document class collection for all major engines relocated 1 longdesc This package provides an extended version of the Japanese @@ -46010,23 +46010,23 @@ longdesc original version supports only pLaTeX and upLaTeX, the extended longdesc version also supports pdfLaTeX, XeLaTeX and LuaLaTeX, with the longdesc aid of suitable packages that provide capability of Japanese longdesc typesetting. -containersize 33920 -containerchecksum 23b3ad893f6d3d4ca3e05bc047eca414058974f622ec966c9a6f6f02f34f664e08a1aa8ef1fb64f9665c73ca8cb8b396336c00917b0295c8dc421e6b52bd96d1 -doccontainersize 1207792 -doccontainerchecksum 2c56a1cbcfdf4760b47919b5669a118f79615eccfc66681b1d6eb3c5ff2037f9b9de283558923e28a696059ad2d210c6568e6fc1e7e342b74978100e79494d32 -docfiles size=324 +containersize 34352 +containerchecksum 6be41ac3e31836e7513e93a7fbed734a2e5ac55786c003564306c4c34649017145d9cf48ae9ed141dff73c55bc041342af49726e93d166bd1ac85154fc080fdf +doccontainersize 1231300 +doccontainerchecksum bcf123d4eabf57132f4357d9fbeca765ec02ac2b3fc0bdbc844de40f2df6838c82c7c6c70149a3c42437b9bd94fc02c258b596e5b3159b2ba611eb302b65aedf +docfiles size=331 RELOC/doc/latex/bxjscls/LICENSE RELOC/doc/latex/bxjscls/README-ja.md details="Readme (Japanese)" language="ja" RELOC/doc/latex/bxjscls/README.md details="Readme" RELOC/doc/latex/bxjscls/bxjscls-manual.pdf details="User guide (Japanese)" language="ja" RELOC/doc/latex/bxjscls/bxjscls-manual.tex RELOC/doc/latex/bxjscls/bxjscls.pdf details="Package documentation (Japanese)" language="ja" -srccontainersize 85064 -srccontainerchecksum f76994ec09a8eb2b86ec1a5d13dc8e005fa5210566e28086f1175056f1014276ee799c2cb6f2e38d09f8dee645f86c02f6de12821215a691b7cba4d6cd3449fd -srcfiles size=103 +srccontainersize 86668 +srccontainerchecksum 59c64cf27bee8fe436d6806e816e864ba43f3f5540b75752d3ec18b53d7a6577b84d3c258dba47ebb42433b98673211ccfe96182b6aec6e8c4a75024f5f7afbf +srcfiles size=105 RELOC/source/latex/bxjscls/bxjscls.dtx RELOC/source/latex/bxjscls/bxjscls.ins -runfiles size=103 +runfiles size=105 RELOC/tex/latex/bxjscls/bxjsarticle.cls RELOC/tex/latex/bxjscls/bxjsbook.cls RELOC/tex/latex/bxjscls/bxjscjkcat.sty @@ -46043,7 +46043,7 @@ catalogue-contact-repository https://github.com/zr-tex8r catalogue-ctan /language/japanese/BX/bxjscls catalogue-license bsd2 catalogue-topics japanese class -catalogue-version 2.7a +catalogue-version 2.8 name bxnewfont category Package @@ -120757,18 +120757,18 @@ catalogue-version 4.10.4 name fenetrecas category Package -revision 67185 +revision 67362 shortdesc Commands for CAS-like windows (Xcas or Geogebra) in TikZ relocated 1 longdesc This package provides some commands (in French) to display, longdesc with TikZ, windows like Xcas or Geogebra : longdesc \begin{CalculFormelGeogebra} and \LigneCalculsGeogebra ; longdesc \begin{CalculFormelXcas} and \LigneCalculsXcas. -containersize 3736 -containerchecksum 1661e207e552a576f20f29cc8f2d414ebea33f7fc98d99d2b268de6427f7234e414d6232ca9da25c996c8b82e6d95f60d032d0bba51ecd09d99b49c9bb1376f2 -doccontainersize 613884 -doccontainerchecksum ac11803a9a42907ef9b7c4bb7ddc8ab12e5ba9a40574f6be7949329d45e6ce6911c92cdfa1ceec1a74f7828b5ea6c95fea110583247dfb42433944ff129c4018 -docfiles size=160 +containersize 3916 +containerchecksum 86686637ba7f43c82279e6f118f278b45be9875f3d0eba83cd19be57207e837d4894ccd11642819f8b63d365879a737e0cfc142ca8991fb9e928ca2fd244932e +doccontainersize 645152 +doccontainerchecksum e7a06e8d5d91056adaad731e06246e3bc3ad237513029d8915b3d953b6328224aa46bd226437653a8960e8e3f0ecc085577cd6e8c6780636aba99899b2831352 +docfiles size=168 RELOC/doc/latex/fenetrecas/FenetreCas-doc.pdf details="Package documentation" RELOC/doc/latex/fenetrecas/FenetreCas-doc.tex RELOC/doc/latex/fenetrecas/README.md details="Readme" @@ -120779,7 +120779,7 @@ catalogue-contact-support https://github.com/cpierquet/FenetreCas/issues catalogue-ctan /graphics/pgf/contrib/fenetrecas catalogue-license lppl1.3c catalogue-topics graphics pgf-tikz -catalogue-version 0.1.2 +catalogue-version 0.1.3 name fenixpar category Package @@ -267535,18 +267535,18 @@ catalogue-version 1.0 name quizztex category Package -revision 67355 +revision 67366 shortdesc Create quizzes like in TV shows relocated 1 longdesc This LaTeX package permits to create quizzes in the style of longdesc the TV shows << Qui veut gagner des millions ? >> ("Who Wants longdesc to Be a Millionaire?") or << Tout le monde veut prendre sa longdesc place ! >>. -containersize 532 -containerchecksum d4e0acb04dc28923b618a803eb1248e27bfd22f642f34973b1a20c74e29b105425a9056caadb5c86c788e00dadd6f64583030c745949183d2e1fe9693a1c62ef -doccontainersize 499532 -doccontainerchecksum 87f4b4c7e84d7bdb18128a0d1a31516834de28b1527ad48ce93937be1f7e9992d5fbfe1b2979b5889f1a8120a54ace722f0789af1cfb1699fa213a080373ea7a -docfiles size=141 +containersize 536 +containerchecksum f232a7b85f533e8dab081c1f0c3ea86f54b42a88682e38e5259f48b20d03237856560d8f94f558c73b2fa78d742654499ddd1e21669046212afb20c10e4b7edf +doccontainersize 540484 +doccontainerchecksum f2329dbf680210b04ecc3cc4b60e9b923c68af9f33eea408fa55c63d1ea6ea5af35e3869221e2658da8e689c78e842249375c6208ce4befb8252648b1b41a569 +docfiles size=152 RELOC/doc/latex/quizztex/README.md details="Readme" RELOC/doc/latex/quizztex/doc/quizztex-doc-fr.pdf details="Package documentation" language="fr" RELOC/doc/latex/quizztex/doc/quizztex-doc-fr.tex @@ -267556,7 +267556,7 @@ catalogue-contact-repository https://github.com/cpierquet/quizztex catalogue-ctan /macros/latex/contrib/quizztex catalogue-license lppl1.3c catalogue-topics exam pgf-tikz -catalogue-version 0.1.0 +catalogue-version 0.1.1 name quotchap category Package @@ -277436,7 +277436,7 @@ catalogue-version 1 name runcode category Package -revision 65588 +revision 67367 shortdesc Execute foreign source code and embed the result in the pdf file relocated 1 longdesc This LaTeX package executes programming source codes (including @@ -277449,10 +277449,10 @@ longdesc the Python talk2stat package. Currently, this server-mode longdesc supports Julia, MatLab, Python, and R. More languages will be longdesc added. For more details and usage examples, refer to the longdesc package's github repository. -containersize 4456 -containerchecksum a16f61affff0ab5d58df300b638d62fa0e48a8537ddfead3d7e76113e54f31c0f0c8424ef183233d109be014701ba57b78618ec131b5bd3c526b10645e1f35f3 -doccontainersize 408672 -doccontainerchecksum b48827b01c986fa1e11469a36f9426255f45699e11002d2826002d1745915a3e36a9919f901ca1a6b9d7a04a86aacbfbcf934732dfdce8ad20771b1b027b3e55 +containersize 4476 +containerchecksum 1d8daa15c97936d626f4ba0b3172bc0f29178a7d23a270a1645cbdc345b823c78b3ff7fa166a30134a83f6c1a7e0bcbe2bd0e0383d7d6bdde5755971c57b85d1 +doccontainersize 410324 +doccontainerchecksum 9bb4d6cf2e692bd28ce85211a14cdba974ef3a36fdb49f5381d27d5bcf72a1cd1cb79ce747b6355a079ec0356bb748361fa10829adb1911e41657df70b549b3f docfiles size=119 RELOC/doc/latex/runcode/README details="Readme" RELOC/doc/latex/runcode/generated/runcode_troubleshoot_inln2.tex @@ -277473,7 +277473,7 @@ catalogue-contact-repository https://github.com/Ossifragus/runcode catalogue-ctan /macros/latex/contrib/runcode catalogue-license lppl1.3c catalogue-topics exec-foreign callback -catalogue-version 1.8 +catalogue-version 1.9 name russ category Package @@ -285841,7 +285841,7 @@ catalogue-version 0.1 name soul category Package -revision 65908 +revision 67365 shortdesc Hyphenation for letterspacing, underlining, and more relocated 1 longdesc The package provides hyphenable spacing out (letterspacing), @@ -285852,16 +285852,16 @@ longdesc tasks, that have to treat text syllable by syllable. This is longdesc shown in two examples. This version is a merge of the original longdesc soul package from Melchior Franz and the soulutf8 package from longdesc Heiko Oberdiek and supports also UTF8. -containersize 8940 -containerchecksum 5e21da200db0e4c714f4f3431418cf11bceb99468f07ad9af7cc86c96816c9aaf400ce0e213eea27ee2e61086d61a61f4ec0c4ad3c957cb6792ae0fa4c8dafcf -doccontainersize 822736 -doccontainerchecksum 9cc277dff738325baef2e8a481e48b82421e68600b295e7e83e696bdbc48c27eccede5362e9f4d40d8ad3f263e55cf60abe438b8a8f9fc66054469f68ad04299 +containersize 8944 +containerchecksum 233f1178521296d5cccc7db50c98425995b8708c97d750a5c24f698bd0de2e54ed5c57f9641f402bb8a42721e348355e6f7e9092b4056999b032d001c8203aba +doccontainersize 822656 +doccontainerchecksum c734b198050f5fda61e0477e7cadbb6f6f9257a0fa41babed664621d7b64c4971412d831b350879a5405976d4e35a11caa0519fb67f308bcd622f0c72f431b4e docfiles size=219 RELOC/doc/generic/soul/README.md RELOC/doc/generic/soul/soul-ori.pdf details="Package documentation (Old soul package)" RELOC/doc/generic/soul/soul.pdf details="Package documentation" -srccontainersize 40420 -srccontainerchecksum 659c8f326562d733a908e448281c8b0783cba64fe9c7f3198f3d03dfa9a6f666c7993b8d6eb6bda6698464751716c6e4e6b545b3e02c9b784447167002771049 +srccontainersize 40516 +srccontainerchecksum 6a50fd644f99214a71f96994d52fdfd5f353a584ad73dca3b66829ee6094976eee8d4fec3f691149f634f27423ef5490bd4c1b781fb743bcf228e4b1e52e5d33 srcfiles size=42 RELOC/source/generic/soul/soul-ori.dtx RELOC/source/generic/soul/soul.dtx @@ -285876,7 +285876,7 @@ catalogue-contact-repository https://github.com/ho-tex/soul catalogue-ctan /macros/generic/soul catalogue-license lppl1.3 catalogue-topics underline letterspace -catalogue-version 3.0 +catalogue-version 3.1 name soulpos category Package @@ -294410,20 +294410,20 @@ catalogue-version 0.2beta name string-diagrams category Package -revision 67354 +revision 67363 shortdesc Create string diagrams with LaTeX and TikZ relocated 1 longdesc This LaTeX package has been designed for effortless and longdesc aesthetically pleasing creation of string diagrams. -containersize 2288 -containerchecksum 3b43d40ffc958f3cc35281d67c0870a3c81d640fb158a8fa03460c931e2160c10eee86570fa800c62d068ac1102c1ddfbb66cb8f0f34216ad09c764e613826a4 -doccontainersize 535608 -doccontainerchecksum 1bb1ee3e9930107e72c7d8411f80b42c10bbca93bc9cdb7beb2250e13262440cda8c043980c41ca5fbc5a868bd3204a70fb8e5f588e2d3b889a32903469142f4 +containersize 2324 +containerchecksum 9f05bf09bb74ab07ecf1a4e6aa1bb16db06961b1caf87c73f48fe33e8174081c38eab30b0249e219a936499a533d441b092e642c88a996193900fb0000708c35 +doccontainersize 538072 +doccontainerchecksum 3c692dbd5835abd3bb87cdc8b3abbfdcc63d233cd3275d92d5073772979349c759c391f254bab3f670d65ebb55b50b4d7024b748b538349428033971beb09bbc docfiles size=136 RELOC/doc/latex/string-diagrams/README.md details="Readme" RELOC/doc/latex/string-diagrams/string-diagrams.pdf details="Package documentation" -srccontainersize 4968 -srccontainerchecksum 604c7948c0ef8de2cd9df898b2c46c9a62ed9c74b386ecca7550d652bb7edf44998be469de3b4e6471eb014fdaac0b8fce687f5111c342180d7a3a97bbed9ade +srccontainersize 5124 +srccontainerchecksum 632a1fa22b3bef38b708169aecf1b9c3b9bdcf4cd07843a2b12893a996a98d41d397e3614e242d6021a385dde4e563aaa011e38400c216e76bf221548996d2cb srcfiles size=5 RELOC/source/latex/string-diagrams/string-diagrams.dtx RELOC/source/latex/string-diagrams/string-diagrams.ins @@ -294434,7 +294434,7 @@ catalogue-contact-repository https://github.com/paolobrasolin/string-diagrams catalogue-ctan /graphics/pgf/contrib/string-diagrams catalogue-license lppl1.3c catalogue-topics graphics diagram pgf-tikz maths -catalogue-version 0.2.0 +catalogue-version 0.2.1 name stringenc category Package @@ -297830,7 +297830,7 @@ catalogue-version 1.1 name tagpdf category Package -revision 67308 +revision 67368 shortdesc Tools for experimenting with tagging using pdfLaTeX and LuaLaTeX relocated 1 longdesc The package offers tools to experiment with tagging and @@ -297841,11 +297841,11 @@ longdesc needed; to test what else is needed so that a pdf works e.g. longdesc with a screen reader. Its goal is to get a feeling for what has longdesc to be done, which kernel changes are needed, how packages longdesc should be adapted. -containersize 34128 -containerchecksum 5afea30c0edcf02e735f287bf43d9020364b678c40b233093a628545dfce6d1f86ee6b9170fa662b305564a3aa3afb51d3e6c026a0bc536d9bb501e77ddb3d00 -doccontainersize 2088448 -doccontainerchecksum ad8f4eb383833b124a72e2755fd04ddcde4f4b145135ceae143df62a5a7b7ca2cd343584c8a248a0ddbf32bc9a3c2c98e284a97f351fb97598c724368eb3906f -docfiles size=765 +containersize 34420 +containerchecksum de07849d663502f96f3cb8acf789c80f6f47483fc37fd6c4757b33fe15541dbec2aced80b052fb44b92ca242121edcec8d5226a7b74f175ef1084e9a6940ae63 +doccontainersize 2103152 +doccontainerchecksum 21b71f6270ef13c364e89daae4426018abd50e4a0052c8a4448b8f010532e0d8865acf7e805c9165fada0639a6cac2891f8e0a6c28db7ec567417c25b8054e1f +docfiles size=776 RELOC/doc/latex/tagpdf/README.md details="Readme" RELOC/doc/latex/tagpdf/acrobat.png RELOC/doc/latex/tagpdf/ex-AF-file.pdf @@ -297880,9 +297880,9 @@ docfiles size=765 RELOC/doc/latex/tagpdf/tagpdf.bib RELOC/doc/latex/tagpdf/tagpdf.pdf details="Package documentation" RELOC/doc/latex/tagpdf/tagpdf.tex -srccontainersize 63368 -srccontainerchecksum b75c54ddb58bb5cb01ad7c84decafacc5bdc2b424071aaf852990a3d418fd0c5bac541d01d0b85c35b52fb215953cb2e086036b5a27bef6fbcd9c3b5c7413523 -srcfiles size=92 +srccontainersize 64156 +srccontainerchecksum b503995f9a47e32a4c2ab6eec76bbf9da54c5b693f6a81920b0cadb649f2c03eeba02171d6d870634a74afa00330ed7026ae50f5ec2e96a5094102ec75d9b31b +srcfiles size=94 RELOC/source/latex/tagpdf/tagpdf-backend.dtx RELOC/source/latex/tagpdf/tagpdf-checks.dtx RELOC/source/latex/tagpdf/tagpdf-data.dtx @@ -297896,7 +297896,7 @@ srcfiles size=92 RELOC/source/latex/tagpdf/tagpdf-user.dtx RELOC/source/latex/tagpdf/tagpdf.dtx RELOC/source/latex/tagpdf/tagpdf.ins -runfiles size=64 +runfiles size=66 RELOC/tex/latex/tagpdf/tagpdf-base.sty RELOC/tex/latex/tagpdf/tagpdf-debug-generic.sty RELOC/tex/latex/tagpdf/tagpdf-debug-lua.sty @@ -297920,7 +297920,7 @@ catalogue-contact-support https://github.com/u-fischer/tagpdf/issues catalogue-ctan /macros/latex/contrib/tagpdf catalogue-license lppl1.3c catalogue-topics tagged-pdf accessible expl3 -catalogue-version 0.98h +catalogue-version 0.98i name talk category Package @@ -313128,7 +313128,7 @@ docfiles size=376 name texlive-scripts category TLCore -revision 67351 +revision 67357 shortdesc TeX Live infrastructure programs longdesc Includes install-tl, tl-portable, rungs, etc.; not needed for longdesc tlmgr to run but still ours. Not included in tlcritical. @@ -313136,10 +313136,10 @@ depend texlive-scripts.ARCH depend texlive.infra execute addMap mathpple.map postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat -containersize 114092 -containerchecksum 95895318e58e5cff4569e738e71fa123225779f241ec83515425304e3995caba44e0b195b47e3b9d614333fff495cd13ecd1e33006d27a0382f880770008972a -doccontainersize 427288 -doccontainerchecksum ec7d27d0e91330eb346c882837030f555bf1d144f9228dbaebe458c241bd71c35d3eae90efd6b41d9b586be361fb154740a74dbf64061306800f85d13f7c52ed +containersize 114060 +containerchecksum 50961dedf1b0b846d6ffde6331a84d5889cafc02cbe7fc52781bcf23f3d5b655b962eff4e18aaaf0897520ac2e1dc6e76d99151407024e28f2e509bd1e8b5d7f +doccontainersize 427248 +doccontainerchecksum da93399880cb93ef7cfffc9809495cb968cd4946b281f81e80a7e20d60b56e348d16f2b741c05520f0d56b045251b33e82b453de5ac21d66ea34491dd52a26ad docfiles size=546 doc.html texmf-dist/doc/man/man1/fmtutil-sys.1 @@ -363627,7 +363627,7 @@ catalogue-version 0.3.2 name zref-clever category Package -revision 66021 +revision 67369 shortdesc Clever LaTeX cross-references based on zref relocated 1 longdesc This package provides a user interface for making LaTeX @@ -363639,24 +363639,24 @@ longdesc multiple labels can be automatically sorted and compressed into longdesc ranges when due. The reference format is highly and easily longdesc customizable, both globally and locally. The package is based longdesc on zref's extensible referencing system. -containersize 23524 -containerchecksum ade0da112c25088237fc58a7a97054df5bad27459853ca906a8f9cca9746bb4f27dc526e64dedc26ff07490190d1bb90ae1b48ba4986f6f8f7a7d0ab0857a53c -doccontainersize 1579140 -doccontainerchecksum 55dc6b51df647532adc47ba68e9ddcadf50e56466901aff028e5120c8a085b34bc0aee61323537b3aca91a920d575d10821123a9dae52678ea3b9bf36a689804 -docfiles size=436 +containersize 23392 +containerchecksum ae13569040bede6aff2dc4f24a8c33ab0ab0aa00c021ac6f0601156d471303f0f67b50d92a9565ac397d8d0810717c1bf9eb7722ab536ed6973b38875c2168d5 +doccontainersize 1569740 +doccontainerchecksum dff178ad66a4d51df0a1e2d84d2b1d21804a5bfc9c2c58a9f60ae012604afce2d5a4cb24d04607cc3d8e438fb42976914d22db6be46e13ca8ddd2f694e8cce76 +docfiles size=433 RELOC/doc/latex/zref-clever/CHANGELOG.md RELOC/doc/latex/zref-clever/DEPENDS.txt RELOC/doc/latex/zref-clever/README.md details="Readme" RELOC/doc/latex/zref-clever/zref-clever-code.pdf details="Code documentation" RELOC/doc/latex/zref-clever/zref-clever-code.tex - RELOC/doc/latex/zref-clever/zref-clever.pdf details="User manual" - RELOC/doc/latex/zref-clever/zref-clever.tex -srccontainersize 54700 -srccontainerchecksum bdd928e518fd7000dbcda69eefd048dc00782524207755b972450d745643159973c273c82284235fd3f4010c11743e401fc169f516f49baf1d46aabd124fd66e -srcfiles size=88 + RELOC/doc/latex/zref-clever/zref-clever-doc.pdf details="User manual" + RELOC/doc/latex/zref-clever/zref-clever-doc.tex +srccontainersize 52936 +srccontainerchecksum 70e6c61e517b39106c8a4d4d65926d37cffab274c188d9b3605040c685501f5b2d77ce4a803c08648cd9a020958a05bbf7616ffeec1de647fcdf378652cf091c +srcfiles size=86 RELOC/source/latex/zref-clever/zref-clever.dtx RELOC/source/latex/zref-clever/zref-clever.ins -runfiles size=68 +runfiles size=67 RELOC/tex/latex/zref-clever/zref-clever-dutch.lang RELOC/tex/latex/zref-clever/zref-clever-english.lang RELOC/tex/latex/zref-clever/zref-clever-french.lang @@ -363669,7 +363669,7 @@ catalogue-contact-repository https://github.com/gusbrs/zref-clever catalogue-ctan /macros/latex/contrib/zref-clever catalogue-license lppl1.3c catalogue-topics label-ref expl3 -catalogue-version 0.3.6 +catalogue-version 0.4.0 name zref-vario category Package diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 index 00c60fa997..c23fc9bc4a 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 @@ -1 +1 @@ -7338acbdefeda333faf2ab0e683c3847 texlive.tlpdb +bc264fa77f685ed296113b6a34da181b texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 index 214c4ac68b..36e1f65079 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 @@ -1 +1 @@ -9fe651d03c20f1e32c0f940cbb8eeaa00fc68c8d6d95a312d530c3a96e01f62b70f4cdf2ea7fd784e60753c50a801a225d3e18bb61f2032167cf339e3fbdbc51 texlive.tlpdb +0323baace55123089162e0c09448f15f1913fac7f59a441006e3995a359577e96e8b26400f09f6b9d2806d5b2671bcff6b5056d316a861df6ba1fdadcecec5d2 texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc index 98a18f2182..0b73d9f340 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc @@ -1,11 +1,11 @@ -----BEGIN PGP SIGNATURE----- -iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmSI/2oACgkQTOGHfhlD -jHAS3wf/f+zSGAq6JsWNJNJoRyMXB1C/Gw60otYChoXCMjgBXJfAig2cvOKrN2i9 -LsdFe/pMEf7chU0QJcuqTjfsKKh4PAxYmT1nQU4KdFHrkYDfKYaBoZNQ8UOpIFQ7 -lM1de8Ul4GmFgWcHgYkPqYvwQQ0Kho4XiXbB54CdcyVkhbY9ErW4L0syYD/nWzdR -vsqsxnRzcxHfyO3+ThWLsgLy8MEk7M71dB8x7mG7p3aBIgjsH8iUojzch/35GpCA -Fvr+NusZk4vWIfIO6jnqasfxsm32+DRqDeE45wkZeoBXE8xHeKvSPcK6cuV6U4du -sgKuhHOo7HMeH2fooVQ/tIXAP2sSlg== -=N7Lm +iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmSKUPgACgkQTOGHfhlD +jHAqOwgAvnJKXHvkyfj1Xezy9ihDQiDuQ+lDVgQgw2duYcwy60f3CNaZyTIos7h2 +VAQHMCTxcfY/UIWFc3MDK6Aao3WXY5kJycdKv1/JSbqmg2X5RHpc2lCTArJVJV4m +kaxROn5yhatrHVZiB8VexGOtyPi/az1V8HbN6TrD1pwaeIBSk2maUN3cow1OMgtd +lDDrqog4yTi92cwemqhy9GChsV6wEMxBwWeMu4AjAtPkkhf95mV0Hk6TWzz62qxw +7tprlFWeKAAr6eGQ/KLifW1dVpij//P0PHsJwVVmiUFplAq2dxvGKqJtCfzxKi2v +Bo2cpxUixAjpq9Zpr3Bcyx5uyK/Iaw== +=zzcd -----END PGP SIGNATURE----- diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz index 5ab74f7448..20d9436234 100644 Binary files a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz and b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz differ diff --git a/timestamp b/timestamp index 12d8bb7e1f..27ec66a297 100644 --- a/timestamp +++ b/timestamp @@ -2,4 +2,4 @@ # The source CTAN of this site's material: dante.ctan.org # The year-month-day-hour-minute of this site's material: -2023-06-14-02-02 +2023-06-15-02-02 -- cgit v1.2.3