From 3593305133bcfb167225af1b35c299bde1456579 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Tue, 15 Aug 2023 03:00:53 +0000 Subject: CTAN sync 202308150300 --- FILES.byname | 816 +++-- FILES.byname.gz | Bin 2537357 -> 2539028 bytes FILES.last07days | 591 +++- biblio/ctan-bibdata/ctan.bib | 62 +- biblio/ctan-bibdata/ctan.pdf | Bin 3695418 -> 3695334 bytes .../contrib/lettrine/doc/lettrine-demo-de.pdf | Bin 128252 -> 128252 bytes .../contrib/lettrine/doc/lettrine-demo-fr.pdf | Bin 168279 -> 168279 bytes .../contrib/lettrine/doc/lettrine-demo-lua.pdf | Bin 74185 -> 74185 bytes macros/latex/contrib/lettrine/doc/lettrine.pdf | Bin 125776 -> 126080 bytes macros/latex/contrib/lettrine/lettrine.dtx | 98 +- macros/latex/contrib/memoir/README | 7 + macros/latex/contrib/memoir/doc-src/memman.tex | 3122 ++++++++++++-------- macros/latex/contrib/memoir/doc-src/memsty.sty | 5 + macros/latex/contrib/memoir/memman.pdf | Bin 2845232 -> 2826438 bytes macros/latex/contrib/memoir/memoir.dtx | 9 +- .../latex/contrib/nicematrix/nicematrix-code.dtx | 1218 +++++--- .../latex/contrib/nicematrix/nicematrix-code.pdf | Bin 918695 -> 939983 bytes .../latex/contrib/nicematrix/nicematrix-french.pdf | Bin 580394 -> 584003 bytes .../latex/contrib/nicematrix/nicematrix-french.tex | 204 +- macros/latex/contrib/nicematrix/nicematrix.ins | 2 +- macros/latex/contrib/nicematrix/nicematrix.pdf | Bin 598471 -> 602607 bytes macros/latex/contrib/nicematrix/nicematrix.tex | 229 +- macros/latex/contrib/panneauxroute/README.md | 10 + .../panneauxroute/doc/PanneauxRoute-doc.pdf | Bin 0 -> 670553 bytes .../panneauxroute/doc/PanneauxRoute-doc.tex | 689 +++++ .../panneauxroute/tex/Danger/PanneauRouteA13a.pdf | Bin 0 -> 2270 bytes .../panneauxroute/tex/Danger/PanneauRouteA13b.pdf | Bin 0 -> 2644 bytes .../panneauxroute/tex/Danger/PanneauRouteA14.pdf | Bin 0 -> 1705 bytes .../panneauxroute/tex/Danger/PanneauRouteA15a1.pdf | Bin 0 -> 1937 bytes .../panneauxroute/tex/Danger/PanneauRouteA15a2.pdf | Bin 0 -> 2124 bytes .../panneauxroute/tex/Danger/PanneauRouteA15b.pdf | Bin 0 -> 2470 bytes .../panneauxroute/tex/Danger/PanneauRouteA15c.pdf | Bin 0 -> 2152 bytes .../panneauxroute/tex/Danger/PanneauRouteA16.pdf | Bin 0 -> 3884 bytes .../panneauxroute/tex/Danger/PanneauRouteA17.pdf | Bin 0 -> 1769 bytes .../panneauxroute/tex/Danger/PanneauRouteA18.pdf | Bin 0 -> 1577 bytes .../panneauxroute/tex/Danger/PanneauRouteA19.pdf | Bin 0 -> 1891 bytes .../panneauxroute/tex/Danger/PanneauRouteA1a.pdf | Bin 0 -> 1607 bytes .../panneauxroute/tex/Danger/PanneauRouteA1b.pdf | Bin 0 -> 1596 bytes .../panneauxroute/tex/Danger/PanneauRouteA1c.pdf | Bin 0 -> 1624 bytes .../panneauxroute/tex/Danger/PanneauRouteA1d.pdf | Bin 0 -> 1627 bytes .../panneauxroute/tex/Danger/PanneauRouteA20.pdf | Bin 0 -> 2247 bytes .../panneauxroute/tex/Danger/PanneauRouteA21.pdf | Bin 0 -> 3036 bytes .../panneauxroute/tex/Danger/PanneauRouteA23.pdf | Bin 0 -> 1656 bytes .../panneauxroute/tex/Danger/PanneauRouteA24.pdf | Bin 0 -> 2041 bytes .../panneauxroute/tex/Danger/PanneauRouteA2a.pdf | Bin 0 -> 1669 bytes .../panneauxroute/tex/Danger/PanneauRouteA2b.pdf | Bin 0 -> 1589 bytes .../panneauxroute/tex/Danger/PanneauRouteA3.pdf | Bin 0 -> 1565 bytes .../panneauxroute/tex/Danger/PanneauRouteA3a.pdf | Bin 0 -> 1543 bytes .../panneauxroute/tex/Danger/PanneauRouteA3b.pdf | Bin 0 -> 1540 bytes .../panneauxroute/tex/Danger/PanneauRouteA4.pdf | Bin 0 -> 4117 bytes .../panneauxroute/tex/Danger/PanneauRouteA6.pdf | Bin 0 -> 2046 bytes .../panneauxroute/tex/Danger/PanneauRouteA7.pdf | Bin 0 -> 1842 bytes .../panneauxroute/tex/Danger/PanneauRouteA8.pdf | Bin 0 -> 4457 bytes .../panneauxroute/tex/Danger/PanneauRouteA9.pdf | Bin 0 -> 2549 bytes .../tex/Indication/PanneauRouteC107.pdf | Bin 0 -> 1634 bytes .../tex/Indication/PanneauRouteC108.pdf | Bin 0 -> 1707 bytes .../tex/Indication/PanneauRouteC111.pdf | Bin 0 -> 1646 bytes .../tex/Indication/PanneauRouteC112.pdf | Bin 0 -> 1702 bytes .../tex/Indication/PanneauRouteC113.pdf | Bin 0 -> 2418 bytes .../tex/Indication/PanneauRouteC114.pdf | Bin 0 -> 2458 bytes .../tex/Indication/PanneauRouteC115.pdf | Bin 0 -> 2461 bytes .../tex/Indication/PanneauRouteC116.pdf | Bin 0 -> 2525 bytes .../tex/Indication/PanneauRouteC12.pdf | Bin 0 -> 1444 bytes .../tex/Indication/PanneauRouteC13a.pdf | Bin 0 -> 1388 bytes .../tex/Indication/PanneauRouteC13b.pdf | Bin 0 -> 1393 bytes .../tex/Indication/PanneauRouteC14_1.pdf | Bin 0 -> 9134 bytes .../tex/Indication/PanneauRouteC14_2.pdf | Bin 0 -> 18670 bytes .../tex/Indication/PanneauRouteC18.pdf | Bin 0 -> 1484 bytes .../tex/Indication/PanneauRouteC1a.pdf | Bin 0 -> 1440 bytes .../tex/Indication/PanneauRouteC1b.pdf | Bin 0 -> 1631 bytes .../tex/Indication/PanneauRouteC1c.pdf | Bin 0 -> 2212 bytes .../tex/Indication/PanneauRouteC207.pdf | Bin 0 -> 1510 bytes .../tex/Indication/PanneauRouteC208.pdf | Bin 0 -> 1584 bytes .../tex/Indication/PanneauRouteC20a.pdf | Bin 0 -> 2526 bytes .../tex/Indication/PanneauRouteC20c.pdf | Bin 0 -> 2059 bytes .../tex/Indication/PanneauRouteC23.pdf | Bin 0 -> 18555 bytes .../tex/Indication/PanneauRouteC24a1.pdf | Bin 0 -> 2242 bytes .../tex/Indication/PanneauRouteC24a4.pdf | Bin 0 -> 2207 bytes .../tex/Indication/PanneauRouteC24b1.pdf | Bin 0 -> 1464 bytes .../tex/Indication/PanneauRouteC24b2.pdf | Bin 0 -> 1502 bytes .../tex/Indication/PanneauRouteC24c1.pdf | Bin 0 -> 1968 bytes .../tex/Indication/PanneauRouteC24c2.pdf | Bin 0 -> 2503 bytes .../tex/Indication/PanneauRouteC25a.pdf | Bin 0 -> 8028 bytes .../tex/Indication/PanneauRouteC25b.pdf | Bin 0 -> 6415 bytes .../tex/Indication/PanneauRouteC26a.pdf | Bin 0 -> 1538 bytes .../tex/Indication/PanneauRouteC26b.pdf | Bin 0 -> 1537 bytes .../tex/Indication/PanneauRouteC27.pdf | Bin 0 -> 1428 bytes .../tex/Indication/PanneauRouteC28a.pdf | Bin 0 -> 1427 bytes .../tex/Indication/PanneauRouteC28b.pdf | Bin 0 -> 1463 bytes .../tex/Indication/PanneauRouteC29a.pdf | Bin 0 -> 1566 bytes .../tex/Indication/PanneauRouteC29b.pdf | Bin 0 -> 1475 bytes .../tex/Indication/PanneauRouteC3.pdf | Bin 0 -> 6956 bytes .../tex/Indication/PanneauRouteC30.pdf | Bin 0 -> 1487 bytes .../tex/Indication/PanneauRouteC4a.pdf | Bin 0 -> 2865 bytes .../tex/Indication/PanneauRouteC4b.pdf | Bin 0 -> 2923 bytes .../tex/Indication/PanneauRouteC5.pdf | Bin 0 -> 2414 bytes .../tex/Indication/PanneauRouteC50.pdf | Bin 0 -> 6610 bytes .../tex/Indication/PanneauRouteC6.pdf | Bin 0 -> 1867 bytes .../tex/Indication/PanneauRouteC62.pdf | Bin 0 -> 3478 bytes .../tex/Indication/PanneauRouteC64a.pdf | Bin 0 -> 2000 bytes .../tex/Indication/PanneauRouteC64b.pdf | Bin 0 -> 1663 bytes .../tex/Indication/PanneauRouteC64c.pdf | Bin 0 -> 3779 bytes .../tex/Indication/PanneauRouteC64d1.pdf | Bin 0 -> 1461 bytes .../tex/Indication/PanneauRouteC64d2.pdf | Bin 0 -> 1525 bytes .../tex/Indication/PanneauRouteC8.pdf | Bin 0 -> 1504 bytes .../tex/Interdiction/PanneauRouteB0.pdf | Bin 0 -> 1299 bytes .../tex/Interdiction/PanneauRouteB1.pdf | Bin 0 -> 1287 bytes .../tex/Interdiction/PanneauRouteB10a.pdf | Bin 0 -> 3205 bytes .../tex/Interdiction/PanneauRouteB11.pdf | Bin 0 -> 2706 bytes .../tex/Interdiction/PanneauRouteB12.pdf | Bin 0 -> 3058 bytes .../tex/Interdiction/PanneauRouteB13.pdf | Bin 0 -> 2427 bytes .../tex/Interdiction/PanneauRouteB13a.pdf | Bin 0 -> 4830 bytes .../tex/Interdiction/PanneauRouteB14_110.pdf | Bin 0 -> 2670 bytes .../tex/Interdiction/PanneauRouteB14_130.pdf | Bin 0 -> 3430 bytes .../tex/Interdiction/PanneauRouteB14_15.pdf | Bin 0 -> 1945 bytes .../tex/Interdiction/PanneauRouteB14_30.pdf | Bin 0 -> 3338 bytes .../tex/Interdiction/PanneauRouteB14_50.pdf | Bin 0 -> 2895 bytes .../tex/Interdiction/PanneauRouteB14_70.pdf | Bin 0 -> 2544 bytes .../tex/Interdiction/PanneauRouteB14_90.pdf | Bin 0 -> 2962 bytes .../tex/Interdiction/PanneauRouteB15.pdf | Bin 0 -> 1417 bytes .../tex/Interdiction/PanneauRouteB16.pdf | Bin 0 -> 1590 bytes .../tex/Interdiction/PanneauRouteB17.pdf | Bin 0 -> 3096 bytes .../tex/Interdiction/PanneauRouteB18a.pdf | Bin 0 -> 2205 bytes .../tex/Interdiction/PanneauRouteB18b.pdf | Bin 0 -> 1949 bytes .../tex/Interdiction/PanneauRouteB18c.pdf | Bin 0 -> 1655 bytes .../tex/Interdiction/PanneauRouteB19.pdf | Bin 0 -> 5662 bytes .../tex/Interdiction/PanneauRouteB2a.pdf | Bin 0 -> 1599 bytes .../tex/Interdiction/PanneauRouteB2b.pdf | Bin 0 -> 1577 bytes .../tex/Interdiction/PanneauRouteB2c.pdf | Bin 0 -> 1628 bytes .../tex/Interdiction/PanneauRouteB3.pdf | Bin 0 -> 1874 bytes .../tex/Interdiction/PanneauRouteB31.pdf | Bin 0 -> 1355 bytes .../tex/Interdiction/PanneauRouteB33_110.pdf | Bin 0 -> 3914 bytes .../tex/Interdiction/PanneauRouteB33_130.pdf | Bin 0 -> 4678 bytes .../tex/Interdiction/PanneauRouteB33_15.pdf | Bin 0 -> 2823 bytes .../tex/Interdiction/PanneauRouteB33_30.pdf | Bin 0 -> 5335 bytes .../tex/Interdiction/PanneauRouteB33_50.pdf | Bin 0 -> 4444 bytes .../tex/Interdiction/PanneauRouteB33_70.pdf | Bin 0 -> 3990 bytes .../tex/Interdiction/PanneauRouteB33_90.pdf | Bin 0 -> 4358 bytes .../tex/Interdiction/PanneauRouteB34.pdf | Bin 0 -> 2700 bytes .../tex/Interdiction/PanneauRouteB34a.pdf | Bin 0 -> 2482 bytes .../tex/Interdiction/PanneauRouteB35.pdf | Bin 0 -> 2268 bytes .../tex/Interdiction/PanneauRouteB39.pdf | Bin 0 -> 6692 bytes .../tex/Interdiction/PanneauRouteB3a.pdf | Bin 0 -> 2217 bytes .../tex/Interdiction/PanneauRouteB4.pdf | Bin 0 -> 5574 bytes .../tex/Interdiction/PanneauRouteB5a.pdf | Bin 0 -> 3274 bytes .../tex/Interdiction/PanneauRouteB5b.pdf | Bin 0 -> 3016 bytes .../tex/Interdiction/PanneauRouteB5c.pdf | Bin 0 -> 2661 bytes .../tex/Interdiction/PanneauRouteB6a1.pdf | Bin 0 -> 1586 bytes .../tex/Interdiction/PanneauRouteB6a2.pdf | Bin 0 -> 2264 bytes .../tex/Interdiction/PanneauRouteB6a3.pdf | Bin 0 -> 3165 bytes .../tex/Interdiction/PanneauRouteB6d.pdf | Bin 0 -> 8755 bytes .../tex/Interdiction/PanneauRouteB7a.pdf | Bin 0 -> 2567 bytes .../tex/Interdiction/PanneauRouteB7b.pdf | Bin 0 -> 3485 bytes .../tex/Interdiction/PanneauRouteB8.pdf | Bin 0 -> 1910 bytes .../tex/Interdiction/PanneauRouteB9a.pdf | Bin 0 -> 1676 bytes .../tex/Interdiction/PanneauRouteB9b.pdf | Bin 0 -> 2397 bytes .../tex/Interdiction/PanneauRouteB9c.pdf | Bin 0 -> 2055 bytes .../tex/Interdiction/PanneauRouteB9d.pdf | Bin 0 -> 1750 bytes .../tex/Interdiction/PanneauRouteB9e.pdf | Bin 0 -> 2424 bytes .../tex/Interdiction/PanneauRouteB9f.pdf | Bin 0 -> 1857 bytes .../tex/Interdiction/PanneauRouteB9g.pdf | Bin 0 -> 2158 bytes .../tex/Interdiction/PanneauRouteB9h.pdf | Bin 0 -> 2815 bytes .../tex/Interdiction/PanneauRouteB9i.pdf | Bin 0 -> 3178 bytes .../tex/IntersectionPriorite/PanneauRouteAB1.pdf | Bin 0 -> 1546 bytes .../tex/IntersectionPriorite/PanneauRouteAB2.pdf | Bin 0 -> 1543 bytes .../tex/IntersectionPriorite/PanneauRouteAB25.pdf | Bin 0 -> 1798 bytes .../tex/IntersectionPriorite/PanneauRouteAB3a.pdf | Bin 0 -> 6621 bytes .../tex/IntersectionPriorite/PanneauRouteAB3b.pdf | Bin 0 -> 3542 bytes .../tex/IntersectionPriorite/PanneauRouteAB4.pdf | Bin 0 -> 2884 bytes .../tex/IntersectionPriorite/PanneauRouteAB5.pdf | Bin 0 -> 5069 bytes .../tex/IntersectionPriorite/PanneauRouteAB6.pdf | Bin 0 -> 1370 bytes .../tex/IntersectionPriorite/PanneauRouteAB7.pdf | Bin 0 -> 1524 bytes .../tex/Obligation/PanneauRouteB21-1.pdf | Bin 0 -> 1298 bytes .../tex/Obligation/PanneauRouteB21-2.pdf | Bin 0 -> 1306 bytes .../tex/Obligation/PanneauRouteB21a1.pdf | Bin 0 -> 1311 bytes .../tex/Obligation/PanneauRouteB21a2.pdf | Bin 0 -> 1335 bytes .../tex/Obligation/PanneauRouteB21b.pdf | Bin 0 -> 1332 bytes .../tex/Obligation/PanneauRouteB21c1.pdf | Bin 0 -> 1415 bytes .../tex/Obligation/PanneauRouteB21c2.pdf | Bin 0 -> 1432 bytes .../tex/Obligation/PanneauRouteB21d1.pdf | Bin 0 -> 1451 bytes .../tex/Obligation/PanneauRouteB21d2.pdf | Bin 0 -> 1488 bytes .../tex/Obligation/PanneauRouteB21e.pdf | Bin 0 -> 1491 bytes .../tex/Obligation/PanneauRouteB22a.pdf | Bin 0 -> 2335 bytes .../tex/Obligation/PanneauRouteB22b.pdf | Bin 0 -> 2757 bytes .../tex/Obligation/PanneauRouteB22c.pdf | Bin 0 -> 3210 bytes .../tex/Obligation/PanneauRouteB25.pdf | Bin 0 -> 3296 bytes .../tex/Obligation/PanneauRouteB26.pdf | Bin 0 -> 10223 bytes .../tex/Obligation/PanneauRouteB27a.pdf | Bin 0 -> 1776 bytes .../tex/Obligation/PanneauRouteB27b.pdf | Bin 0 -> 2668 bytes .../tex/Obligation/PanneauRouteB29.pdf | Bin 0 -> 3527 bytes .../tex/Obligation/PanneauRouteB40.pdf | Bin 0 -> 2445 bytes .../tex/Obligation/PanneauRouteB41.pdf | Bin 0 -> 2877 bytes .../tex/Obligation/PanneauRouteB42.pdf | Bin 0 -> 1984 bytes .../tex/Obligation/PanneauRouteB43.pdf | Bin 0 -> 3347 bytes .../tex/Obligation/PanneauRouteB44.pdf | Bin 0 -> 11003 bytes .../tex/Obligation/PanneauRouteB45a.pdf | Bin 0 -> 1925 bytes .../tex/Obligation/PanneauRouteB49.pdf | Bin 0 -> 4144 bytes .../contrib/panneauxroute/tex/PanneauxRoute.sty | 216 ++ .../panneauxroute/tex/Services/PanneauRouteCE1.pdf | Bin 0 -> 1403 bytes .../tex/Services/PanneauRouteCE10.pdf | Bin 0 -> 2787 bytes .../tex/Services/PanneauRouteCE12.pdf | Bin 0 -> 2264 bytes .../tex/Services/PanneauRouteCE14.pdf | Bin 0 -> 1720 bytes .../tex/Services/PanneauRouteCE15a.pdf | Bin 0 -> 1615 bytes .../tex/Services/PanneauRouteCE15c.pdf | Bin 0 -> 2494 bytes .../tex/Services/PanneauRouteCE16.pdf | Bin 0 -> 1866 bytes .../tex/Services/PanneauRouteCE17.pdf | Bin 0 -> 1675 bytes .../tex/Services/PanneauRouteCE18.pdf | Bin 0 -> 1528 bytes .../tex/Services/PanneauRouteCE19.pdf | Bin 0 -> 2336 bytes .../tex/Services/PanneauRouteCE20a.pdf | Bin 0 -> 2004 bytes .../tex/Services/PanneauRouteCE20b.pdf | Bin 0 -> 2376 bytes .../tex/Services/PanneauRouteCE21.pdf | Bin 0 -> 1603 bytes .../tex/Services/PanneauRouteCE22.pdf | Bin 0 -> 2919 bytes .../tex/Services/PanneauRouteCE23.pdf | Bin 0 -> 2295 bytes .../tex/Services/PanneauRouteCE24.pdf | Bin 0 -> 2367 bytes .../tex/Services/PanneauRouteCE25.pdf | Bin 0 -> 3459 bytes .../tex/Services/PanneauRouteCE26.pdf | Bin 0 -> 2823 bytes .../tex/Services/PanneauRouteCE27.pdf | Bin 0 -> 1903 bytes .../tex/Services/PanneauRouteCE28.pdf | Bin 0 -> 1636 bytes .../tex/Services/PanneauRouteCE29.pdf | Bin 0 -> 1669 bytes .../tex/Services/PanneauRouteCE2a.pdf | Bin 0 -> 3815 bytes .../tex/Services/PanneauRouteCE2b.pdf | Bin 0 -> 1815 bytes .../tex/Services/PanneauRouteCE30a.pdf | Bin 0 -> 2567 bytes .../tex/Services/PanneauRouteCE30b.pdf | Bin 0 -> 2555 bytes .../tex/Services/PanneauRouteCE3a.pdf | Bin 0 -> 1546 bytes .../tex/Services/PanneauRouteCE4a.pdf | Bin 0 -> 1490 bytes .../tex/Services/PanneauRouteCE4b.pdf | Bin 0 -> 1898 bytes .../tex/Services/PanneauRouteCE4c.pdf | Bin 0 -> 2127 bytes .../tex/Services/PanneauRouteCE50.pdf | Bin 0 -> 7626 bytes .../tex/Services/PanneauRouteCE5a.pdf | Bin 0 -> 1986 bytes .../tex/Services/PanneauRouteCE5b.pdf | Bin 0 -> 1671 bytes .../tex/Services/PanneauRouteCE6a.pdf | Bin 0 -> 2069 bytes .../tex/Services/PanneauRouteCE6b.pdf | Bin 0 -> 1997 bytes .../panneauxroute/tex/Services/PanneauRouteCE7.pdf | Bin 0 -> 1732 bytes .../panneauxroute/tex/Services/PanneauRouteCE8.pdf | Bin 0 -> 2002 bytes .../panneauxroute/tex/Services/PanneauRouteCE9.pdf | Bin 0 -> 1867 bytes .../contrib/profcollege/doc/ProfCollege-doc.pdf | Bin 9123899 -> 9105909 bytes .../contrib/profcollege/latex/PfCCalculatrice.tex | 25 +- .../profcollege/latex/PfCCalculsCroises.tex | 269 +- .../contrib/profcollege/latex/PfCCalisson.tex | 114 +- .../contrib/profcollege/latex/PfCCartographie.tex | 101 +- .../latex/PfCDecomposerNombrePremier.tex | 6 +- .../profcollege/latex/PfCDistributivite.tex | 4 +- .../latex/contrib/profcollege/latex/PfCDomino.tex | 4 +- .../contrib/profcollege/latex/PfCEcrireQCMold.tex | 148 - .../profcollege/latex/PfCEcritureUnites.tex | 2 +- .../profcollege/latex/PfCEngrenagesBase.tex | 6 +- .../contrib/profcollege/latex/PfCErathostene.tex | 2 +- .../profcollege/latex/PfCLabyrintheNombre.tex | 1 + .../latex/contrib/profcollege/latex/PfCMulArt.tex | 472 +++ .../profcollege/latex/PfCNotionFonction.tex | 6 +- .../contrib/profcollege/latex/PfCNumberHive.tex | 2 +- .../profcollege/latex/PfCPyramideCalculs.tex | 4 +- .../profcollege/latex/PfCQuestionsRelier.tex | 4 +- .../contrib/profcollege/latex/PfCReperage.tex | 7 +- .../latex/contrib/profcollege/latex/PfCSolides.tex | 19 +- .../profcollege/latex/PfCStatistiquesold.tex | 2106 ------------- .../profcollege/latex/PfCStatistiquesoldold.tex | 2109 ------------- .../profcollege/latex/PfCTableauxUnites.tex | 2 +- .../latex/contrib/profcollege/latex/PfCThales.tex | 4 +- .../contrib/profcollege/latex/ProfCollege.sty | 24 +- .../contrib/profcollege/metapost/PfCGeometrie.mp | 247 +- .../contrib/profmaquette/doc/profmaquette-doc.pdf | Bin 177321 -> 177327 bytes .../contrib/profmaquette/doc/profmaquette-doc.tex | 6 +- .../contrib/profmaquette/latex/ProfMaquette.sty | 30 +- .../reledmac/doc-more/page-typesetting-columns.pdf | Bin 40794 -> 40791 bytes .../reledmac/examples/1-criticalendnotes.pdf | Bin 201564 -> 201564 bytes .../contrib/reledmac/examples/1-criticalnotes.pdf | Bin 197819 -> 197819 bytes .../contrib/reledmac/examples/1-sidenotes.pdf | Bin 295209 -> 295209 bytes .../latex/contrib/reledmac/examples/1-tabular.pdf | Bin 285556 -> 285556 bytes .../reledmac/examples/1-verses-doublenumbering.pdf | Bin 198959 -> 198959 bytes .../latex/contrib/reledmac/examples/1-verses.pdf | Bin 198794 -> 198794 bytes .../latex/contrib/reledmac/examples/2-antilabe.pdf | Bin 210969 -> 210969 bytes .../reledmac/examples/2-cross_referencing.pdf | Bin 198304 -> 198304 bytes .../reledmac/examples/2-footnote_spacing.pdf | Bin 201443 -> 201443 bytes .../contrib/reledmac/examples/2-glossaries.pdf | Bin 285503 -> 285503 bytes .../latex/contrib/reledmac/examples/2-indexing.pdf | Bin 278070 -> 278070 bytes .../reledmac/examples/2-lemma_disambigution.pdf | Bin 276219 -> 276219 bytes .../reledmac/examples/2-line_numbers_in_header.pdf | Bin 292434 -> 292434 bytes .../contrib/reledmac/examples/2-linespacing.pdf | Bin 286626 -> 286626 bytes .../reledmac/examples/2-manuscript-apparatus.pdf | Bin 288123 -> 288123 bytes .../contrib/reledmac/examples/2-notes-width.pdf | Bin 204669 -> 204669 bytes .../reledmac/examples/2-one_series_per_pstart.pdf | Bin 212242 -> 212242 bytes .../contrib/reledmac/examples/2-performances.pdf | Bin 284583 -> 284583 bytes .../reledmac/examples/2-reledmac-right-to-left.pdf | Bin 36940 -> 36940 bytes .../examples/2-subdivision-number-in-header.pdf | Bin 310603 -> 310603 bytes .../2-titles_in_line_numbering_with_notes.pdf | Bin 288795 -> 288795 bytes .../examples/2-titles_not_in_line_numbering.pdf | Bin 199918 -> 199918 bytes .../3-reledpar_columns_different_languages.pdf | Bin 23442 -> 23441 bytes .../contrib/reledmac/examples/3-reledpar_mwe.pdf | Bin 175650 -> 175650 bytes ...reledpar_pages_different_languages_lualatex.pdf | Bin 32047 -> 32047 bytes .../3-reledpar_same_page_number_in_both_side.pdf | Bin 289211 -> 289211 bytes ...reledpar_sync_setting_advancedshifted-nomax.pdf | Bin 200041 -> 200041 bytes .../3-reledpar_sync_setting_advancedshifted.pdf | Bin 199278 -> 199278 bytes .../examples/3-reledpar_sync_setting_default.pdf | Bin 177110 -> 177110 bytes .../3-reledpar_sync_setting_nomax-shifted.pdf | Bin 199681 -> 199681 bytes .../examples/3-reledpar_sync_setting_nomax.pdf | Bin 198615 -> 198615 bytes .../examples/3-reledpar_sync_setting_nosync.pdf | Bin 198665 -> 198665 bytes .../examples/3-reledpar_sync_setting_shifted.pdf | Bin 198797 -> 198797 bytes ...mn_mix_with_not_column-continuous-numbering.pdf | Bin 214377 -> 214377 bytes .../4-reledpar_column_mix_with_not_column.pdf | Bin 210488 -> 210488 bytes .../examples/4-reledpar_columns_alignment.pdf | Bin 204974 -> 204974 bytes ...columns_titles_in_line_numbering_with_notes.pdf | Bin 298422 -> 298422 bytes .../examples/4-reledpar_inside-outside-columns.pdf | Bin 204015 -> 204015 bytes .../examples/4-reledpar_one_series_per_pstart.pdf | Bin 225555 -> 225555 bytes .../examples/4-reledpar_pages_long_notes.pdf | Bin 251002 -> 251002 bytes .../examples/4-reledpar_pages_notes_leftpage.pdf | Bin 202381 -> 202381 bytes ...-reledpar_pages_paragraph_separator_between.pdf | Bin 198565 -> 198565 bytes ...r_pages_titles_in_line_numbering_with_notes.pdf | Bin 302774 -> 302774 bytes .../4-reledpar_titles_not_in_line_numbering.pdf | Bin 206955 -> 206955 bytes .../examples/4-reledpar_verse_text_between.pdf | Bin 194198 -> 194198 bytes macros/latex/contrib/reledmac/migration.pdf | Bin 368429 -> 368426 bytes macros/latex/contrib/reledmac/reledmac.dtx | 23 +- macros/latex/contrib/reledmac/reledmac.pdf | Bin 2152079 -> 2153144 bytes macros/latex/contrib/reledmac/reledpar.pdf | Bin 1046914 -> 1046914 bytes macros/latex/contrib/substitutefont/README | 101 - .../contrib/substitutefont/cyrillic-lm-lgc.pdf | Bin 322975 -> 0 bytes .../contrib/substitutefont/cyrillic-lm-lgc.tex | 87 - .../contrib/substitutefont/cyrillic-paratype.pdf | Bin 261997 -> 0 bytes .../contrib/substitutefont/cyrillic-paratype.tex | 95 - .../substitutefont/greek-palatino-didot.pdf | Bin 351177 -> 0 bytes .../substitutefont/greek-palatino-didot.tex | 91 - .../substitutefont/greek-times-artemisia.pdf | Bin 393346 -> 0 bytes .../substitutefont/greek-times-artemisia.tex | 71 - .../contrib/substitutefont/substitutefont-doc.html | 106 - .../contrib/substitutefont/substitutefont-test.pdf | Bin 147683 -> 0 bytes .../contrib/substitutefont/substitutefont-test.tex | 55 - .../contrib/substitutefont/substitutefont.sty | 80 - .../contrib/substitutefont/substitutefont.sty.html | 115 - macros/latex/contrib/zref-check/CHANGELOG.md | 20 +- .../latex/contrib/zref-check/zref-check-code.pdf | Bin 745278 -> 745358 bytes macros/latex/contrib/zref-check/zref-check-doc.pdf | Bin 453555 -> 453465 bytes macros/latex/contrib/zref-check/zref-check-doc.tex | 18 +- macros/latex/contrib/zref-check/zref-check.dtx | 1004 +++---- macros/latex/contrib/zref-clever/CHANGELOG.md | 10 +- .../latex/contrib/zref-clever/zref-clever-code.pdf | Bin 1275753 -> 1271363 bytes .../latex/contrib/zref-clever/zref-clever-doc.pdf | Bin 346246 -> 345511 bytes .../latex/contrib/zref-clever/zref-clever-doc.tex | 52 +- macros/latex/contrib/zref-clever/zref-clever.dtx | 88 +- .../macros/latex/contrib/substitutefont/README | 121 + .../contrib/substitutefont/artemisia-greek.sty | 23 + .../contrib/substitutefont/cyrillic-lm-lgc.pdf | Bin 0 -> 320118 bytes .../contrib/substitutefont/cyrillic-lm-lgc.tex | 90 + .../contrib/substitutefont/cyrillic-paratype.pdf | Bin 0 -> 261997 bytes .../contrib/substitutefont/cyrillic-paratype.tex | 98 + .../substitutefont/greek-palatino-didot.pdf | Bin 0 -> 522176 bytes .../substitutefont/greek-palatino-didot.tex | 91 + .../substitutefont/greek-times-artemisia.pdf | Bin 0 -> 613142 bytes .../substitutefont/greek-times-artemisia.tex | 75 + .../substitutefont/greek-times-freeserifb.pdf | Bin 0 -> 506602 bytes .../substitutefont/greek-times-freeserifb.tex | 73 + .../contrib/substitutefont/substitutefont-doc.html | 125 + .../contrib/substitutefont/substitutefont-test.pdf | Bin 0 -> 147378 bytes .../contrib/substitutefont/substitutefont-test.tex | 53 + .../contrib/substitutefont/substitutefont.sty | 81 + .../contrib/substitutefont/substitutefont.sty.html | 111 + .../substitutefont/test-artemisia-greek.pdf | Bin 0 -> 439218 bytes .../substitutefont/test-artemisia-greek.tex | 43 + .../latex/contrib/substitutefont/txfontsb-test.tex | 71 + timestamp | 2 +- 359 files changed, 7751 insertions(+), 8324 deletions(-) create mode 100644 macros/latex/contrib/panneauxroute/README.md create mode 100644 macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.pdf create mode 100644 macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.tex create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA14.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a2.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA16.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA17.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA18.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA19.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1d.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA20.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA21.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA23.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA24.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA4.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA6.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA7.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA8.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA9.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC107.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC108.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC111.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC112.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC113.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC114.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC115.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC116.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC12.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_2.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC18.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC207.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC208.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC23.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a4.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b2.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c2.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC27.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC3.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC30.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC5.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC50.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC6.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC62.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d2.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC8.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB0.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB10a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB11.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB12.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_110.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_130.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_15.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_30.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_50.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_70.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_90.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB15.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB16.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB17.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB19.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB31.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_110.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_130.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_15.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_30.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_50.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_70.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_90.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB35.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB39.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB4.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a2.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a3.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6d.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB8.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9d.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9e.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9f.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9g.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9h.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9i.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB2.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB25.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB4.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB5.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB6.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB7.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-2.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a2.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c2.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d2.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21e.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB25.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB26.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB29.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB40.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB41.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB42.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB43.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB44.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB45a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB49.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/PanneauxRoute.sty create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE1.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE10.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE12.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE14.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE16.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE17.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE18.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE19.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE21.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE22.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE23.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE24.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE25.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE26.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE27.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE28.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE29.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE3a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4c.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE50.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6a.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6b.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE7.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE8.pdf create mode 100644 macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE9.pdf delete mode 100644 macros/latex/contrib/profcollege/latex/PfCEcrireQCMold.tex create mode 100644 macros/latex/contrib/profcollege/latex/PfCMulArt.tex delete mode 100644 macros/latex/contrib/profcollege/latex/PfCStatistiquesold.tex delete mode 100644 macros/latex/contrib/profcollege/latex/PfCStatistiquesoldold.tex delete mode 100644 macros/latex/contrib/substitutefont/README delete mode 100644 macros/latex/contrib/substitutefont/cyrillic-lm-lgc.pdf delete mode 100644 macros/latex/contrib/substitutefont/cyrillic-lm-lgc.tex delete mode 100644 macros/latex/contrib/substitutefont/cyrillic-paratype.pdf delete mode 100644 macros/latex/contrib/substitutefont/cyrillic-paratype.tex delete mode 100644 macros/latex/contrib/substitutefont/greek-palatino-didot.pdf delete mode 100644 macros/latex/contrib/substitutefont/greek-palatino-didot.tex delete mode 100644 macros/latex/contrib/substitutefont/greek-times-artemisia.pdf delete mode 100644 macros/latex/contrib/substitutefont/greek-times-artemisia.tex delete mode 100644 macros/latex/contrib/substitutefont/substitutefont-doc.html delete mode 100644 macros/latex/contrib/substitutefont/substitutefont-test.pdf delete mode 100644 macros/latex/contrib/substitutefont/substitutefont-test.tex delete mode 100644 macros/latex/contrib/substitutefont/substitutefont.sty delete mode 100644 macros/latex/contrib/substitutefont/substitutefont.sty.html create mode 100644 obsolete/macros/latex/contrib/substitutefont/README create mode 100644 obsolete/macros/latex/contrib/substitutefont/artemisia-greek.sty create mode 100644 obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.pdf create mode 100644 obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.tex create mode 100644 obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.pdf create mode 100644 obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.tex create mode 100644 obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.pdf create mode 100644 obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.tex create mode 100644 obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.pdf create mode 100644 obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.tex create mode 100644 obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.pdf create mode 100644 obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.tex create mode 100644 obsolete/macros/latex/contrib/substitutefont/substitutefont-doc.html create mode 100644 obsolete/macros/latex/contrib/substitutefont/substitutefont-test.pdf create mode 100644 obsolete/macros/latex/contrib/substitutefont/substitutefont-test.tex create mode 100644 obsolete/macros/latex/contrib/substitutefont/substitutefont.sty create mode 100644 obsolete/macros/latex/contrib/substitutefont/substitutefont.sty.html create mode 100644 obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.pdf create mode 100644 obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.tex create mode 100644 obsolete/macros/latex/contrib/substitutefont/txfontsb-test.tex diff --git a/FILES.byname b/FILES.byname index 840c004995..77c4b29ba5 100644 --- a/FILES.byname +++ b/FILES.byname @@ -116,7 +116,7 @@ 2023/08/11 | 1448 | biblio/bibtex/bibtex-x/tests/bibtex8.test 2023/08/11 | 1632 | biblio/bibtex/bibtex-x/tests/bibtex8u-mem.test 2023/08/11 | 831 | biblio/bibtex/bibtex-x/tests/bibtexu-basic.test -2023/08/11 | 2194 | biblio/bibtex/bibtex-x/tests/bibtexu-char.test +2023/08/13 | 2193 | biblio/bibtex/bibtex-x/tests/bibtexu-char.test 2023/08/11 | 699 | biblio/bibtex/bibtex-x/tests/bibtexu-range.test 2023/08/11 | 970 | biblio/bibtex/bibtex-x/tests/bibtexu-sort.test 2023/08/11 | 1436 | biblio/bibtex/bibtex-x/tests/bibtexu.test @@ -204,7 +204,7 @@ 2023/07/15 | 94801 | biblio/bibtex/bibtex-x/utils.c 2022/04/29 | 5163 | biblio/bibtex/bibtex-x/utils.h 2023/07/15 | 3731 | biblio/bibtex/bibtex-x/version.h -2023/08/12 | 520500 | biblio/bibtex/bibtex-x.zip +2023/08/14 | 520504 | biblio/bibtex/bibtex-x.zip 1991/09/08 | 918 | biblio/bibtex/contrib/abstyles/a4c.sty 1991/09/28 | 1000 | biblio/bibtex/contrib/abstyles/a4c.tex 1992/05/25 | 17727 | biblio/bibtex/contrib/abstyles/aabbrv.bst @@ -2056,12 +2056,12 @@ 2023/07/04 | 1675 | biblio/citation-style-language/README.md 2023/07/04 | 12878 | biblio/citation-style-language/vancouver.csl 2023/07/04 | 4522435 | biblio/citation-style-language.zip -2023/08/13 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx +2023/08/14 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx 2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx -2023/08/13 | 2801499 | biblio/ctan-bibdata/ctan.bib -2023/08/13 | 3693129 | biblio/ctan-bibdata/ctan.pdf +2023/08/14 | 2801500 | biblio/ctan-bibdata/ctan.bib +2023/08/14 | 3695418 | biblio/ctan-bibdata/ctan.pdf 2023/01/16 | 1489 | biblio/ctan-bibdata/README -2023/08/13 | 4093819 | biblio/ctan-bibdata.zip +2023/08/14 | 4096458 | 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 @@ -5421,7 +5421,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/08/13 | 100359 | FILES.last07days +2023/08/14 | 104283 | 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 @@ -194023,7 +194023,7 @@ 2013/07/01 | 1898068 | install/macros/latex/contrib/mdframed.tds.zip 2022/10/12 | 211667 | install/macros/latex/contrib/media4svg.tds.zip 2022/08/04 | 7385937 | install/macros/latex/contrib/media9.tds.zip -2023/08/08 | 3623212 | install/macros/latex/contrib/memoir.tds.zip +2023/08/14 | 3609753 | install/macros/latex/contrib/memoir.tds.zip 2020/08/06 | 24409080 | install/macros/latex/contrib/mercatormap.tds.zip 2022/10/18 | 815562 | install/macros/latex/contrib/mfirstuc.tds.zip 2023/03/13 | 3010612 | install/macros/latex/contrib/microtype.tds.zip @@ -194149,7 +194149,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/06/19 | 1681297 | install/macros/latex/contrib/zref-clever.tds.zip +2023/08/14 | 1675347 | 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 @@ -227844,27 +227844,27 @@ 2017/07/11 | 1480 | macros/latex/contrib/lettre/testfaxe.tex 2019/05/15 | 4894 | macros/latex/contrib/lettre/testfaxf.tex 2020/04/13 | 1084282 | macros/latex/contrib/lettre.zip -2023/07/04 | 1055 | macros/latex/contrib/lettrine/contrib/lettrine-optfile.cfl -2023/07/04 | 5136 | macros/latex/contrib/lettrine/contrib/lettrine-pacl.cfl -2023/07/04 | 5159 | macros/latex/contrib/lettrine/contrib/lettrine-padl.cfl -2023/07/04 | 3961 | macros/latex/contrib/lettrine/contrib/lettrine-pzc2.cfl -2023/07/04 | 4165 | macros/latex/contrib/lettrine/contrib/lettrine-pzc3.cfl -2023/07/04 | 128252 | macros/latex/contrib/lettrine/doc/lettrine-demo-de.pdf -2023/07/04 | 9741 | macros/latex/contrib/lettrine/doc/lettrine-demo-de.tex -2023/07/04 | 168279 | macros/latex/contrib/lettrine/doc/lettrine-demo-fr.pdf -2023/07/04 | 13607 | macros/latex/contrib/lettrine/doc/lettrine-demo-fr.tex -2023/07/04 | 74185 | macros/latex/contrib/lettrine/doc/lettrine-demo-lua.pdf -2023/07/04 | 4298 | macros/latex/contrib/lettrine/doc/lettrine-demo-lua.tex -2023/07/04 | 125776 | macros/latex/contrib/lettrine/doc/lettrine.pdf -2023/07/04 | 14470 | macros/latex/contrib/lettrine/doc/W.pdf -2023/07/04 | 6679 | macros/latex/contrib/lettrine/lettrine-2006-03-17.sty -2023/07/04 | 8127 | macros/latex/contrib/lettrine/lettrine-2015-08-31.sty -2023/07/04 | 9119 | macros/latex/contrib/lettrine/lettrine-2018-08-18.sty -2023/07/04 | 10337 | macros/latex/contrib/lettrine/lettrine-2022-09-25.sty -2023/07/04 | 9682 | macros/latex/contrib/lettrine/lettrine-2023-04-18.sty -2023/07/04 | 47458 | macros/latex/contrib/lettrine/lettrine.dtx -2023/07/04 | 1552 | macros/latex/contrib/lettrine/README.md -2023/07/04 | 520683 | macros/latex/contrib/lettrine.zip +2023/08/14 | 1055 | macros/latex/contrib/lettrine/contrib/lettrine-optfile.cfl +2023/08/14 | 5136 | macros/latex/contrib/lettrine/contrib/lettrine-pacl.cfl +2023/08/14 | 5159 | macros/latex/contrib/lettrine/contrib/lettrine-padl.cfl +2023/08/14 | 3961 | macros/latex/contrib/lettrine/contrib/lettrine-pzc2.cfl +2023/08/14 | 4165 | macros/latex/contrib/lettrine/contrib/lettrine-pzc3.cfl +2023/08/14 | 128252 | macros/latex/contrib/lettrine/doc/lettrine-demo-de.pdf +2023/08/14 | 9741 | macros/latex/contrib/lettrine/doc/lettrine-demo-de.tex +2023/08/14 | 168279 | macros/latex/contrib/lettrine/doc/lettrine-demo-fr.pdf +2023/08/14 | 13607 | macros/latex/contrib/lettrine/doc/lettrine-demo-fr.tex +2023/08/14 | 74185 | macros/latex/contrib/lettrine/doc/lettrine-demo-lua.pdf +2023/08/14 | 4298 | macros/latex/contrib/lettrine/doc/lettrine-demo-lua.tex +2023/08/14 | 126080 | macros/latex/contrib/lettrine/doc/lettrine.pdf +2023/08/14 | 14470 | macros/latex/contrib/lettrine/doc/W.pdf +2023/08/14 | 6679 | macros/latex/contrib/lettrine/lettrine-2006-03-17.sty +2023/08/14 | 8127 | macros/latex/contrib/lettrine/lettrine-2015-08-31.sty +2023/08/14 | 9119 | macros/latex/contrib/lettrine/lettrine-2018-08-18.sty +2023/08/14 | 10337 | macros/latex/contrib/lettrine/lettrine-2022-09-25.sty +2023/08/14 | 9682 | macros/latex/contrib/lettrine/lettrine-2023-04-18.sty +2023/08/14 | 47622 | macros/latex/contrib/lettrine/lettrine.dtx +2023/08/14 | 1552 | macros/latex/contrib/lettrine/README.md +2023/08/14 | 521230 | macros/latex/contrib/lettrine.zip 1995/05/17 | 15851 | macros/latex/contrib/levy/levy.dtx 1995/05/17 | 3256 | macros/latex/contrib/levy/levy.ins 2005/04/30 | 7287 | macros/latex/contrib/levy.zip @@ -229049,25 +229049,25 @@ 2008/03/20 | 13908 | macros/latex/contrib/memexsupp/memexsupp.tex 2008/03/20 | 1336 | macros/latex/contrib/memexsupp/README 2008/03/20 | 123432 | macros/latex/contrib/memexsupp.zip -2023/08/08 | 1518 | macros/latex/contrib/memoir/doc-src/anvil2.mps -2023/08/08 | 206 | macros/latex/contrib/memoir/doc-src/Makeidxglo -2023/08/08 | 5519 | macros/latex/contrib/memoir/doc-src/memfonts.sty -2023/08/08 | 14597 | macros/latex/contrib/memoir/doc-src/memlays.sty -2023/08/08 | 432 | macros/latex/contrib/memoir/doc-src/memman.gst -2023/08/08 | 389 | macros/latex/contrib/memoir/doc-src/memman.ist -2023/08/08 | 1520265 | macros/latex/contrib/memoir/doc-src/memman.tex -2023/08/08 | 7423 | macros/latex/contrib/memoir/doc-src/memnoidxnum.tex -2023/08/08 | 42311 | macros/latex/contrib/memoir/doc-src/memsty.sty -2023/08/08 | 203838 | macros/latex/contrib/memoir/doc-src/setpage-example.pdf -2023/08/08 | 17396 | macros/latex/contrib/memoir/doc-src/titlepages.sty -2023/08/08 | 586 | macros/latex/contrib/memoir/doc-src/trims-example.tex -2023/08/08 | 2845232 | macros/latex/contrib/memoir/memman.pdf -2023/08/08 | 1122850 | macros/latex/contrib/memoir/memoir.dtx -2023/08/08 | 3977 | macros/latex/contrib/memoir/memoir.ins -2023/08/08 | 36627 | macros/latex/contrib/memoir/mempatch.dtx -2023/08/08 | 2852 | macros/latex/contrib/memoir/mempatch.ins -2023/08/08 | 52303 | macros/latex/contrib/memoir/README -2023/08/08 | 3522153 | macros/latex/contrib/memoir.zip +2023/08/14 | 1518 | macros/latex/contrib/memoir/doc-src/anvil2.mps +2023/08/14 | 206 | macros/latex/contrib/memoir/doc-src/Makeidxglo +2023/08/14 | 5519 | macros/latex/contrib/memoir/doc-src/memfonts.sty +2023/08/14 | 14597 | macros/latex/contrib/memoir/doc-src/memlays.sty +2023/08/14 | 432 | macros/latex/contrib/memoir/doc-src/memman.gst +2023/08/14 | 389 | macros/latex/contrib/memoir/doc-src/memman.ist +2023/08/14 | 1542304 | macros/latex/contrib/memoir/doc-src/memman.tex +2023/08/14 | 7423 | macros/latex/contrib/memoir/doc-src/memnoidxnum.tex +2023/08/14 | 42378 | macros/latex/contrib/memoir/doc-src/memsty.sty +2023/08/14 | 203838 | macros/latex/contrib/memoir/doc-src/setpage-example.pdf +2023/08/14 | 17396 | macros/latex/contrib/memoir/doc-src/titlepages.sty +2023/08/14 | 586 | macros/latex/contrib/memoir/doc-src/trims-example.tex +2023/08/14 | 2826438 | macros/latex/contrib/memoir/memman.pdf +2023/08/14 | 1123032 | macros/latex/contrib/memoir/memoir.dtx +2023/08/14 | 3977 | macros/latex/contrib/memoir/memoir.ins +2023/08/14 | 36627 | macros/latex/contrib/memoir/mempatch.dtx +2023/08/14 | 2852 | macros/latex/contrib/memoir/mempatch.ins +2023/08/14 | 52462 | macros/latex/contrib/memoir/README +2023/08/14 | 3508696 | macros/latex/contrib/memoir.zip 2013/05/13 | 5708 | macros/latex/contrib/memory/memory.dtx 2013/05/10 | 1942 | macros/latex/contrib/memory/memory.ins 2013/05/13 | 30008 | macros/latex/contrib/memory/memory.pdf @@ -230572,15 +230572,15 @@ 1996/03/22 | 18862 | macros/latex/contrib/niceframe/umrandb.mf 2015/01/17 | 1370 | macros/latex/contrib/niceframe/umrand.mf 2015/01/17 | 287910 | macros/latex/contrib/niceframe.zip -2023/07/17 | 556612 | macros/latex/contrib/nicematrix/nicematrix-code.dtx -2023/07/17 | 918695 | macros/latex/contrib/nicematrix/nicematrix-code.pdf -2023/07/17 | 580394 | macros/latex/contrib/nicematrix/nicematrix-french.pdf -2023/07/14 | 238561 | macros/latex/contrib/nicematrix/nicematrix-french.tex -2023/07/14 | 1428 | macros/latex/contrib/nicematrix/nicematrix.ins -2023/07/17 | 598471 | macros/latex/contrib/nicematrix/nicematrix.pdf -2023/07/14 | 248977 | macros/latex/contrib/nicematrix/nicematrix.tex +2023/08/14 | 571811 | macros/latex/contrib/nicematrix/nicematrix-code.dtx +2023/08/14 | 939983 | macros/latex/contrib/nicematrix/nicematrix-code.pdf +2023/08/14 | 584003 | macros/latex/contrib/nicematrix/nicematrix-french.pdf +2023/08/14 | 240540 | macros/latex/contrib/nicematrix/nicematrix-french.tex +2023/08/14 | 1428 | macros/latex/contrib/nicematrix/nicematrix.ins +2023/08/14 | 602607 | macros/latex/contrib/nicematrix/nicematrix.pdf +2023/08/14 | 250272 | macros/latex/contrib/nicematrix/nicematrix.tex 2023/05/15 | 1028 | macros/latex/contrib/nicematrix/README.md -2023/07/17 | 2268187 | macros/latex/contrib/nicematrix.zip +2023/08/14 | 2300862 | macros/latex/contrib/nicematrix.zip 2015/11/21 | 217 | macros/latex/contrib/nicetext/ANNOUNCE.txt 2012/03/18 | 254582 | macros/latex/contrib/nicetext/demo/arseneau.pdf 2011/09/14 | 10 | macros/latex/contrib/nicetext/demo/iso.txt @@ -231531,6 +231531,220 @@ 2023/03/02 | 105320 | macros/latex/contrib/pangram/pangram.pdf 2023/03/02 | 441 | macros/latex/contrib/pangram/README.md 2023/03/02 | 106070 | macros/latex/contrib/pangram.zip +2023/08/14 | 670553 | macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.pdf +2023/08/14 | 47803 | macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.tex +2023/08/14 | 753 | macros/latex/contrib/panneauxroute/README.md +2023/08/12 | 2270 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13a.pdf +2023/08/12 | 2644 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13b.pdf +2023/08/12 | 1705 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA14.pdf +2023/08/12 | 1937 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a1.pdf +2023/08/12 | 2124 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a2.pdf +2023/08/12 | 2470 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15b.pdf +2023/08/12 | 2152 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15c.pdf +2023/08/12 | 3884 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA16.pdf +2023/08/12 | 1769 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA17.pdf +2023/08/12 | 1577 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA18.pdf +2023/08/12 | 1891 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA19.pdf +2023/08/12 | 1607 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1a.pdf +2023/08/12 | 1596 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1b.pdf +2023/08/12 | 1624 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1c.pdf +2023/08/12 | 1627 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1d.pdf +2023/08/12 | 2247 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA20.pdf +2023/08/12 | 3036 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA21.pdf +2023/08/12 | 1656 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA23.pdf +2023/08/12 | 2041 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA24.pdf +2023/08/12 | 1669 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2a.pdf +2023/08/12 | 1589 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2b.pdf +2023/08/12 | 1543 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3a.pdf +2023/08/12 | 1540 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3b.pdf +2023/08/12 | 1565 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3.pdf +2023/08/12 | 4117 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA4.pdf +2023/08/12 | 2046 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA6.pdf +2023/08/12 | 1842 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA7.pdf +2023/08/12 | 4457 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA8.pdf +2023/08/12 | 2549 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA9.pdf +2023/08/12 | 1634 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC107.pdf +2023/08/12 | 1707 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC108.pdf +2023/08/12 | 1646 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC111.pdf +2023/08/12 | 1702 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC112.pdf +2023/08/12 | 2418 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC113.pdf +2023/08/12 | 2458 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC114.pdf +2023/08/12 | 2461 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC115.pdf +2023/08/12 | 2525 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC116.pdf +2023/08/12 | 1444 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC12.pdf +2023/08/12 | 1388 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13a.pdf +2023/08/12 | 1393 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13b.pdf +2023/08/12 | 9134 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_1.pdf +2023/08/12 | 18670 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_2.pdf +2023/08/12 | 1484 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC18.pdf +2023/08/12 | 1440 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1a.pdf +2023/08/12 | 1631 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1b.pdf +2023/08/12 | 2212 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1c.pdf +2023/08/12 | 1510 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC207.pdf +2023/08/12 | 1584 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC208.pdf +2023/08/12 | 2526 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20a.pdf +2023/08/12 | 2059 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20c.pdf +2023/08/12 | 18555 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC23.pdf +2023/08/12 | 2242 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a1.pdf +2023/08/12 | 2207 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a4.pdf +2023/08/12 | 1464 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b1.pdf +2023/08/12 | 1502 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b2.pdf +2023/08/12 | 1968 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c1.pdf +2023/08/12 | 2503 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c2.pdf +2023/08/12 | 8028 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25a.pdf +2023/08/12 | 6415 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25b.pdf +2023/08/12 | 1538 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26a.pdf +2023/08/12 | 1537 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26b.pdf +2023/08/12 | 1428 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC27.pdf +2023/08/12 | 1427 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28a.pdf +2023/08/12 | 1463 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28b.pdf +2023/08/12 | 1566 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29a.pdf +2023/08/12 | 1475 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29b.pdf +2023/08/12 | 1487 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC30.pdf +2023/08/12 | 6956 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC3.pdf +2023/08/12 | 2865 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4a.pdf +2023/08/12 | 2923 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4b.pdf +2023/08/12 | 6610 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC50.pdf +2023/08/12 | 2414 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC5.pdf +2023/08/12 | 3478 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC62.pdf +2023/08/12 | 2000 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64a.pdf +2023/08/12 | 1663 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64b.pdf +2023/08/12 | 3779 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64c.pdf +2023/08/12 | 1461 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d1.pdf +2023/08/12 | 1525 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d2.pdf +2023/08/12 | 1867 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC6.pdf +2023/08/12 | 1504 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC8.pdf +2023/08/12 | 1299 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB0.pdf +2023/08/12 | 3205 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB10a.pdf +2023/08/12 | 2706 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB11.pdf +2023/08/12 | 3058 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB12.pdf +2023/08/12 | 4830 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13a.pdf +2023/08/12 | 2427 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13.pdf +2023/08/12 | 2670 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_110.pdf +2023/08/12 | 3430 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_130.pdf +2023/08/12 | 1945 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_15.pdf +2023/08/12 | 3338 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_30.pdf +2023/08/12 | 2895 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_50.pdf +2023/08/12 | 2544 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_70.pdf +2023/08/12 | 2962 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_90.pdf +2023/08/12 | 1417 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB15.pdf +2023/08/12 | 1590 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB16.pdf +2023/08/12 | 3096 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB17.pdf +2023/08/12 | 2205 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18a.pdf +2023/08/12 | 1949 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18b.pdf +2023/08/12 | 1655 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18c.pdf +2023/08/12 | 5662 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB19.pdf +2023/08/12 | 1287 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB1.pdf +2023/08/12 | 1599 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2a.pdf +2023/08/12 | 1577 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2b.pdf +2023/08/12 | 1628 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2c.pdf +2023/08/12 | 1355 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB31.pdf +2023/08/12 | 3914 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_110.pdf +2023/08/12 | 4678 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_130.pdf +2023/08/12 | 2823 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_15.pdf +2023/08/12 | 5335 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_30.pdf +2023/08/12 | 4444 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_50.pdf +2023/08/12 | 3990 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_70.pdf +2023/08/12 | 4358 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_90.pdf +2023/08/12 | 2482 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34a.pdf +2023/08/12 | 2700 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34.pdf +2023/08/12 | 2268 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB35.pdf +2023/08/12 | 6692 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB39.pdf +2023/08/12 | 2217 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3a.pdf +2023/08/12 | 1874 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3.pdf +2023/08/12 | 5574 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB4.pdf +2023/08/12 | 3274 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5a.pdf +2023/08/12 | 3016 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5b.pdf +2023/08/12 | 2661 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5c.pdf +2023/08/12 | 1586 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a1.pdf +2023/08/12 | 2264 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a2.pdf +2023/08/12 | 3165 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a3.pdf +2023/08/12 | 8755 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6d.pdf +2023/08/12 | 2567 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7a.pdf +2023/08/12 | 3485 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7b.pdf +2023/08/12 | 1910 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB8.pdf +2023/08/12 | 1676 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9a.pdf +2023/08/12 | 2397 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9b.pdf +2023/08/12 | 2055 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9c.pdf +2023/08/12 | 1750 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9d.pdf +2023/08/12 | 2424 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9e.pdf +2023/08/12 | 1857 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9f.pdf +2023/08/12 | 2158 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9g.pdf +2023/08/12 | 2815 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9h.pdf +2023/08/12 | 3178 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9i.pdf +2023/08/12 | 1546 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB1.pdf +2023/08/12 | 1798 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB25.pdf +2023/08/12 | 1543 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB2.pdf +2023/08/12 | 6621 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3a.pdf +2023/08/12 | 3542 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3b.pdf +2023/08/12 | 2884 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB4.pdf +2023/08/12 | 5069 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB5.pdf +2023/08/12 | 1370 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB6.pdf +2023/08/12 | 1524 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB7.pdf +2023/08/12 | 1298 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-1.pdf +2023/08/12 | 1306 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-2.pdf +2023/08/12 | 1311 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a1.pdf +2023/08/12 | 1335 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a2.pdf +2023/08/12 | 1332 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21b.pdf +2023/08/12 | 1415 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c1.pdf +2023/08/12 | 1432 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c2.pdf +2023/08/12 | 1451 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d1.pdf +2023/08/12 | 1488 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d2.pdf +2023/08/12 | 1491 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21e.pdf +2023/08/12 | 2335 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22a.pdf +2023/08/12 | 2757 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22b.pdf +2023/08/12 | 3210 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22c.pdf +2023/08/12 | 3296 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB25.pdf +2023/08/12 | 10223 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB26.pdf +2023/08/12 | 1776 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27a.pdf +2023/08/12 | 2668 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27b.pdf +2023/08/12 | 3527 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB29.pdf +2023/08/12 | 2445 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB40.pdf +2023/08/12 | 2877 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB41.pdf +2023/08/12 | 1984 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB42.pdf +2023/08/12 | 3347 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB43.pdf +2023/08/12 | 11003 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB44.pdf +2023/08/12 | 1925 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB45a.pdf +2023/08/12 | 4144 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB49.pdf +2023/08/14 | 14980 | macros/latex/contrib/panneauxroute/tex/PanneauxRoute.sty +2023/08/12 | 2787 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE10.pdf +2023/08/12 | 2264 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE12.pdf +2023/08/12 | 1720 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE14.pdf +2023/08/12 | 1615 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15a.pdf +2023/08/12 | 2494 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15c.pdf +2023/08/12 | 1866 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE16.pdf +2023/08/12 | 1675 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE17.pdf +2023/08/12 | 1528 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE18.pdf +2023/08/12 | 2336 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE19.pdf +2023/08/12 | 1403 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE1.pdf +2023/08/12 | 2004 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20a.pdf +2023/08/12 | 2376 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20b.pdf +2023/08/12 | 1603 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE21.pdf +2023/08/12 | 2919 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE22.pdf +2023/08/12 | 2295 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE23.pdf +2023/08/12 | 2367 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE24.pdf +2023/08/12 | 3459 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE25.pdf +2023/08/12 | 2823 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE26.pdf +2023/08/12 | 1903 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE27.pdf +2023/08/12 | 1636 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE28.pdf +2023/08/12 | 1669 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE29.pdf +2023/08/12 | 3815 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2a.pdf +2023/08/12 | 1815 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2b.pdf +2023/08/12 | 2567 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30a.pdf +2023/08/12 | 2555 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30b.pdf +2023/08/12 | 1546 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE3a.pdf +2023/08/12 | 1490 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4a.pdf +2023/08/12 | 1898 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4b.pdf +2023/08/12 | 2127 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4c.pdf +2023/08/12 | 7626 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE50.pdf +2023/08/12 | 1986 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5a.pdf +2023/08/12 | 1671 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5b.pdf +2023/08/12 | 2069 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6a.pdf +2023/08/12 | 1997 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6b.pdf +2023/08/12 | 1732 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE7.pdf +2023/08/12 | 2002 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE8.pdf +2023/08/12 | 1867 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE9.pdf +2023/08/14 | 1139969 | macros/latex/contrib/panneauxroute.zip 2006/08/07 | 477 | macros/latex/contrib/papercdcase/example.tex 2006/08/07 | 3107 | macros/latex/contrib/papercdcase/interactive.tex 2006/08/07 | 43207 | macros/latex/contrib/papercdcase/papercdcase.dtx @@ -233194,132 +233408,130 @@ 2022/05/05 | 80898 | macros/latex/contrib/prociagssymp/TestprocIAGssymp.pdf 2022/05/05 | 6335 | macros/latex/contrib/prociagssymp/TestprocIAGssymp.tex 2022/05/06 | 86110 | macros/latex/contrib/prociagssymp.zip -2023/08/01 | 9123899 | macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf -2023/08/01 | 2248866 | macros/latex/contrib/profcollege/doc/ProfCollege-doc.zip -2023/07/30 | 11046 | macros/latex/contrib/profcollege/latex/PfCAutomatismes.tex -2023/07/30 | 10951 | macros/latex/contrib/profcollege/latex/PfCAutonomie.tex -2023/07/30 | 2939 | macros/latex/contrib/profcollege/latex/PfCBarreNiveaux.tex -2023/07/30 | 3431 | macros/latex/contrib/profcollege/latex/PfCBarresCalculs.tex -2023/07/30 | 8271 | macros/latex/contrib/profcollege/latex/PfCBillard.tex -2023/07/30 | 2072 | macros/latex/contrib/profcollege/latex/PfCBonSortie.tex -2023/07/30 | 4387 | macros/latex/contrib/profcollege/latex/PfCCalculatrice.tex -2023/07/30 | 14927 | macros/latex/contrib/profcollege/latex/PfCCalculsCroises.tex -2023/07/30 | 6465 | macros/latex/contrib/profcollege/latex/PfCCalculsFractions.tex -2023/07/30 | 7230 | macros/latex/contrib/profcollege/latex/PfCCalisson.tex -2023/07/30 | 14262 | macros/latex/contrib/profcollege/latex/PfCCAN.tex -2023/07/30 | 25670 | macros/latex/contrib/profcollege/latex/PfCCartesJeux.tex -2023/07/30 | 1528 | macros/latex/contrib/profcollege/latex/PfCCartesMentales.tex -2023/07/30 | 9724 | macros/latex/contrib/profcollege/latex/PfCCartographie.tex -2023/07/30 | 7497 | macros/latex/contrib/profcollege/latex/PfCCible.tex -2023/07/30 | 7088 | macros/latex/contrib/profcollege/latex/PfCColorilude.tex -2023/07/30 | 11255 | macros/latex/contrib/profcollege/latex/PfCCompteBon.tex -2023/07/30 | 9898 | macros/latex/contrib/profcollege/latex/PfCDecDeci.tex -2023/07/30 | 3618 | macros/latex/contrib/profcollege/latex/PfCDecompFracDeci.tex -2023/07/30 | 23117 | macros/latex/contrib/profcollege/latex/PfCDecomposerNombrePremier.tex -2023/07/30 | 10479 | macros/latex/contrib/profcollege/latex/PfCDefiTables.tex -2023/07/30 | 14131 | macros/latex/contrib/profcollege/latex/PfCDessinerRatio.tex -2023/07/30 | 7962 | macros/latex/contrib/profcollege/latex/PfCDessinGradue.tex -2023/07/30 | 4664 | macros/latex/contrib/profcollege/latex/PfCDiagrammeRadar.tex -2023/07/30 | 58615 | macros/latex/contrib/profcollege/latex/PfCDistributivite.tex +2023/08/13 | 9105909 | macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf +2023/08/13 | 2253549 | macros/latex/contrib/profcollege/doc/profcollege-doc.zip +2023/08/11 | 11046 | macros/latex/contrib/profcollege/latex/PfCAutomatismes.tex +2023/08/11 | 10951 | macros/latex/contrib/profcollege/latex/PfCAutonomie.tex +2023/08/11 | 2939 | macros/latex/contrib/profcollege/latex/PfCBarreNiveaux.tex +2023/08/11 | 3431 | macros/latex/contrib/profcollege/latex/PfCBarresCalculs.tex +2023/08/11 | 8271 | macros/latex/contrib/profcollege/latex/PfCBillard.tex +2023/08/11 | 2072 | macros/latex/contrib/profcollege/latex/PfCBonSortie.tex +2023/08/11 | 4441 | macros/latex/contrib/profcollege/latex/PfCCalculatrice.tex +2023/08/11 | 12069 | macros/latex/contrib/profcollege/latex/PfCCalculsCroises.tex +2023/08/11 | 6465 | macros/latex/contrib/profcollege/latex/PfCCalculsFractions.tex +2023/08/11 | 8870 | macros/latex/contrib/profcollege/latex/PfCCalisson.tex +2023/08/11 | 14262 | macros/latex/contrib/profcollege/latex/PfCCAN.tex +2023/08/11 | 25670 | macros/latex/contrib/profcollege/latex/PfCCartesJeux.tex +2023/08/11 | 1528 | macros/latex/contrib/profcollege/latex/PfCCartesMentales.tex +2023/08/13 | 10129 | macros/latex/contrib/profcollege/latex/PfCCartographie.tex +2023/08/11 | 7497 | macros/latex/contrib/profcollege/latex/PfCCible.tex +2023/08/11 | 7088 | macros/latex/contrib/profcollege/latex/PfCColorilude.tex +2023/08/11 | 11255 | macros/latex/contrib/profcollege/latex/PfCCompteBon.tex +2023/08/11 | 9898 | macros/latex/contrib/profcollege/latex/PfCDecDeci.tex +2023/08/11 | 3618 | macros/latex/contrib/profcollege/latex/PfCDecompFracDeci.tex +2023/08/11 | 23237 | macros/latex/contrib/profcollege/latex/PfCDecomposerNombrePremier.tex +2023/08/11 | 10479 | macros/latex/contrib/profcollege/latex/PfCDefiTables.tex +2023/08/11 | 14131 | macros/latex/contrib/profcollege/latex/PfCDessinerRatio.tex +2023/08/11 | 7962 | macros/latex/contrib/profcollege/latex/PfCDessinGradue.tex +2023/08/11 | 4664 | macros/latex/contrib/profcollege/latex/PfCDiagrammeRadar.tex +2023/08/11 | 58611 | macros/latex/contrib/profcollege/latex/PfCDistributivite.tex 2023/08/01 | 2734 | macros/latex/contrib/profcollege/latex/PfCdobble.lua -2023/08/01 | 831 | macros/latex/contrib/profcollege/latex/PfCDobble.tex -2023/07/30 | 4117 | macros/latex/contrib/profcollege/latex/PfCDomino.tex -2023/07/04 | 9420 | macros/latex/contrib/profcollege/latex/PfCEcrireQCMold.tex -2023/07/30 | 9326 | macros/latex/contrib/profcollege/latex/PfCEcrireunQCM.tex -2023/07/30 | 2470 | macros/latex/contrib/profcollege/latex/PfCEcritureLettres.tex -2023/07/30 | 13189 | macros/latex/contrib/profcollege/latex/PfCEcritureUnites.tex -2023/07/30 | 2019 | macros/latex/contrib/profcollege/latex/PfCEngrenagesBase.tex -2023/07/30 | 10633 | macros/latex/contrib/profcollege/latex/PfCEnigmeAire.tex -2023/07/30 | 3765 | macros/latex/contrib/profcollege/latex/PfCEnquete.tex +2023/08/11 | 831 | macros/latex/contrib/profcollege/latex/PfCDobble.tex +2023/08/11 | 4113 | macros/latex/contrib/profcollege/latex/PfCDomino.tex +2023/08/11 | 9326 | macros/latex/contrib/profcollege/latex/PfCEcrireunQCM.tex +2023/08/11 | 2470 | macros/latex/contrib/profcollege/latex/PfCEcritureLettres.tex +2023/08/11 | 13187 | macros/latex/contrib/profcollege/latex/PfCEcritureUnites.tex +2023/08/11 | 2013 | macros/latex/contrib/profcollege/latex/PfCEngrenagesBase.tex +2023/08/11 | 10633 | macros/latex/contrib/profcollege/latex/PfCEnigmeAire.tex +2023/08/11 | 3765 | macros/latex/contrib/profcollege/latex/PfCEnquete.tex 2023/06/23 | 23478 | macros/latex/contrib/profcollege/latex/PfCEquationComposition2.tex 2023/06/23 | 19350 | macros/latex/contrib/profcollege/latex/PfCEquationLaurent1.tex 2023/06/23 | 20438 | macros/latex/contrib/profcollege/latex/PfCEquationPose1.tex 2023/06/23 | 27165 | macros/latex/contrib/profcollege/latex/PfCEquationSoustraction2.tex 2023/06/23 | 15309 | macros/latex/contrib/profcollege/latex/PfCEquationSymbole1.tex 2023/06/23 | 22791 | macros/latex/contrib/profcollege/latex/PfCEquationTerme1.tex -2023/07/30 | 3800 | macros/latex/contrib/profcollege/latex/PfCErathostene.tex -2023/07/30 | 15072 | macros/latex/contrib/profcollege/latex/PfCFactorisation.tex -2023/07/30 | 3280 | macros/latex/contrib/profcollege/latex/PfCFicheMemo.tex -2023/07/30 | 15861 | macros/latex/contrib/profcollege/latex/PfCFonctionAffine.tex -2023/07/30 | 7244 | macros/latex/contrib/profcollege/latex/PfCFrise.tex -2023/07/30 | 4692 | macros/latex/contrib/profcollege/latex/PfCFutoshiki.tex -2023/07/30 | 2155 | macros/latex/contrib/profcollege/latex/PfCGaram.tex -2023/07/30 | 1596 | macros/latex/contrib/profcollege/latex/PfCGeometrie.tex -2023/07/30 | 2285 | macros/latex/contrib/profcollege/latex/PfCGrades.tex -2023/07/30 | 6941 | macros/latex/contrib/profcollege/latex/PfCGrimuku.tex -2023/07/30 | 2211 | macros/latex/contrib/profcollege/latex/PfCHiddenMessage.tex -2023/07/30 | 7105 | macros/latex/contrib/profcollege/latex/PfCHorloge.tex -2023/07/30 | 3806 | macros/latex/contrib/profcollege/latex/PfCJeuRangement.tex -2023/07/30 | 2605 | macros/latex/contrib/profcollege/latex/PfCKakurasu.tex -2023/07/30 | 2276 | macros/latex/contrib/profcollege/latex/PfCKakuro.tex -2023/07/30 | 3835 | macros/latex/contrib/profcollege/latex/PfCKenKen.tex -2023/07/30 | 9427 | macros/latex/contrib/profcollege/latex/PfCLabyrintheJeu.tex -2023/07/30 | 29330 | macros/latex/contrib/profcollege/latex/PfCLabyrintheNombre.tex +2023/08/11 | 3798 | macros/latex/contrib/profcollege/latex/PfCErathostene.tex +2023/08/11 | 15072 | macros/latex/contrib/profcollege/latex/PfCFactorisation.tex +2023/08/11 | 3280 | macros/latex/contrib/profcollege/latex/PfCFicheMemo.tex +2023/08/11 | 15861 | macros/latex/contrib/profcollege/latex/PfCFonctionAffine.tex +2023/08/11 | 7244 | macros/latex/contrib/profcollege/latex/PfCFrise.tex +2023/08/11 | 4692 | macros/latex/contrib/profcollege/latex/PfCFutoshiki.tex +2023/08/11 | 2155 | macros/latex/contrib/profcollege/latex/PfCGaram.tex +2023/08/11 | 1596 | macros/latex/contrib/profcollege/latex/PfCGeometrie.tex +2023/08/11 | 2285 | macros/latex/contrib/profcollege/latex/PfCGrades.tex +2023/08/11 | 6941 | macros/latex/contrib/profcollege/latex/PfCGrimuku.tex +2023/08/11 | 2211 | macros/latex/contrib/profcollege/latex/PfCHiddenMessage.tex +2023/08/11 | 7105 | macros/latex/contrib/profcollege/latex/PfCHorloge.tex +2023/08/11 | 3806 | macros/latex/contrib/profcollege/latex/PfCJeuRangement.tex +2023/08/11 | 2605 | macros/latex/contrib/profcollege/latex/PfCKakurasu.tex +2023/08/11 | 2276 | macros/latex/contrib/profcollege/latex/PfCKakuro.tex +2023/08/11 | 3835 | macros/latex/contrib/profcollege/latex/PfCKenKen.tex +2023/08/11 | 9427 | macros/latex/contrib/profcollege/latex/PfCLabyrintheJeu.tex +2023/08/11 | 29357 | macros/latex/contrib/profcollege/latex/PfCLabyrintheNombre.tex 2023/08/01 | 54466 | macros/latex/contrib/profcollege/latex/PfCLogoNumberHive.png -2023/07/30 | 2942 | macros/latex/contrib/profcollege/latex/PfCMentalo.tex -2023/07/30 | 5365 | macros/latex/contrib/profcollege/latex/PfCMidpoint.tex -2023/07/30 | 10548 | macros/latex/contrib/profcollege/latex/PfCModeleBarre.tex -2023/07/30 | 4548 | macros/latex/contrib/profcollege/latex/PfCMosaique.tex -2023/07/30 | 2815 | macros/latex/contrib/profcollege/latex/PfCMotsCodes.tex -2023/07/30 | 2222 | macros/latex/contrib/profcollege/latex/PfCMotsCroises.tex -2023/07/30 | 1862 | macros/latex/contrib/profcollege/latex/PfCMotsEmpiles.tex -2023/07/30 | 4125 | macros/latex/contrib/profcollege/latex/PfCMulPiecesPuzzle.tex -2023/07/30 | 7051 | macros/latex/contrib/profcollege/latex/PfCNombreAstral.tex -2023/07/30 | 14120 | macros/latex/contrib/profcollege/latex/PfCNonogramme.tex -2023/07/30 | 38866 | macros/latex/contrib/profcollege/latex/PfCNotionFonction.tex -2023/07/30 | 12062 | macros/latex/contrib/profcollege/latex/PfCNumberHive.tex -2023/07/30 | 5591 | macros/latex/contrib/profcollege/latex/PfCOperationsTrou.tex -2023/07/30 | 10168 | macros/latex/contrib/profcollege/latex/PfCPapiers.tex -2023/07/30 | 5824 | macros/latex/contrib/profcollege/latex/PfCPatronPaves.tex -2023/07/30 | 25681 | macros/latex/contrib/profcollege/latex/PfCPavageAvecMotifImage.tex -2023/07/30 | 35829 | macros/latex/contrib/profcollege/latex/PfCPavage.tex -2023/07/30 | 4138 | macros/latex/contrib/profcollege/latex/PfCPixelArt.tex -2023/07/30 | 8166 | macros/latex/contrib/profcollege/latex/PfCPourcentage.tex -2023/07/30 | 7733 | macros/latex/contrib/profcollege/latex/PfCProbabilites.tex -2023/07/30 | 6260 | macros/latex/contrib/profcollege/latex/PfCProgrammeCalcul.tex -2023/07/30 | 15405 | macros/latex/contrib/profcollege/latex/PfCPropor.tex -2023/07/30 | 11026 | macros/latex/contrib/profcollege/latex/PfCProprietesDroites.tex -2023/07/30 | 7072 | macros/latex/contrib/profcollege/latex/PfCPuissanceQuatre.tex -2023/07/30 | 7102 | macros/latex/contrib/profcollege/latex/PfCPuzzleSommePyramide.tex -2023/07/30 | 9400 | macros/latex/contrib/profcollege/latex/PfCPyramideCalculs.tex -2023/07/30 | 1287 | macros/latex/contrib/profcollege/latex/PfCPyraVoca.tex -2023/07/30 | 26408 | macros/latex/contrib/profcollege/latex/PfCPythagore.tex -2023/07/30 | 25302 | macros/latex/contrib/profcollege/latex/PfCQuestionsFlash.tex -2023/07/30 | 2305 | macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex -2023/07/30 | 2617 | macros/latex/contrib/profcollege/latex/PfCQuiSuisJe.tex -2023/07/30 | 7314 | macros/latex/contrib/profcollege/latex/PfCRangementNombres.tex -2023/07/30 | 1777 | macros/latex/contrib/profcollege/latex/PfCRapido.tex -2023/07/30 | 28129 | macros/latex/contrib/profcollege/latex/PfCRappelsFormules.tex -2023/07/30 | 76929 | macros/latex/contrib/profcollege/latex/PfCReperage.tex -2023/07/30 | 15326 | macros/latex/contrib/profcollege/latex/PfCRepresentationGraphique.tex -2023/07/30 | 5561 | macros/latex/contrib/profcollege/latex/PfCRepresenterEntier.tex -2023/07/30 | 16038 | macros/latex/contrib/profcollege/latex/PfCRepresenterFraction.tex -2023/07/30 | 5223 | macros/latex/contrib/profcollege/latex/PfCRepresenterTableur.tex -2023/07/30 | 7797 | macros/latex/contrib/profcollege/latex/PfCReseauxSociaux.tex -2023/07/30 | 16190 | macros/latex/contrib/profcollege/latex/PfCResoudreEquation.tex -2023/07/30 | 3049 | macros/latex/contrib/profcollege/latex/PfCRLE.tex -2023/07/30 | 16486 | macros/latex/contrib/profcollege/latex/PfCRondeInfernale.tex -2023/07/30 | 18239 | macros/latex/contrib/profcollege/latex/PfCRose.tex -2023/07/30 | 1488 | macros/latex/contrib/profcollege/latex/PfCScratch.tex -2023/07/30 | 8711 | macros/latex/contrib/profcollege/latex/PfCShikaku.tex -2023/07/30 | 7808 | macros/latex/contrib/profcollege/latex/PfCSimplifierFraction.tex -2023/07/30 | 28719 | macros/latex/contrib/profcollege/latex/PfCSolides.tex -2023/07/30 | 11740 | macros/latex/contrib/profcollege/latex/PfCSommeAngles.tex -2023/07/30 | 2499 | macros/latex/contrib/profcollege/latex/PfCSquaro.tex -2023/07/04 | 80994 | macros/latex/contrib/profcollege/latex/PfCStatistiquesoldold.tex -2023/07/04 | 80418 | macros/latex/contrib/profcollege/latex/PfCStatistiquesold.tex -2023/07/30 | 82730 | macros/latex/contrib/profcollege/latex/PfCStatistiques.tex -2023/07/30 | 82575 | macros/latex/contrib/profcollege/latex/PfCTableauxUnites.tex -2023/07/30 | 3466 | macros/latex/contrib/profcollege/latex/PfCTablesOperations.tex -2023/07/30 | 6030 | macros/latex/contrib/profcollege/latex/PfCTectonic.tex -2023/07/30 | 56986 | macros/latex/contrib/profcollege/latex/PfCThales.tex -2023/07/30 | 8307 | macros/latex/contrib/profcollege/latex/PfCTortueBase.tex -2023/07/30 | 24666 | macros/latex/contrib/profcollege/latex/PfCTrigonometrie.tex -2023/07/30 | 9951 | macros/latex/contrib/profcollege/latex/PfCTriominos.tex -2023/07/30 | 19900 | macros/latex/contrib/profcollege/latex/PfCTrio.tex -2023/07/30 | 9734 | macros/latex/contrib/profcollege/latex/PfCVueCubes.tex -2023/07/30 | 8676 | macros/latex/contrib/profcollege/latex/PfCYohaku.tex -2023/08/01 | 18516 | macros/latex/contrib/profcollege/latex/ProfCollege.sty +2023/08/11 | 2942 | macros/latex/contrib/profcollege/latex/PfCMentalo.tex +2023/08/11 | 5365 | macros/latex/contrib/profcollege/latex/PfCMidpoint.tex +2023/08/11 | 10548 | macros/latex/contrib/profcollege/latex/PfCModeleBarre.tex +2023/08/11 | 4548 | macros/latex/contrib/profcollege/latex/PfCMosaique.tex +2023/08/11 | 2815 | macros/latex/contrib/profcollege/latex/PfCMotsCodes.tex +2023/08/11 | 2222 | macros/latex/contrib/profcollege/latex/PfCMotsCroises.tex +2023/08/11 | 1862 | macros/latex/contrib/profcollege/latex/PfCMotsEmpiles.tex +2023/08/11 | 14951 | macros/latex/contrib/profcollege/latex/PfCMulArt.tex +2023/08/11 | 4125 | macros/latex/contrib/profcollege/latex/PfCMulPiecesPuzzle.tex +2023/08/11 | 7051 | macros/latex/contrib/profcollege/latex/PfCNombreAstral.tex +2023/08/11 | 14120 | macros/latex/contrib/profcollege/latex/PfCNonogramme.tex +2023/08/11 | 38860 | macros/latex/contrib/profcollege/latex/PfCNotionFonction.tex +2023/08/11 | 12065 | macros/latex/contrib/profcollege/latex/PfCNumberHive.tex +2023/08/11 | 5591 | macros/latex/contrib/profcollege/latex/PfCOperationsTrou.tex +2023/08/11 | 10168 | macros/latex/contrib/profcollege/latex/PfCPapiers.tex +2023/08/11 | 5824 | macros/latex/contrib/profcollege/latex/PfCPatronPaves.tex +2023/08/11 | 25681 | macros/latex/contrib/profcollege/latex/PfCPavageAvecMotifImage.tex +2023/08/11 | 35829 | macros/latex/contrib/profcollege/latex/PfCPavage.tex +2023/08/11 | 4138 | macros/latex/contrib/profcollege/latex/PfCPixelArt.tex +2023/08/11 | 8166 | macros/latex/contrib/profcollege/latex/PfCPourcentage.tex +2023/08/11 | 7733 | macros/latex/contrib/profcollege/latex/PfCProbabilites.tex +2023/08/11 | 6260 | macros/latex/contrib/profcollege/latex/PfCProgrammeCalcul.tex +2023/08/11 | 15405 | macros/latex/contrib/profcollege/latex/PfCPropor.tex +2023/08/11 | 11026 | macros/latex/contrib/profcollege/latex/PfCProprietesDroites.tex +2023/08/11 | 7072 | macros/latex/contrib/profcollege/latex/PfCPuissanceQuatre.tex +2023/08/11 | 7102 | macros/latex/contrib/profcollege/latex/PfCPuzzleSommePyramide.tex +2023/08/11 | 9404 | macros/latex/contrib/profcollege/latex/PfCPyramideCalculs.tex +2023/08/11 | 1287 | macros/latex/contrib/profcollege/latex/PfCPyraVoca.tex +2023/08/11 | 26408 | macros/latex/contrib/profcollege/latex/PfCPythagore.tex +2023/08/11 | 25302 | macros/latex/contrib/profcollege/latex/PfCQuestionsFlash.tex +2023/08/11 | 2301 | macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex +2023/08/11 | 2617 | macros/latex/contrib/profcollege/latex/PfCQuiSuisJe.tex +2023/08/11 | 7314 | macros/latex/contrib/profcollege/latex/PfCRangementNombres.tex +2023/08/11 | 1777 | macros/latex/contrib/profcollege/latex/PfCRapido.tex +2023/08/11 | 28129 | macros/latex/contrib/profcollege/latex/PfCRappelsFormules.tex +2023/08/11 | 76961 | macros/latex/contrib/profcollege/latex/PfCReperage.tex +2023/08/11 | 15326 | macros/latex/contrib/profcollege/latex/PfCRepresentationGraphique.tex +2023/08/11 | 5561 | macros/latex/contrib/profcollege/latex/PfCRepresenterEntier.tex +2023/08/11 | 16038 | macros/latex/contrib/profcollege/latex/PfCRepresenterFraction.tex +2023/08/11 | 5223 | macros/latex/contrib/profcollege/latex/PfCRepresenterTableur.tex +2023/08/11 | 7797 | macros/latex/contrib/profcollege/latex/PfCReseauxSociaux.tex +2023/08/11 | 16190 | macros/latex/contrib/profcollege/latex/PfCResoudreEquation.tex +2023/08/11 | 3049 | macros/latex/contrib/profcollege/latex/PfCRLE.tex +2023/08/11 | 16486 | macros/latex/contrib/profcollege/latex/PfCRondeInfernale.tex +2023/08/11 | 18239 | macros/latex/contrib/profcollege/latex/PfCRose.tex +2023/08/11 | 1488 | macros/latex/contrib/profcollege/latex/PfCScratch.tex +2023/08/11 | 8711 | macros/latex/contrib/profcollege/latex/PfCShikaku.tex +2023/08/11 | 7808 | macros/latex/contrib/profcollege/latex/PfCSimplifierFraction.tex +2023/08/11 | 28872 | macros/latex/contrib/profcollege/latex/PfCSolides.tex +2023/08/11 | 11740 | macros/latex/contrib/profcollege/latex/PfCSommeAngles.tex +2023/08/11 | 2499 | macros/latex/contrib/profcollege/latex/PfCSquaro.tex +2023/08/11 | 82730 | macros/latex/contrib/profcollege/latex/PfCStatistiques.tex +2023/08/11 | 82573 | macros/latex/contrib/profcollege/latex/PfCTableauxUnites.tex +2023/08/11 | 3466 | macros/latex/contrib/profcollege/latex/PfCTablesOperations.tex +2023/08/11 | 6030 | macros/latex/contrib/profcollege/latex/PfCTectonic.tex +2023/08/11 | 56982 | macros/latex/contrib/profcollege/latex/PfCThales.tex +2023/08/11 | 8307 | macros/latex/contrib/profcollege/latex/PfCTortueBase.tex +2023/08/11 | 24666 | macros/latex/contrib/profcollege/latex/PfCTrigonometrie.tex +2023/08/11 | 9951 | macros/latex/contrib/profcollege/latex/PfCTriominos.tex +2023/08/11 | 19900 | macros/latex/contrib/profcollege/latex/PfCTrio.tex +2023/08/11 | 9734 | macros/latex/contrib/profcollege/latex/PfCVueCubes.tex +2023/08/11 | 8676 | macros/latex/contrib/profcollege/latex/PfCYohaku.tex +2023/08/11 | 18605 | macros/latex/contrib/profcollege/latex/ProfCollege.sty 2023/06/23 | 8247 | macros/latex/contrib/profcollege/metapost/datastest/PfCafganistan.dat 2023/06/23 | 10915 | macros/latex/contrib/profcollege/metapost/datastest/PfCafriquesud1.dat 2023/06/23 | 218 | macros/latex/contrib/profcollege/metapost/datastest/PfCafriquesud2.dat @@ -233528,7 +233740,7 @@ 2023/07/30 | 13485 | macros/latex/contrib/profcollege/metapost/PfCCalculatrice.mp 2023/07/30 | 969 | macros/latex/contrib/profcollege/metapost/PfCConstantes.mp 2023/07/30 | 2335 | macros/latex/contrib/profcollege/metapost/PfCEngrenages.mp -2023/07/30 | 53608 | macros/latex/contrib/profcollege/metapost/PfCGeometrie.mp +2023/08/13 | 60200 | macros/latex/contrib/profcollege/metapost/PfCGeometrie.mp 2023/07/30 | 7465 | macros/latex/contrib/profcollege/metapost/PfCLabyNombre.mp 2023/07/30 | 1682 | macros/latex/contrib/profcollege/metapost/PfCLaTeX.mp 2023/07/30 | 42630 | macros/latex/contrib/profcollege/metapost/PfCMonde.mp @@ -233541,7 +233753,7 @@ 2023/07/30 | 6652 | macros/latex/contrib/profcollege/metapost/PfCSvgnames.mp 2023/07/30 | 1683 | macros/latex/contrib/profcollege/metapost/PfCTurtleTestRemplis.mp 2023/06/23 | 435 | macros/latex/contrib/profcollege/README -2023/08/01 | 13791976 | macros/latex/contrib/profcollege.zip +2023/08/14 | 13761445 | macros/latex/contrib/profcollege.zip 2022/04/26 | 130555 | macros/latex/contrib/proflabo/doc/ProfLabo-doc.pdf 2022/04/26 | 16528 | macros/latex/contrib/proflabo/doc/ProfLabo-doc.tex 2022/04/26 | 323 | macros/latex/contrib/proflabo/README.md @@ -233589,13 +233801,13 @@ 2023/04/13 | 6608 | macros/latex/contrib/proflycee/tex/proflycee-tools-suites.tex 2023/05/03 | 42723 | macros/latex/contrib/proflycee/tex/proflycee-tools-trigo.tex 2023/08/09 | 1402708 | macros/latex/contrib/proflycee.zip -2023/08/11 | 177321 | macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf -2023/08/11 | 39833 | macros/latex/contrib/profmaquette/doc/profmaquette-doc.tex +2023/08/13 | 177327 | macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf +2023/08/13 | 39831 | macros/latex/contrib/profmaquette/doc/profmaquette-doc.tex 2023/06/23 | 17412 | macros/latex/contrib/profmaquette/doc/TestParcoursPerso.pdf 2023/06/23 | 756 | macros/latex/contrib/profmaquette/doc/TestParcoursPerso.tex -2023/08/11 | 72506 | macros/latex/contrib/profmaquette/latex/ProfMaquette.sty +2023/08/13 | 72756 | macros/latex/contrib/profmaquette/latex/ProfMaquette.sty 2023/06/23 | 355 | macros/latex/contrib/profmaquette/README -2023/08/11 | 205075 | macros/latex/contrib/profmaquette.zip +2023/08/14 | 205148 | macros/latex/contrib/profmaquette.zip 1996/02/05 | 1760 | macros/latex/contrib/progkeys/demo/demo.tex 1996/02/05 | 459 | macros/latex/contrib/progkeys/demo/prog1.tex 1996/02/05 | 347 | macros/latex/contrib/progkeys/demo/prog2.tex @@ -234503,113 +234715,113 @@ 2023/06/23 | 5602 | macros/latex/contrib/reledmac/doc-include/migrate-par.dtx 2023/06/23 | 16 | macros/latex/contrib/reledmac/doc-more/latexmkrc 2023/06/23 | 243 | macros/latex/contrib/reledmac/doc-more/makefile -2023/07/21 | 40794 | macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf +2023/08/14 | 40791 | macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf 2023/06/23 | 4645 | macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.tex -2023/07/21 | 201564 | macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf +2023/08/14 | 201564 | macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf 2023/06/23 | 1979 | macros/latex/contrib/reledmac/examples/1-criticalendnotes.tex -2023/07/21 | 197819 | macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf +2023/08/14 | 197819 | macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf 2023/06/23 | 2161 | macros/latex/contrib/reledmac/examples/1-criticalnotes.tex -2023/07/21 | 295209 | macros/latex/contrib/reledmac/examples/1-sidenotes.pdf +2023/08/14 | 295209 | macros/latex/contrib/reledmac/examples/1-sidenotes.pdf 2023/06/23 | 9804 | macros/latex/contrib/reledmac/examples/1-sidenotes.tex -2023/07/21 | 285556 | macros/latex/contrib/reledmac/examples/1-tabular.pdf +2023/08/14 | 285556 | macros/latex/contrib/reledmac/examples/1-tabular.pdf 2023/06/23 | 2004 | macros/latex/contrib/reledmac/examples/1-tabular.tex -2023/07/21 | 198959 | macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf +2023/08/14 | 198959 | macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf 2023/06/23 | 2592 | macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.tex -2023/07/21 | 198794 | macros/latex/contrib/reledmac/examples/1-verses.pdf +2023/08/14 | 198794 | macros/latex/contrib/reledmac/examples/1-verses.pdf 2023/06/23 | 1902 | macros/latex/contrib/reledmac/examples/1-verses.tex -2023/07/21 | 210969 | macros/latex/contrib/reledmac/examples/2-antilabe.pdf +2023/08/14 | 210969 | macros/latex/contrib/reledmac/examples/2-antilabe.pdf 2023/06/23 | 1998 | macros/latex/contrib/reledmac/examples/2-antilabe.tex -2023/07/21 | 198304 | macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf +2023/08/14 | 198304 | macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf 2023/06/23 | 1857 | macros/latex/contrib/reledmac/examples/2-cross_referencing.tex -2023/07/21 | 201443 | macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf +2023/08/14 | 201443 | macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf 2023/06/23 | 6806 | macros/latex/contrib/reledmac/examples/2-footnote_spacing.tex -2023/07/21 | 285503 | macros/latex/contrib/reledmac/examples/2-glossaries.pdf +2023/08/14 | 285503 | macros/latex/contrib/reledmac/examples/2-glossaries.pdf 2023/06/23 | 1794 | macros/latex/contrib/reledmac/examples/2-glossaries.tex -2023/07/21 | 278070 | macros/latex/contrib/reledmac/examples/2-indexing.pdf +2023/08/14 | 278070 | macros/latex/contrib/reledmac/examples/2-indexing.pdf 2023/06/23 | 2761 | macros/latex/contrib/reledmac/examples/2-indexing.tex -2023/07/21 | 276219 | macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf +2023/08/14 | 276219 | macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf 2023/06/23 | 1140 | macros/latex/contrib/reledmac/examples/2-lemma_disambigution.tex -2023/07/21 | 292434 | macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf +2023/08/14 | 292434 | macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf 2023/06/23 | 11391 | macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.tex -2023/07/21 | 286626 | macros/latex/contrib/reledmac/examples/2-linespacing.pdf +2023/08/14 | 286626 | macros/latex/contrib/reledmac/examples/2-linespacing.pdf 2023/06/23 | 1488 | macros/latex/contrib/reledmac/examples/2-linespacing.tex -2023/07/21 | 288123 | macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf +2023/08/14 | 288123 | macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf 2023/06/23 | 21449 | macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.tex -2023/07/21 | 204669 | macros/latex/contrib/reledmac/examples/2-notes-width.pdf +2023/08/14 | 204669 | macros/latex/contrib/reledmac/examples/2-notes-width.pdf 2023/06/23 | 1528 | macros/latex/contrib/reledmac/examples/2-notes-width.tex -2023/07/21 | 212242 | macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf +2023/08/14 | 212242 | macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf 2023/06/23 | 5161 | macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.tex -2023/07/21 | 284583 | macros/latex/contrib/reledmac/examples/2-performances.pdf +2023/08/14 | 284583 | macros/latex/contrib/reledmac/examples/2-performances.pdf 2023/06/23 | 2710 | macros/latex/contrib/reledmac/examples/2-performances.tex -2023/07/21 | 36940 | macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf +2023/08/14 | 36940 | macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf 2023/07/03 | 2524 | macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.tex -2023/07/21 | 310603 | macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf +2023/08/14 | 310603 | macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf 2023/06/23 | 15949 | macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.tex -2023/07/21 | 288795 | macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf +2023/08/14 | 288795 | macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf 2023/06/23 | 3065 | macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.tex -2023/07/21 | 199918 | macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf +2023/08/14 | 199918 | macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf 2023/06/23 | 2006 | macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.tex -2023/07/21 | 23442 | macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf +2023/08/14 | 23441 | macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf 2023/07/08 | 2395 | macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.tex -2023/07/21 | 175650 | macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf +2023/08/14 | 175650 | macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf 2023/06/23 | 2912 | macros/latex/contrib/reledmac/examples/3-reledpar_mwe.tex -2023/07/21 | 32047 | macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf +2023/08/14 | 32047 | macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf 2023/07/08 | 2034 | macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.tex -2023/07/21 | 289211 | macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf +2023/08/14 | 289211 | macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf 2023/06/23 | 20137 | macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.tex -2023/07/21 | 200041 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf +2023/08/14 | 200041 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf 2023/06/23 | 1665 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.tex -2023/07/21 | 199278 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf +2023/08/14 | 199278 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf 2023/06/23 | 1627 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.tex -2023/07/21 | 177110 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf +2023/08/14 | 177110 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf 2023/06/23 | 1553 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.tex -2023/07/21 | 198615 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf -2023/07/21 | 199681 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf +2023/08/14 | 198615 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf +2023/08/14 | 199681 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf 2023/06/23 | 1644 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.tex 2023/06/23 | 1603 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.tex -2023/07/21 | 198665 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf +2023/08/14 | 198665 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf 2023/06/23 | 1609 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.tex -2023/07/21 | 198797 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf +2023/08/14 | 198797 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf 2023/06/23 | 1611 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.tex -2023/07/21 | 214377 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf +2023/08/14 | 214377 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf 2023/06/23 | 13653 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.tex -2023/07/21 | 210488 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf +2023/08/14 | 210488 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf 2023/06/23 | 12681 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.tex -2023/07/21 | 204974 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf +2023/08/14 | 204974 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf 2023/06/23 | 3005 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.tex -2023/07/21 | 298422 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf +2023/08/14 | 298422 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf 2023/06/23 | 5587 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.tex -2023/07/21 | 204015 | macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf +2023/08/14 | 204015 | macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf 2023/06/23 | 11558 | macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.tex -2023/07/21 | 225555 | macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf +2023/08/14 | 225555 | macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf 2023/06/23 | 10033 | macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.tex -2023/07/21 | 251002 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf +2023/08/14 | 251002 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf 2023/06/23 | 43045 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.tex -2023/07/21 | 202381 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf +2023/08/14 | 202381 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf 2023/06/23 | 6540 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.tex -2023/07/21 | 198565 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf +2023/08/14 | 198565 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf 2023/06/23 | 4504 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.tex -2023/07/21 | 302774 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf +2023/08/14 | 302774 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf 2023/06/23 | 9314 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.tex -2023/07/21 | 206955 | macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf +2023/08/14 | 206955 | macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf 2023/06/23 | 8510 | macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.tex -2023/07/21 | 194198 | macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf +2023/08/14 | 194198 | macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf 2023/06/23 | 2157 | macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.tex 2023/06/23 | 49 | macros/latex/contrib/reledmac/examples/latexmkrc 2023/07/03 | 817 | macros/latex/contrib/reledmac/examples/makefile 2020/11/24 | 2269 | macros/latex/contrib/reledmac/examples/reledmac.xdy 2021/11/01 | 16 | macros/latex/contrib/reledmac/latexmkrc -2023/07/20 | 1718 | macros/latex/contrib/reledmac/makefile +2023/08/14 | 1718 | macros/latex/contrib/reledmac/makefile 2023/07/04 | 3495 | macros/latex/contrib/reledmac/migration.dtx -2023/07/21 | 368429 | macros/latex/contrib/reledmac/migration.pdf +2023/08/14 | 368426 | macros/latex/contrib/reledmac/migration.pdf 2023/06/23 | 3962 | macros/latex/contrib/reledmac/README.md -2023/07/21 | 902227 | macros/latex/contrib/reledmac/reledmac.dtx +2023/08/14 | 902600 | macros/latex/contrib/reledmac/reledmac.dtx 2023/06/23 | 2691 | macros/latex/contrib/reledmac/reledmac.ins -2023/07/21 | 2152079 | macros/latex/contrib/reledmac/reledmac.pdf +2023/08/14 | 2153144 | macros/latex/contrib/reledmac/reledmac.pdf 2023/07/20 | 306827 | macros/latex/contrib/reledmac/reledpar.dtx 2023/06/23 | 2638 | macros/latex/contrib/reledmac/reledpar.ins -2023/07/21 | 1046914 | macros/latex/contrib/reledmac/reledpar.pdf -2023/07/21 | 13625992 | macros/latex/contrib/reledmac.zip +2023/08/14 | 1046914 | macros/latex/contrib/reledmac/reledpar.pdf +2023/08/14 | 13626949 | macros/latex/contrib/reledmac.zip 1999/02/05 | 10370 | macros/latex/contrib/relenc/2sidedoc.sty 2011/04/06 | 6770 | macros/latex/contrib/relenc/README 1999/02/05 | 13969 | macros/latex/contrib/relenc/reldemo.tex @@ -237533,21 +237745,6 @@ 2016/01/07 | 8394 | macros/latex/contrib/substances/substances-examples.sub 2016/01/07 | 19876 | macros/latex/contrib/substances/substances.sty 2016/05/09 | 585013 | macros/latex/contrib/substances.zip -2013/11/04 | 322975 | macros/latex/contrib/substitutefont/cyrillic-lm-lgc.pdf -2013/11/04 | 2640 | macros/latex/contrib/substitutefont/cyrillic-lm-lgc.tex -2013/11/04 | 261997 | macros/latex/contrib/substitutefont/cyrillic-paratype.pdf -2013/11/04 | 2997 | macros/latex/contrib/substitutefont/cyrillic-paratype.tex -2013/11/04 | 351177 | macros/latex/contrib/substitutefont/greek-palatino-didot.pdf -2013/11/04 | 2200 | macros/latex/contrib/substitutefont/greek-palatino-didot.tex -2013/11/04 | 393346 | macros/latex/contrib/substitutefont/greek-times-artemisia.pdf -2013/11/04 | 1743 | macros/latex/contrib/substitutefont/greek-times-artemisia.tex -2013/11/04 | 4128 | macros/latex/contrib/substitutefont/README -2013/11/04 | 7746 | macros/latex/contrib/substitutefont/substitutefont-doc.html -2013/11/04 | 2760 | macros/latex/contrib/substitutefont/substitutefont.sty -2013/11/04 | 4817 | macros/latex/contrib/substitutefont/substitutefont.sty.html -2013/11/04 | 147683 | macros/latex/contrib/substitutefont/substitutefont-test.pdf -2013/11/04 | 1579 | macros/latex/contrib/substitutefont/substitutefont-test.tex -2013/11/04 | 1484145 | macros/latex/contrib/substitutefont.zip 2009/10/20 | 214 | macros/latex/contrib/substr/ChangeLog 2009/10/20 | 1089 | macros/latex/contrib/substr/README 2009/10/20 | 5724 | macros/latex/contrib/substr/substr.sty @@ -242915,26 +243112,26 @@ 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 -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/19 | 7677 | macros/latex/contrib/zref-clever/CHANGELOG.md -2023/06/19 | 70 | macros/latex/contrib/zref-clever/DEPENDS.txt -2023/06/19 | 823 | macros/latex/contrib/zref-clever/README.md -2023/06/19 | 1644303 | macros/latex/contrib/zref-clever.zip -2023/06/19 | 1275753 | macros/latex/contrib/zref-clever/zref-clever-code.pdf -2023/06/19 | 1543 | macros/latex/contrib/zref-clever/zref-clever-code.tex -2023/06/19 | 346246 | macros/latex/contrib/zref-clever/zref-clever-doc.pdf -2023/06/19 | 129121 | macros/latex/contrib/zref-clever/zref-clever-doc.tex -2023/06/19 | 347286 | macros/latex/contrib/zref-clever/zref-clever.dtx -2023/06/19 | 3187 | macros/latex/contrib/zref-clever/zref-clever.ins +2023/08/13 | 4499 | macros/latex/contrib/zref-check/CHANGELOG.md +2023/08/13 | 38 | macros/latex/contrib/zref-check/DEPENDS.txt +2023/08/13 | 1002 | macros/latex/contrib/zref-check/README.md +2023/08/14 | 1186489 | macros/latex/contrib/zref-check.zip +2023/08/13 | 745358 | macros/latex/contrib/zref-check/zref-check-code.pdf +2023/08/13 | 2175 | macros/latex/contrib/zref-check/zref-check-code.tex +2023/08/13 | 453465 | macros/latex/contrib/zref-check/zref-check-doc.pdf +2023/08/13 | 22652 | macros/latex/contrib/zref-check/zref-check-doc.tex +2023/08/13 | 66673 | macros/latex/contrib/zref-check/zref-check.dtx +2023/08/13 | 2607 | macros/latex/contrib/zref-check/zref-check.ins +2023/08/14 | 8003 | macros/latex/contrib/zref-clever/CHANGELOG.md +2023/08/14 | 70 | macros/latex/contrib/zref-clever/DEPENDS.txt +2023/08/14 | 823 | macros/latex/contrib/zref-clever/README.md +2023/08/14 | 1638584 | macros/latex/contrib/zref-clever.zip +2023/08/14 | 1271363 | macros/latex/contrib/zref-clever/zref-clever-code.pdf +2023/08/14 | 1543 | macros/latex/contrib/zref-clever/zref-clever-code.tex +2023/08/14 | 345511 | macros/latex/contrib/zref-clever/zref-clever-doc.pdf +2023/08/14 | 129389 | macros/latex/contrib/zref-clever/zref-clever-doc.tex +2023/08/14 | 345946 | macros/latex/contrib/zref-clever/zref-clever.dtx +2023/08/14 | 3187 | macros/latex/contrib/zref-clever/zref-clever.ins 2022/04/07 | 581 | macros/latex/contrib/zref/README.md 2023/06/14 | 2002 | macros/latex/contrib/zref-vario/CHANGELOG.md 2023/06/14 | 31 | macros/latex/contrib/zref-vario/DEPENDS.txt @@ -272133,6 +272330,27 @@ 2005/04/29 | 1995 | obsolete/macros/latex/contrib/subfigure/test5.tex 2002/07/30 | 20533 | obsolete/macros/latex/contrib/subfigure/test.tex 2006/03/21 | 389603 | obsolete/macros/latex/contrib/subfigure.zip +2023/08/12 | 662 | obsolete/macros/latex/contrib/substitutefont/artemisia-greek.sty +2023/08/13 | 320118 | obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.pdf +2023/08/13 | 2771 | obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.tex +2023/08/13 | 261997 | obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.pdf +2023/08/13 | 3202 | obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.tex +2023/08/13 | 522176 | obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.pdf +2023/08/13 | 2240 | obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.tex +2023/08/13 | 613142 | obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.pdf +2023/08/13 | 1846 | obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.tex +2023/08/13 | 506602 | obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.pdf +2023/08/13 | 1820 | obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.tex +2022/12/13 | 4857 | obsolete/macros/latex/contrib/substitutefont/README +2023/08/13 | 9817 | obsolete/macros/latex/contrib/substitutefont/substitutefont-doc.html +2023/08/13 | 2827 | obsolete/macros/latex/contrib/substitutefont/substitutefont.sty +2023/08/13 | 5063 | obsolete/macros/latex/contrib/substitutefont/substitutefont.sty.html +2023/08/13 | 147378 | obsolete/macros/latex/contrib/substitutefont/substitutefont-test.pdf +2023/08/13 | 1497 | obsolete/macros/latex/contrib/substitutefont/substitutefont-test.tex +2023/08/12 | 439218 | obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.pdf +2023/08/12 | 997 | obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.tex +2023/08/13 | 1699 | obsolete/macros/latex/contrib/substitutefont/txfontsb-test.tex +2023/08/14 | 2820961 | obsolete/macros/latex/contrib/substitutefont.zip 2004/02/10 | 241 | obsolete/macros/latex/contrib/switcheml/README 2004/02/10 | 2481 | obsolete/macros/latex/contrib/switcheml/switcheml.sty 2005/04/30 | 1637 | obsolete/macros/latex/contrib/switcheml.zip @@ -285250,7 +285468,7 @@ 2021/05/03 | 629 | support/TeX4ht/doc/README 2020/08/24 | 358454 | support/TeX4ht/doc/TeX4ht-doc.tex 2021/05/11 | 262 | support/TeX4ht/README -2023/07/28 | 227574 | support/TeX4ht/source/ChangeLog +2023/08/13 | 228180 | support/TeX4ht/source/ChangeLog 2021/05/03 | 1375 | support/TeX4ht/source/checklog.lua 2021/05/03 | 1189 | support/TeX4ht/source/common-code.tex 2021/05/03 | 2727 | support/TeX4ht/source/common-info.tex @@ -285262,14 +285480,14 @@ 2021/05/03 | 1121 | support/TeX4ht/source/README 2021/05/03 | 1744 | support/TeX4ht/source/t1fontmake.lua 2021/05/03 | 297 | support/TeX4ht/source/t1fontsample.tex -2023/07/28 | 1163447 | support/TeX4ht/source/tex4ht-4ht.tex +2023/08/13 | 1163762 | support/TeX4ht/source/tex4ht-4ht.tex 2021/05/03 | 7127 | support/TeX4ht/source/tex4ht-auto-script.tex 2021/05/16 | 1539 | support/TeX4ht/source/tex4ht-bibtex2.tex 2022/06/05 | 21307 | support/TeX4ht/source/tex4ht-cond4ht.tex 2021/05/03 | 807 | support/TeX4ht/source/tex4ht-cpright.tex 2021/06/17 | 418876 | support/TeX4ht/source/tex4ht-c.tex 2021/05/03 | 420 | support/TeX4ht/source/tex4ht-dir.m4 -2021/05/03 | 100475 | support/TeX4ht/source/tex4ht-docbook.tex +2023/08/13 | 101227 | support/TeX4ht/source/tex4ht-docbook.tex 2021/05/03 | 12368 | support/TeX4ht/source/tex4ht-docbook-xtpipes.tex 2021/05/03 | 47591 | support/TeX4ht/source/tex4ht-env.tex 2021/05/03 | 3704153 | support/TeX4ht/source/tex4ht-fonts-4hf.tex @@ -285309,7 +285527,7 @@ 2021/05/03 | 90707 | support/TeX4ht/source/tex4ht-jsml-xtpipes.tex 2023/02/27 | 8412 | support/TeX4ht/source/tex4ht-mathjax.tex 2021/05/03 | 102444 | support/TeX4ht/source/tex4ht-mathltx.tex -2023/07/11 | 147484 | support/TeX4ht/source/tex4ht-mathml.tex +2023/08/13 | 147855 | support/TeX4ht/source/tex4ht-mathml.tex 2021/05/03 | 8860 | support/TeX4ht/source/tex4ht-mathplayer.tex 2021/06/20 | 49012 | support/TeX4ht/source/tex4ht-mkht.tex 2021/05/03 | 26652 | support/TeX4ht/source/tex4ht-moz.tex @@ -300839,13 +301057,13 @@ 2022/02/27 | 108804 | systems/texlive/tlnet/archive/tex4ht.amd64-freebsd.r62206.tar.xz 2023/02/20 | 87356 | systems/texlive/tlnet/archive/tex4ht.amd64-netbsd.r65923.tar.xz 2022/04/21 | 69948 | systems/texlive/tlnet/archive/tex4ht.armhf-linux.r63092.tar.xz -2023/07/29 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r67757.tar.xz +2023/08/14 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r67920.tar.xz 2022/02/27 | 93760 | systems/texlive/tlnet/archive/tex4ht.i386-freebsd.r62206.tar.xz 2022/02/27 | 91280 | systems/texlive/tlnet/archive/tex4ht.i386-linux.r62210.tar.xz 2023/02/20 | 76164 | systems/texlive/tlnet/archive/tex4ht.i386-netbsd.r65923.tar.xz 2022/02/27 | 83964 | systems/texlive/tlnet/archive/tex4ht.i386-solaris.r62206.tar.xz -2023/07/29 | 1102844 | systems/texlive/tlnet/archive/tex4ht.r67757.tar.xz -2023/07/29 | 1447364 | systems/texlive/tlnet/archive/tex4ht.source.r67757.tar.xz +2023/08/14 | 1102884 | systems/texlive/tlnet/archive/tex4ht.r67920.tar.xz +2023/08/14 | 1459572 | systems/texlive/tlnet/archive/tex4ht.source.r67920.tar.xz 2023/02/20 | 184636 | systems/texlive/tlnet/archive/tex4ht.universal-darwin.r65895.tar.xz 2023/02/20 | 62196 | systems/texlive/tlnet/archive/tex4ht.windows.r65891.tar.xz 2023/03/11 | 58016 | systems/texlive/tlnet/archive/tex4ht.x86_64-cygwin.r66544.tar.xz @@ -301106,7 +301324,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/08/13 | 428460 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67900.tar.xz +2023/08/14 | 428548 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67905.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 @@ -301128,7 +301346,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/08/13 | 114128 | systems/texlive/tlnet/archive/texlive-scripts.r67900.tar.xz +2023/08/14 | 114104 | systems/texlive/tlnet/archive/texlive-scripts.r67905.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 @@ -302068,11 +302286,11 @@ 2023/05/11 | 1373804 | systems/texlive/tlnet/archive/unicodefonttable.doc.r67066.tar.xz 2023/05/11 | 7900 | systems/texlive/tlnet/archive/unicodefonttable.r67066.tar.xz 2023/05/11 | 22828 | systems/texlive/tlnet/archive/unicodefonttable.source.r67066.tar.xz -2022/01/24 | 1725064 | systems/texlive/tlnet/archive/unicode-math.doc.r61719.tar.xz +2023/08/14 | 3336280 | systems/texlive/tlnet/archive/unicode-math.doc.r67919.tar.xz 2023/05/13 | 105924 | systems/texlive/tlnet/archive/unicode-math-input.doc.r67089.tar.xz 2023/05/13 | 16528 | systems/texlive/tlnet/archive/unicode-math-input.r67089.tar.xz -2022/01/24 | 42820 | systems/texlive/tlnet/archive/unicode-math.r61719.tar.xz -2022/01/24 | 37864 | systems/texlive/tlnet/archive/unicode-math.source.r61719.tar.xz +2023/08/14 | 42240 | systems/texlive/tlnet/archive/unicode-math.r67919.tar.xz +2023/08/14 | 36928 | systems/texlive/tlnet/archive/unicode-math.source.r67919.tar.xz 2021/10/05 | 985200 | systems/texlive/tlnet/archive/unifith.doc.r60698.tar.xz 2021/10/05 | 14684 | systems/texlive/tlnet/archive/unifith.r60698.tar.xz 2023/05/09 | 204252 | systems/texlive/tlnet/archive/unifront.doc.r67054.tar.xz @@ -302831,9 +303049,9 @@ 2023/02/24 | 10856 | systems/texlive/tlnet/archive/xpinyin.source.r66115.tar.xz 2019/02/28 | 140412 | systems/texlive/tlnet/archive/xprintlen.doc.r35928.tar.xz 2019/02/28 | 1120 | systems/texlive/tlnet/archive/xprintlen.r35928.tar.xz -2019/02/28 | 199392 | systems/texlive/tlnet/archive/xpunctuate.doc.r26641.tar.xz -2019/02/28 | 1324 | systems/texlive/tlnet/archive/xpunctuate.r26641.tar.xz -2019/02/28 | 4180 | systems/texlive/tlnet/archive/xpunctuate.source.r26641.tar.xz +2023/08/14 | 217052 | systems/texlive/tlnet/archive/xpunctuate.doc.r67918.tar.xz +2023/08/14 | 1436 | systems/texlive/tlnet/archive/xpunctuate.r67918.tar.xz +2023/08/14 | 6288 | systems/texlive/tlnet/archive/xpunctuate.source.r67918.tar.xz 2019/02/28 | 210248 | systems/texlive/tlnet/archive/xq.doc.r35211.tar.xz 2019/02/28 | 44060 | systems/texlive/tlnet/archive/xq.r35211.tar.xz 2022/08/05 | 377076 | systems/texlive/tlnet/archive/xsavebox.doc.r64049.tar.xz @@ -302999,16 +303217,16 @@ 2020/07/18 | 47816 | systems/texlive/tlnet/archive/zztex.doc.r55862.tar.xz 2020/07/18 | 101724 | systems/texlive/tlnet/archive/zztex.r55862.tar.xz 2023/08/07 | 125713 | systems/texlive/tlnet/install-tl -2023/08/13 | 5734320 | systems/texlive/tlnet/install-tl-unx.tar.gz -2023/08/13 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2023/08/13 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2023/08/14 | 5739869 | systems/texlive/tlnet/install-tl-unx.tar.gz +2023/08/14 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2023/08/14 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2023/05/13 | 5083 | systems/texlive/tlnet/install-tl-windows.bat -2023/08/13 | 21038588 | systems/texlive/tlnet/install-tl-windows.exe -2023/08/13 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2023/08/13 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2023/08/13 | 26025607 | systems/texlive/tlnet/install-tl.zip -2023/08/13 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2023/08/13 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2023/08/14 | 21038495 | systems/texlive/tlnet/install-tl-windows.exe +2023/08/14 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2023/08/14 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2023/08/14 | 26025590 | systems/texlive/tlnet/install-tl.zip +2023/08/14 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2023/08/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 @@ -303018,7 +303236,7 @@ 2023/01/17 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg 2023/08/03 | 50576 | systems/texlive/tlnet/tlpkg/installer/config.guess 2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt -2023/08/11 | 7419 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +2023/08/13 | 7323 | 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 @@ -303060,12 +303278,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/08/13 | 18182808 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2023/08/13 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2023/08/14 | 18182211 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2023/08/14 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2023/02/20 | 86803 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm -2023/08/13 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2023/08/13 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2023/08/13 | 2461292 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2023/08/14 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2023/08/14 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2023/08/14 | 2463708 | 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 @@ -313689,7 +313907,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/08/14 | 186 | timestamp +2023/08/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 aa6b11c03d..a67eb5e9a1 100644 Binary files a/FILES.byname.gz and b/FILES.byname.gz differ diff --git a/FILES.last07days b/FILES.last07days index 0ad204e8cb..bd80184069 100644 --- a/FILES.last07days +++ b/FILES.last07days @@ -1,157 +1,543 @@ +2023/08/14 | 9741 | macros/latex/contrib/lettrine/doc/lettrine-demo-de.tex +2023/08/14 | 9682 | macros/latex/contrib/lettrine/lettrine-2023-04-18.sty +2023/08/14 | 939983 | macros/latex/contrib/nicematrix/nicematrix-code.pdf +2023/08/14 | 9119 | macros/latex/contrib/lettrine/lettrine-2018-08-18.sty +2023/08/14 | 902600 | macros/latex/contrib/reledmac/reledmac.dtx +2023/08/14 | 823 | macros/latex/contrib/zref-clever/README.md +2023/08/14 | 8127 | macros/latex/contrib/lettrine/lettrine-2015-08-31.sty +2023/08/14 | 8003 | macros/latex/contrib/zref-clever/CHANGELOG.md +2023/08/14 | 753 | macros/latex/contrib/panneauxroute/README.md +2023/08/14 | 7423 | macros/latex/contrib/memoir/doc-src/memnoidxnum.tex +2023/08/14 | 74185 | macros/latex/contrib/lettrine/doc/lettrine-demo-lua.pdf +2023/08/14 | 70 | macros/latex/contrib/zref-clever/DEPENDS.txt +2023/08/14 | 670553 | macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.pdf +2023/08/14 | 6679 | macros/latex/contrib/lettrine/lettrine-2006-03-17.sty +2023/08/14 | 6288 | systems/texlive/tlnet/archive/xpunctuate.source.r67918.tar.xz +2023/08/14 | 602607 | macros/latex/contrib/nicematrix/nicematrix.pdf +2023/08/14 | 586 | macros/latex/contrib/memoir/doc-src/trims-example.tex +2023/08/14 | 584003 | macros/latex/contrib/nicematrix/nicematrix-french.pdf +2023/08/14 | 5739869 | systems/texlive/tlnet/install-tl-unx.tar.gz +2023/08/14 | 571811 | macros/latex/contrib/nicematrix/nicematrix-code.dtx +2023/08/14 | 5519 | macros/latex/contrib/memoir/doc-src/memfonts.sty +2023/08/14 | 52462 | macros/latex/contrib/memoir/README +2023/08/14 | 521230 | macros/latex/contrib/lettrine.zip +2023/08/14 | 520504 | biblio/bibtex/bibtex-x.zip +2023/08/14 | 5159 | macros/latex/contrib/lettrine/contrib/lettrine-padl.cfl +2023/08/14 | 5136 | macros/latex/contrib/lettrine/contrib/lettrine-pacl.cfl +2023/08/14 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2023/08/14 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2023/08/14 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2023/08/14 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2023/08/14 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2023/08/14 | 47803 | macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.tex +2023/08/14 | 47622 | macros/latex/contrib/lettrine/lettrine.dtx +2023/08/14 | 432 | macros/latex/contrib/memoir/doc-src/memman.gst +2023/08/14 | 4298 | macros/latex/contrib/lettrine/doc/lettrine-demo-lua.tex +2023/08/14 | 428548 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67905.tar.xz +2023/08/14 | 42378 | macros/latex/contrib/memoir/doc-src/memsty.sty +2023/08/14 | 42240 | systems/texlive/tlnet/archive/unicode-math.r67919.tar.xz +2023/08/14 | 4165 | macros/latex/contrib/lettrine/contrib/lettrine-pzc3.cfl +2023/08/14 | 4096458 | biblio/ctan-bibdata.zip +2023/08/14 | 40791 | macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf +2023/08/14 | 3977 | macros/latex/contrib/memoir/memoir.ins +2023/08/14 | 3961 | macros/latex/contrib/lettrine/contrib/lettrine-pzc2.cfl +2023/08/14 | 389 | macros/latex/contrib/memoir/doc-src/memman.ist +2023/08/14 | 3695418 | biblio/ctan-bibdata/ctan.pdf +2023/08/14 | 36940 | macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf +2023/08/14 | 36928 | systems/texlive/tlnet/archive/unicode-math.source.r67919.tar.xz +2023/08/14 | 368426 | macros/latex/contrib/reledmac/migration.pdf +2023/08/14 | 36627 | macros/latex/contrib/memoir/mempatch.dtx +2023/08/14 | 3609753 | install/macros/latex/contrib/memoir.tds.zip +2023/08/14 | 3508696 | macros/latex/contrib/memoir.zip +2023/08/14 | 345946 | macros/latex/contrib/zref-clever/zref-clever.dtx +2023/08/14 | 345511 | macros/latex/contrib/zref-clever/zref-clever-doc.pdf +2023/08/14 | 3336280 | systems/texlive/tlnet/archive/unicode-math.doc.r67919.tar.xz +2023/08/14 | 32047 | macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf +2023/08/14 | 3187 | macros/latex/contrib/zref-clever/zref-clever.ins +2023/08/14 | 310603 | macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf +2023/08/14 | 302774 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf +2023/08/14 | 298422 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf +2023/08/14 | 295209 | macros/latex/contrib/reledmac/examples/1-sidenotes.pdf +2023/08/14 | 292434 | macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf +2023/08/14 | 289211 | macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf +2023/08/14 | 288795 | macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf +2023/08/14 | 288123 | macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf +2023/08/14 | 286626 | macros/latex/contrib/reledmac/examples/2-linespacing.pdf +2023/08/14 | 285556 | macros/latex/contrib/reledmac/examples/1-tabular.pdf +2023/08/14 | 285503 | macros/latex/contrib/reledmac/examples/2-glossaries.pdf +2023/08/14 | 2852 | macros/latex/contrib/memoir/mempatch.ins +2023/08/14 | 284583 | macros/latex/contrib/reledmac/examples/2-performances.pdf +2023/08/14 | 2826438 | macros/latex/contrib/memoir/memman.pdf +2023/08/14 | 2820961 | obsolete/macros/latex/contrib/substitutefont.zip +2023/08/14 | 2801500 | biblio/ctan-bibdata/ctan.bib +2023/08/14 | 278070 | macros/latex/contrib/reledmac/examples/2-indexing.pdf +2023/08/14 | 276219 | macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf +2023/08/14 | 26025590 | systems/texlive/tlnet/install-tl.zip +2023/08/14 | 251002 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf +2023/08/14 | 250272 | macros/latex/contrib/nicematrix/nicematrix.tex +2023/08/14 | 2463708 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2023/08/14 | 240540 | macros/latex/contrib/nicematrix/nicematrix-french.tex +2023/08/14 | 23441 | macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf +2023/08/14 | 2300862 | macros/latex/contrib/nicematrix.zip +2023/08/14 | 225555 | macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf +2023/08/14 | 217052 | systems/texlive/tlnet/archive/xpunctuate.doc.r67918.tar.xz +2023/08/14 | 2153144 | macros/latex/contrib/reledmac/reledmac.pdf +2023/08/14 | 214377 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf +2023/08/14 | 212242 | macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf +2023/08/14 | 210969 | macros/latex/contrib/reledmac/examples/2-antilabe.pdf +2023/08/14 | 210488 | macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf +2023/08/14 | 21038495 | systems/texlive/tlnet/install-tl-windows.exe +2023/08/14 | 206 | macros/latex/contrib/memoir/doc-src/Makeidxglo +2023/08/14 | 206955 | macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf +2023/08/14 | 205148 | macros/latex/contrib/profmaquette.zip +2023/08/14 | 204974 | macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf +2023/08/14 | 204669 | macros/latex/contrib/reledmac/examples/2-notes-width.pdf +2023/08/14 | 204015 | macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf +2023/08/14 | 203838 | macros/latex/contrib/memoir/doc-src/setpage-example.pdf +2023/08/14 | 202381 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf +2023/08/14 | 201564 | macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf +2023/08/14 | 201443 | macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf +2023/08/14 | 200041 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf +2023/08/14 | 199918 | macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf +2023/08/14 | 199681 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf +2023/08/14 | 199278 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf +2023/08/14 | 198959 | macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf +2023/08/14 | 198797 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf +2023/08/14 | 198794 | macros/latex/contrib/reledmac/examples/1-verses.pdf +2023/08/14 | 198665 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf +2023/08/14 | 198615 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf +2023/08/14 | 198565 | macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf +2023/08/14 | 198304 | macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf +2023/08/14 | 197819 | macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf +2023/08/14 | 194198 | macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf +2023/08/14 | 18182211 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2023/08/14 | 177110 | macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf +2023/08/14 | 175650 | macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf +2023/08/14 | 17396 | macros/latex/contrib/memoir/doc-src/titlepages.sty +2023/08/14 | 1718 | macros/latex/contrib/reledmac/makefile +2023/08/14 | 168279 | macros/latex/contrib/lettrine/doc/lettrine-demo-fr.pdf +2023/08/14 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx +2023/08/14 | 1675347 | install/macros/latex/contrib/zref-clever.tds.zip +2023/08/14 | 1638584 | macros/latex/contrib/zref-clever.zip +2023/08/14 | 1552 | macros/latex/contrib/lettrine/README.md +2023/08/14 | 1543 | macros/latex/contrib/zref-clever/zref-clever-code.tex +2023/08/14 | 1542304 | macros/latex/contrib/memoir/doc-src/memman.tex +2023/08/14 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2023/08/14 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2023/08/14 | 1518 | macros/latex/contrib/memoir/doc-src/anvil2.mps +2023/08/14 | 14980 | macros/latex/contrib/panneauxroute/tex/PanneauxRoute.sty +2023/08/14 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2023/08/14 | 14597 | macros/latex/contrib/memoir/doc-src/memlays.sty +2023/08/14 | 1459572 | systems/texlive/tlnet/archive/tex4ht.source.r67920.tar.xz +2023/08/14 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2023/08/14 | 14470 | macros/latex/contrib/lettrine/doc/W.pdf +2023/08/14 | 1436 | systems/texlive/tlnet/archive/xpunctuate.r67918.tar.xz +2023/08/14 | 1428 | macros/latex/contrib/nicematrix/nicematrix.ins +2023/08/14 | 13761445 | macros/latex/contrib/profcollege.zip +2023/08/14 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r67920.tar.xz +2023/08/14 | 13626949 | macros/latex/contrib/reledmac.zip +2023/08/14 | 13607 | macros/latex/contrib/lettrine/doc/lettrine-demo-fr.tex +2023/08/14 | 129389 | macros/latex/contrib/zref-clever/zref-clever-doc.tex +2023/08/14 | 128252 | macros/latex/contrib/lettrine/doc/lettrine-demo-de.pdf +2023/08/14 | 1271363 | macros/latex/contrib/zref-clever/zref-clever-code.pdf +2023/08/14 | 126080 | macros/latex/contrib/lettrine/doc/lettrine.pdf +2023/08/14 | 1186489 | macros/latex/contrib/zref-check.zip +2023/08/14 | 114104 | systems/texlive/tlnet/archive/texlive-scripts.r67905.tar.xz +2023/08/14 | 1139969 | macros/latex/contrib/panneauxroute.zip +2023/08/14 | 1123032 | macros/latex/contrib/memoir/memoir.dtx +2023/08/14 | 1102884 | systems/texlive/tlnet/archive/tex4ht.r67920.tar.xz +2023/08/14 | 1055 | macros/latex/contrib/lettrine/contrib/lettrine-optfile.cfl +2023/08/14 | 1046914 | macros/latex/contrib/reledmac/reledpar.pdf +2023/08/14 | 10337 | macros/latex/contrib/lettrine/lettrine-2022-09-25.sty +2023/08/13 | 9817 | obsolete/macros/latex/contrib/substitutefont/substitutefont-doc.html 2023/08/13 | 962 | macros/unicodetex/latex/unicode-math/unicode-math-code.ltx 2023/08/13 | 9568 | macros/unicodetex/latex/unicode-math/um-code-fontopt.dtx 2023/08/13 | 9464 | macros/unicodetex/latex/unicode-math/um-code-pkgopt.dtx 2023/08/13 | 9261 | macros/unicodetex/latex/unicode-math/um-code-setchar.dtx +2023/08/13 | 9105909 | macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf 2023/08/13 | 8889 | macros/unicodetex/latex/unicode-math/um-code-sscript.dtx 2023/08/13 | 7782 | macros/unicodetex/latex/unicode-math/um-code-sym-commands.dtx +2023/08/13 | 745358 | macros/latex/contrib/zref-check/zref-check-code.pdf +2023/08/13 | 7323 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +2023/08/13 | 72756 | macros/latex/contrib/profmaquette/latex/ProfMaquette.sty 2023/08/13 | 7244 | macros/unicodetex/latex/unicode-math/um-code-variables.dtx 2023/08/13 | 6940 | systems/texlive/tlnet/archive/collection-latexextra.r67902.tar.xz +2023/08/13 | 66673 | macros/latex/contrib/zref-check/zref-check.dtx +2023/08/13 | 613142 | obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.pdf +2023/08/13 | 60200 | macros/latex/contrib/profcollege/metapost/PfCGeometrie.mp 2023/08/13 | 58806 | macros/unicodetex/latex/unicode-math/um-doc-main.tex -2023/08/13 | 5734320 | systems/texlive/tlnet/install-tl-unx.tar.gz 2023/08/13 | 539764 | systems/texlive/tlnet/archive/msu-thesis.doc.r67903.tar.xz 2023/08/13 | 536376 | systems/texlive/tlnet/archive/joinbox.doc.r67902.tar.xz 2023/08/13 | 5222 | macros/unicodetex/latex/unicode-math/um-code-compat.dtx +2023/08/13 | 522176 | obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.pdf +2023/08/13 | 506602 | obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.pdf +2023/08/13 | 5063 | obsolete/macros/latex/contrib/substitutefont/substitutefont.sty.html 2023/08/13 | 4904 | macros/unicodetex/latex/unicode-math/um-code-amsmath.dtx -2023/08/13 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 -2023/08/13 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2023/08/13 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc -2023/08/13 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2023/08/13 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2023/08/13 | 4680 | macros/unicodetex/latex/unicode-math/um-code-msg.dtx 2023/08/13 | 459 | macros/unicodetex/latex/unicode-math/RELEASE_CHECKLIST.md +2023/08/13 | 453465 | macros/latex/contrib/zref-check/zref-check-doc.pdf +2023/08/13 | 4499 | macros/latex/contrib/zref-check/CHANGELOG.md 2023/08/13 | 434981 | macros/unicodetex/latex/unicode-math/unicode-math-code.pdf -2023/08/13 | 428460 | systems/texlive/tlnet/archive/texlive-scripts.doc.r67900.tar.xz 2023/08/13 | 4207 | macros/unicodetex/latex/unicode-math/README.md -2023/08/13 | 4093819 | biblio/ctan-bibdata.zip -2023/08/13 | 3693129 | biblio/ctan-bibdata/ctan.pdf +2023/08/13 | 39831 | macros/latex/contrib/profmaquette/doc/profmaquette-doc.tex +2023/08/13 | 38 | macros/latex/contrib/zref-check/DEPENDS.txt 2023/08/13 | 3520 | macros/unicodetex/latex/unicode-math/um-doc-nfsssummary.tex 2023/08/13 | 3486 | macros/unicodetex/latex/unicode-math/unicode-math.dtx 2023/08/13 | 3485348 | install/macros/unicodetex/latex/unicode-math.tds.zip 2023/08/13 | 3435650 | macros/unicodetex/latex/unicode-math.zip 2023/08/13 | 3296 | macros/unicodetex/latex/unicode-math/um-doc-style.tex +2023/08/13 | 3202 | obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.tex +2023/08/13 | 320118 | obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.pdf 2023/08/13 | 2951 | macros/unicodetex/latex/unicode-math/unimath-example.ltx 2023/08/13 | 2916 | systems/texlive/tlnet/archive/joinbox.r67902.tar.xz 2023/08/13 | 2835 | macros/unicodetex/latex/unicode-math/um-code-ui.dtx -2023/08/13 | 2801499 | biblio/ctan-bibdata/ctan.bib +2023/08/13 | 2827 | obsolete/macros/latex/contrib/substitutefont/substitutefont.sty +2023/08/13 | 2771 | obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.tex 2023/08/13 | 271385 | macros/latex/contrib/xpunctuate/xpunctuate-doc.pdf 2023/08/13 | 2713763 | macros/unicodetex/latex/unicode-math/unimath-symbols.pdf 2023/08/13 | 26515 | macros/unicodetex/latex/unicode-math/um-code-alphabets.dtx -2023/08/13 | 26025607 | systems/texlive/tlnet/install-tl.zip +2023/08/13 | 261997 | obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.pdf +2023/08/13 | 2607 | macros/latex/contrib/zref-check/zref-check.ins 2023/08/13 | 2590 | macros/unicodetex/latex/unicode-math/um-doc-legacyfontdimen.tex 2023/08/13 | 24949 | macros/unicodetex/latex/unicode-math/um-code-main.dtx -2023/08/13 | 2461292 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2023/08/13 | 241443 | macros/unicodetex/latex/unicode-math/unicode-math-table.tex 2023/08/13 | 228340 | macros/latex/contrib/xpunctuate.zip +2023/08/13 | 228180 | support/TeX4ht/source/ChangeLog +2023/08/13 | 22652 | macros/latex/contrib/zref-check/zref-check-doc.tex +2023/08/13 | 2253549 | macros/latex/contrib/profcollege/doc/profcollege-doc.zip +2023/08/13 | 2240 | obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.tex +2023/08/13 | 2193 | biblio/bibtex/bibtex-x/tests/bibtexu-char.test 2023/08/13 | 21873 | macros/unicodetex/latex/unicode-math/unimath-example.pdf -2023/08/13 | 21038588 | systems/texlive/tlnet/install-tl-windows.exe +2023/08/13 | 2175 | macros/latex/contrib/zref-check/zref-check-code.tex 2023/08/13 | 2055 | macros/latex/contrib/xpunctuate/xpunctuate.ins 2023/08/13 | 2053 | macros/unicodetex/latex/unicode-math/unicode-math.ins 2023/08/13 | 203544 | systems/texlive/tlnet/archive/couleurs-fr.doc.r67901.tar.xz 2023/08/13 | 19760 | macros/unicodetex/latex/unicode-math/um-code-usv.dtx 2023/08/13 | 19106 | macros/unicodetex/latex/unicode-math/LICENSE 2023/08/13 | 18915 | macros/unicodetex/latex/unicode-math/um-code-mathmap.dtx -2023/08/13 | 18182808 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2023/08/13 | 1846 | obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.tex +2023/08/13 | 1820 | obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.tex 2023/08/13 | 18176 | macros/latex/contrib/xpunctuate/xpunctuate.dtx -2023/08/13 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx +2023/08/13 | 177327 | macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf +2023/08/13 | 1699 | obsolete/macros/latex/contrib/substitutefont/txfontsb-test.tex 2023/08/13 | 166849 | macros/unicodetex/latex/unicode-math/unicode-math.pdf 2023/08/13 | 16308 | macros/unicodetex/latex/unicode-math/unimath-symbols.ltx 2023/08/13 | 1627 | macros/unicodetex/latex/unicode-math/um-doc-stixextract.tex 2023/08/13 | 15877 | macros/unicodetex/latex/unicode-math/CHANGES.md -2023/08/13 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2023/08/13 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2023/08/13 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2023/08/13 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2023/08/13 | 1497 | obsolete/macros/latex/contrib/substitutefont/substitutefont-test.tex +2023/08/13 | 147855 | support/TeX4ht/source/tex4ht-mathml.tex +2023/08/13 | 147378 | obsolete/macros/latex/contrib/substitutefont/substitutefont-test.pdf 2023/08/13 | 13284 | systems/texlive/tlnet/archive/msu-thesis.r67903.tar.xz 2023/08/13 | 13074 | macros/unicodetex/latex/unicode-math/um-code-fontparam.dtx 2023/08/13 | 1294 | macros/latex/contrib/xpunctuate/README.md 2023/08/13 | 12495 | macros/unicodetex/latex/unicode-math/MANIFEST.md 2023/08/13 | 1190 | macros/unicodetex/latex/unicode-math/um-code-api.dtx +2023/08/13 | 1163762 | support/TeX4ht/source/tex4ht-4ht.tex 2023/08/13 | 11513 | macros/unicodetex/latex/unicode-math/um-code-primes.dtx 2023/08/13 | 11444 | systems/texlive/tlnet/archive/couleurs-fr.r67901.tar.xz -2023/08/13 | 114128 | systems/texlive/tlnet/archive/texlive-scripts.r67900.tar.xz 2023/08/13 | 11123 | macros/unicodetex/latex/unicode-math/um-code-epilogue.dtx 2023/08/13 | 10603 | macros/unicodetex/latex/unicode-math/um-code-opening.dtx 2023/08/13 | 1044 | macros/unicodetex/latex/unicode-math/unicode-math.ltx 2023/08/13 | 10420 | macros/unicodetex/latex/unicode-math/um-doc-mathfontdimen.tex 2023/08/13 | 10300 | macros/unicodetex/latex/unicode-math/um-code-mathtext.dtx +2023/08/13 | 10129 | macros/latex/contrib/profcollege/latex/PfCCartographie.tex +2023/08/13 | 101227 | support/TeX4ht/source/tex4ht-docbook.tex +2023/08/13 | 1002 | macros/latex/contrib/zref-check/README.md 2023/08/12 | 9981 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.tex +2023/08/12 | 997 | obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.tex +2023/08/12 | 9134 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_1.pdf +2023/08/12 | 8755 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6d.pdf 2023/08/12 | 8692 | systems/texlive/tlnet/archive/xkcdcolors.r67895.tar.xz 2023/08/12 | 82785 | macros/latex/contrib/couleurs-fr/doc/couleurs-fr-doc-prefix.pdf +2023/08/12 | 8028 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25a.pdf 2023/08/12 | 7732108 | support/texlab.zip +2023/08/12 | 7626 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE50.pdf 2023/08/12 | 7160 | systems/texlive/tlnet/archive/eolang.r67897.tar.xz 2023/08/12 | 70914 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-template.pdf +2023/08/12 | 6956 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC3.pdf 2023/08/12 | 6771 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-template.tex 2023/08/12 | 672020 | systems/texlive/tlnet/archive/naive-ebnf.doc.r67892.tar.xz +2023/08/12 | 6692 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB39.pdf +2023/08/12 | 662 | obsolete/macros/latex/contrib/substitutefont/artemisia-greek.sty +2023/08/12 | 6621 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3a.pdf +2023/08/12 | 6610 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC50.pdf +2023/08/12 | 6415 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25b.pdf 2023/08/12 | 632 | systems/texlive/tlnet/archive/collection-langfrench.r67898.tar.xz 2023/08/12 | 597464 | systems/texlive/tlnet/archive/l3kernel.source.r67891.tar.xz 2023/08/12 | 58373 | macros/latex/contrib/couleurs-fr/doc/couleurs-fr-doc.tex 2023/08/12 | 5800 | systems/texlive/tlnet/archive/naive-ebnf.source.r67892.tar.xz +2023/08/12 | 5662 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB19.pdf 2023/08/12 | 563476 | macros/latex/contrib/msu-thesis.zip +2023/08/12 | 5574 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB4.pdf 2023/08/12 | 553580 | macros/latex/contrib/joinbox.zip 2023/08/12 | 5403096 | systems/texlive/tlnet/archive/stellenbosch-2.doc.r67894.tar.xz -2023/08/12 | 520500 | biblio/bibtex/bibtex-x.zip +2023/08/12 | 5335 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_30.pdf +2023/08/12 | 5069 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB5.pdf 2023/08/12 | 5012 | systems/texlive/tlnet/archive/cahierprof.r67896.tar.xz 2023/08/12 | 483400 | systems/texlive/tlnet/archive/cahierprof.doc.r67896.tar.xz +2023/08/12 | 4830 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13a.pdf 2023/08/12 | 46927 | macros/latex/contrib/couleurs-fr/tex/couleurs-fr.sty +2023/08/12 | 4678 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_130.pdf +2023/08/12 | 4457 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA8.pdf +2023/08/12 | 4444 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_50.pdf +2023/08/12 | 439218 | obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.pdf +2023/08/12 | 4358 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_90.pdf 2023/08/12 | 432076 | systems/texlive/tlnet/archive/circledsteps.doc.r67889.tar.xz 2023/08/12 | 43133 | macros/latex/contrib/msu-thesis/msu-thesis.cls 2023/08/12 | 42169 | macros/latex/contrib/msu-thesis/docs/msu-thesis.tex +2023/08/12 | 4144 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB49.pdf +2023/08/12 | 4117 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA4.pdf +2023/08/12 | 3990 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_70.pdf 2023/08/12 | 393 | macros/latex/contrib/msu-thesis/samples/chap2bib.tex +2023/08/12 | 3914 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_110.pdf +2023/08/12 | 3884 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA16.pdf +2023/08/12 | 3815 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2a.pdf +2023/08/12 | 3779 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64c.pdf 2023/08/12 | 365869 | macros/latex/contrib/joinbox/joinbox.pdf +2023/08/12 | 3542 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3b.pdf +2023/08/12 | 3527 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB29.pdf +2023/08/12 | 3485 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7b.pdf +2023/08/12 | 3478 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC62.pdf +2023/08/12 | 3459 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE25.pdf +2023/08/12 | 3430 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_130.pdf +2023/08/12 | 3347 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB43.pdf +2023/08/12 | 3338 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_30.pdf +2023/08/12 | 3296 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB25.pdf 2023/08/12 | 327 | macros/latex/contrib/msu-thesis/samples/chap4bib.tex +2023/08/12 | 3274 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5a.pdf +2023/08/12 | 3210 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22c.pdf +2023/08/12 | 3205 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB10a.pdf 2023/08/12 | 319 | macros/latex/contrib/msu-thesis/samples/chap3bib.tex +2023/08/12 | 3178 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9i.pdf +2023/08/12 | 3165 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a3.pdf +2023/08/12 | 3096 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB17.pdf +2023/08/12 | 3058 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB12.pdf +2023/08/12 | 3036 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA21.pdf +2023/08/12 | 3016 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5b.pdf +2023/08/12 | 2962 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_90.pdf 2023/08/12 | 2936 | macros/latex/contrib/msu-thesis/README.md 2023/08/12 | 2936 | macros/latex/contrib/joinbox/README.md 2023/08/12 | 2925012 | systems/texlive/tlnet/archive/simpleicons.r67888.tar.xz +2023/08/12 | 2923 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4b.pdf +2023/08/12 | 2919 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE22.pdf 2023/08/12 | 291696 | systems/texlive/tlnet/archive/dccpaper.doc.r67890.tar.xz +2023/08/12 | 2895 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_50.pdf +2023/08/12 | 2884 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB4.pdf +2023/08/12 | 2877 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB41.pdf +2023/08/12 | 2865 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4a.pdf +2023/08/12 | 2823 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE26.pdf +2023/08/12 | 2823 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_15.pdf +2023/08/12 | 2815 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9h.pdf +2023/08/12 | 2787 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE10.pdf 2023/08/12 | 277 | macros/latex/contrib/msu-thesis/samples/chap1bib.tex +2023/08/12 | 2757 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22b.pdf 2023/08/12 | 27072 | systems/texlive/tlnet/archive/dccpaper.source.r67890.tar.xz +2023/08/12 | 2706 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB11.pdf +2023/08/12 | 2700 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34.pdf +2023/08/12 | 2670 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_110.pdf +2023/08/12 | 2668 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27b.pdf +2023/08/12 | 2661 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5c.pdf +2023/08/12 | 2644 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13b.pdf +2023/08/12 | 2567 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30a.pdf +2023/08/12 | 2567 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7a.pdf +2023/08/12 | 2555 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30b.pdf +2023/08/12 | 2549 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA9.pdf +2023/08/12 | 2544 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_70.pdf +2023/08/12 | 2526 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20a.pdf +2023/08/12 | 2525 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC116.pdf 2023/08/12 | 25060 | systems/texlive/tlnet/archive/dccpaper.r67890.tar.xz +2023/08/12 | 2503 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c2.pdf +2023/08/12 | 2494 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15c.pdf +2023/08/12 | 2482 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34a.pdf +2023/08/12 | 2470 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15b.pdf +2023/08/12 | 2461 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC115.pdf +2023/08/12 | 2458 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC114.pdf +2023/08/12 | 2445 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB40.pdf +2023/08/12 | 2427 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13.pdf +2023/08/12 | 2424 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9e.pdf +2023/08/12 | 2418 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC113.pdf 2023/08/12 | 2416 | systems/texlive/tlnet/archive/naive-ebnf.r67892.tar.xz +2023/08/12 | 2414 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC5.pdf +2023/08/12 | 2397 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9b.pdf +2023/08/12 | 2376 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20b.pdf +2023/08/12 | 2367 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE24.pdf 2023/08/12 | 236377 | macros/latex/contrib/couleurs-fr.zip +2023/08/12 | 2336 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE19.pdf +2023/08/12 | 2335 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22a.pdf +2023/08/12 | 2295 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE23.pdf +2023/08/12 | 2270 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13a.pdf +2023/08/12 | 2268 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB35.pdf +2023/08/12 | 2264 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE12.pdf +2023/08/12 | 2264 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a2.pdf 2023/08/12 | 224804 | systems/texlive/tlnet/archive/xkcdcolors.doc.r67895.tar.xz +2023/08/12 | 2247 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA20.pdf +2023/08/12 | 2242 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a1.pdf +2023/08/12 | 2217 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3a.pdf +2023/08/12 | 2212 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1c.pdf +2023/08/12 | 2207 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a4.pdf +2023/08/12 | 2205 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18a.pdf +2023/08/12 | 2158 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9g.pdf +2023/08/12 | 2152 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15c.pdf 2023/08/12 | 215120 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.pdf 2023/08/12 | 2138936 | systems/texlive/tlnet/archive/simpleicons.doc.r67888.tar.xz +2023/08/12 | 2127 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4c.pdf +2023/08/12 | 2124 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a2.pdf 2023/08/12 | 211 | macros/latex/contrib/joinbox/build.sh +2023/08/12 | 2069 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6a.pdf 2023/08/12 | 2065404 | systems/texlive/tlnet/archive/stellenbosch-2.source.r67894.tar.xz +2023/08/12 | 2059 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20c.pdf +2023/08/12 | 2055 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9c.pdf +2023/08/12 | 2046 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA6.pdf +2023/08/12 | 2041 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA24.pdf +2023/08/12 | 2004 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20a.pdf +2023/08/12 | 2002 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE8.pdf +2023/08/12 | 2000 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64a.pdf +2023/08/12 | 1997 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6b.pdf +2023/08/12 | 1986 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5a.pdf +2023/08/12 | 1984 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB42.pdf +2023/08/12 | 1968 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c1.pdf +2023/08/12 | 1949 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18b.pdf +2023/08/12 | 1945 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_15.pdf +2023/08/12 | 1937 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a1.pdf 2023/08/12 | 1928 | systems/texlive/tlnet/archive/circledsteps.r67889.tar.xz +2023/08/12 | 1925 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB45a.pdf +2023/08/12 | 1910 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB8.pdf +2023/08/12 | 1903 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE27.pdf +2023/08/12 | 1898 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4b.pdf +2023/08/12 | 1891 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA19.pdf +2023/08/12 | 1874 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3.pdf +2023/08/12 | 1867 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE9.pdf +2023/08/12 | 1867 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC6.pdf +2023/08/12 | 18670 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_2.pdf +2023/08/12 | 1866 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE16.pdf +2023/08/12 | 1857 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9f.pdf +2023/08/12 | 18555 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC23.pdf +2023/08/12 | 1842 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA7.pdf +2023/08/12 | 1815 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2b.pdf 2023/08/12 | 181306 | dviware/dvidvi.zip +2023/08/12 | 1798 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB25.pdf 2023/08/12 | 178272 | systems/texlive/tlnet/archive/profmaquette.doc.r67893.tar.xz +2023/08/12 | 1776 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27a.pdf +2023/08/12 | 1769 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA17.pdf +2023/08/12 | 1750 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9d.pdf 2023/08/12 | 173512 | systems/texlive/tlnet/archive/l3kernel.r67891.tar.xz +2023/08/12 | 1732 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE7.pdf +2023/08/12 | 1720 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE14.pdf 2023/08/12 | 1708 | systems/texlive/tlnet/archive/collection-publishers.r67894.tar.xz +2023/08/12 | 1707 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC108.pdf +2023/08/12 | 1705 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA14.pdf +2023/08/12 | 1702 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC112.pdf 2023/08/12 | 16930 | macros/latex/contrib/couleurs-fr/doc/couleurs-fr-doc-prefix.tex +2023/08/12 | 1676 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9a.pdf +2023/08/12 | 1675 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE17.pdf +2023/08/12 | 1671 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5b.pdf +2023/08/12 | 1669 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE29.pdf +2023/08/12 | 1669 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2a.pdf +2023/08/12 | 1663 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64b.pdf +2023/08/12 | 1656 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA23.pdf +2023/08/12 | 1655 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18c.pdf +2023/08/12 | 1646 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC111.pdf +2023/08/12 | 1636 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE28.pdf +2023/08/12 | 1634 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC107.pdf +2023/08/12 | 1631 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1b.pdf +2023/08/12 | 1628 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2c.pdf +2023/08/12 | 1627 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1d.pdf +2023/08/12 | 1624 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1c.pdf +2023/08/12 | 1615 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15a.pdf +2023/08/12 | 1607 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1a.pdf +2023/08/12 | 1603 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE21.pdf 2023/08/12 | 16020 | systems/texlive/tlnet/archive/eolang.source.r67897.tar.xz +2023/08/12 | 1599 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2a.pdf +2023/08/12 | 1596 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1b.pdf +2023/08/12 | 1590 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB16.pdf +2023/08/12 | 1589 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2b.pdf +2023/08/12 | 1586 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a1.pdf +2023/08/12 | 1584 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC208.pdf +2023/08/12 | 1577 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2b.pdf +2023/08/12 | 1577 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA18.pdf +2023/08/12 | 1566 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29a.pdf +2023/08/12 | 1565 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3.pdf 2023/08/12 | 1550020 | systems/texlive/tlnet/archive/stellenbosch-2.r67894.tar.xz +2023/08/12 | 1546 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE3a.pdf +2023/08/12 | 1546 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB1.pdf +2023/08/12 | 1543 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB2.pdf +2023/08/12 | 1543 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3a.pdf +2023/08/12 | 1540 | macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3b.pdf +2023/08/12 | 1538 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26a.pdf +2023/08/12 | 1537 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26b.pdf +2023/08/12 | 1528 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE18.pdf +2023/08/12 | 1525 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d2.pdf +2023/08/12 | 1524 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB7.pdf +2023/08/12 | 1510 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC207.pdf +2023/08/12 | 1504 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC8.pdf +2023/08/12 | 1502 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b2.pdf 2023/08/12 | 14996 | macros/latex/contrib/joinbox/joinbox.tex +2023/08/12 | 1491 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21e.pdf +2023/08/12 | 1490 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4a.pdf +2023/08/12 | 1488 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d2.pdf +2023/08/12 | 1487 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC30.pdf +2023/08/12 | 1484 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC18.pdf +2023/08/12 | 1475 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29b.pdf +2023/08/12 | 1464 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b1.pdf +2023/08/12 | 1463 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28b.pdf +2023/08/12 | 1461 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d1.pdf +2023/08/12 | 1451 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d1.pdf +2023/08/12 | 1444 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC12.pdf +2023/08/12 | 1440 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1a.pdf 2023/08/12 | 1436428 | systems/texlive/tlnet/archive/eolang.doc.r67897.tar.xz +2023/08/12 | 1432 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c2.pdf +2023/08/12 | 1428 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC27.pdf +2023/08/12 | 1427 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28a.pdf +2023/08/12 | 1417 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB15.pdf +2023/08/12 | 1415 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c1.pdf +2023/08/12 | 1403 | macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE1.pdf 2023/08/12 | 139419 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-chapterbib-testfile.pdf +2023/08/12 | 1393 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13b.pdf +2023/08/12 | 1388 | macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13a.pdf +2023/08/12 | 1370 | macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB6.pdf 2023/08/12 | 13632 | systems/texlive/tlnet/archive/profmaquette.r67893.tar.xz +2023/08/12 | 1355 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB31.pdf +2023/08/12 | 1335 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a2.pdf +2023/08/12 | 1332 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21b.pdf +2023/08/12 | 1311 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a1.pdf +2023/08/12 | 1306 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-2.pdf +2023/08/12 | 1299 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB0.pdf +2023/08/12 | 1298 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-1.pdf +2023/08/12 | 1287 | macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB1.pdf 2023/08/12 | 12842 | macros/latex/contrib/joinbox/joinbox.sty 2023/08/12 | 1276 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-chapterbib-testfile.tex 2023/08/12 | 123277 | macros/latex/contrib/couleurs-fr/doc/couleurs-fr-doc.pdf 2023/08/12 | 121780 | macros/latex/contrib/joinbox/tl-lion.pdf 2023/08/12 | 11995468 | systems/texlive/tlnet/archive/l3kernel.doc.r67891.tar.xz 2023/08/12 | 113915 | macros/latex/contrib/msu-thesis/msu-thesis.pdf +2023/08/12 | 11003 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB44.pdf 2023/08/12 | 1088 | macros/latex/contrib/msu-thesis/samples/MSU-thesis-testfile.bib +2023/08/12 | 10223 | macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB26.pdf 2023/08/11 | 9 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_simple.txt 2023/08/11 | 9 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_reference_simple.txt 2023/08/11 | 9 | support/texlab/crates/parser/src/test_data/latex/citation/citation_missing_brace.txt 2023/08/11 | 9999 | macros/latex/contrib/l3kernel/l3news10.tex 2023/08/11 | 998 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_thmtools.txt.snap +2023/08/11 | 9951 | macros/latex/contrib/profcollege/latex/PfCTriominos.tex 2023/08/11 | 993 | support/texlab/crates/parser/src/test_data/bibtex/samples/knuth_1984.txt +2023/08/11 | 9898 | macros/latex/contrib/profcollege/latex/PfCDecDeci.tex 2023/08/11 | 988 | support/texlab/crates/texlab/src/features/reference.rs 2023/08/11 | 987 | support/texlab/crates/commands/src/change_env.rs 2023/08/11 | 980 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_simple.txt.snap 2023/08/11 | 97640 | macros/latex/contrib/l3kernel/l3seq.dtx 2023/08/11 | 975 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@004.txt.snap +2023/08/11 | 9734 | macros/latex/contrib/profcollege/latex/PfCVueCubes.tex 2023/08/11 | 970 | biblio/bibtex/bibtex-x/tests/bibtexu-sort.test 2023/08/11 | 965 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__glossary_entry_definition_simple.txt.snap 2023/08/11 | 953 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@005.txt.snap 2023/08/11 | 9479 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__knuth_1984.txt.snap 2023/08/11 | 946 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_multiple_entries.snap 2023/08/11 | 9465 | macros/latex/contrib/l3kernel/l3news08.tex +2023/08/11 | 9427 | macros/latex/contrib/profcollege/latex/PfCLabyrintheJeu.tex +2023/08/11 | 9404 | macros/latex/contrib/profcollege/latex/PfCPyramideCalculs.tex 2023/08/11 | 933 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__section.snap 2023/08/11 | 932 | support/texlab/crates/texlab/src/features/link.rs +2023/08/11 | 9326 | macros/latex/contrib/profcollege/latex/PfCEcrireunQCM.tex 2023/08/11 | 92818 | macros/latex/contrib/l3kernel/l3int.dtx 2023/08/11 | 919 | biblio/bibtex/bibtex-x/tests/bibtex8-sort.test 2023/08/11 | 91740 | macros/latex/contrib/l3kernel/l3skip.dtx @@ -166,10 +552,13 @@ 2023/08/11 | 8975 | macros/latex/contrib/circledsteps/circledsteps-manual.tex 2023/08/11 | 8955 | support/texlab/crates/bibtex-utils/src/field/text.rs 2023/08/11 | 88833 | macros/latex/contrib/l3kernel/l3expan.dtx +2023/08/11 | 8870 | macros/latex/contrib/profcollege/latex/PfCCalisson.tex 2023/08/11 | 8868 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__kastenholz_2006.txt.snap 2023/08/11 | 88106 | macros/latex/contrib/l3kernel/l3coffins.dtx 2023/08/11 | 87744 | macros/latex/contrib/l3kernel/l3box.dtx 2023/08/11 | 875 | support/texlab/crates/citeproc/src/lib.rs +2023/08/11 | 8711 | macros/latex/contrib/profcollege/latex/PfCShikaku.tex +2023/08/11 | 8676 | macros/latex/contrib/profcollege/latex/PfCYohaku.tex 2023/08/11 | 861 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__biblatex_include_options.txt.snap 2023/08/11 | 860 | support/texlab/crates/parser/src/test_data/bibtex/samples/blom_2021.txt 2023/08/11 | 849 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error1.txt.snap @@ -181,10 +570,15 @@ 2023/08/11 | 841 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__folding_range__latex.snap 2023/08/11 | 841 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__equation.snap 2023/08/11 | 838 | support/texlab/crates/texlab/src/features/completion/acronym_ref.rs +2023/08/11 | 831 | macros/latex/contrib/profcollege/latex/PfCDobble.tex 2023/08/11 | 831 | biblio/bibtex/bibtex-x/tests/bibtexu-basic.test +2023/08/11 | 8307 | macros/latex/contrib/profcollege/latex/PfCTortueBase.tex 2023/08/11 | 83077 | macros/latex/contrib/l3kernel/l3clist.dtx 2023/08/11 | 82 | support/texlab/crates/parser/src/test_data/bibtex/comment.txt +2023/08/11 | 82730 | macros/latex/contrib/profcollege/latex/PfCStatistiques.tex +2023/08/11 | 8271 | macros/latex/contrib/profcollege/latex/PfCBillard.tex 2023/08/11 | 825 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_incomplete.txt.snap +2023/08/11 | 82573 | macros/latex/contrib/profcollege/latex/PfCTableauxUnites.tex 2023/08/11 | 824 | support/texlab/crates/texlab/src/features/completion/field.rs 2023/08/11 | 8249 | support/texlab/crates/texlab/src/util/diagnostics.rs 2023/08/11 | 823 | support/texlab/crates/symbols/src/workspace/snapshots/symbols__workspace__tests__filter_bibtex.snap @@ -194,6 +588,7 @@ 2023/08/11 | 820 | support/texlab/crates/distro/src/texlive.rs 2023/08/11 | 81941 | macros/latex/contrib/l3kernel/l3prefixes.pdf 2023/08/11 | 818 | support/texlab/crates/hover/src/label.rs +2023/08/11 | 8166 | macros/latex/contrib/profcollege/latex/PfCPourcentage.tex 2023/08/11 | 815 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_reference_options.txt.snap 2023/08/11 | 814 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@equation_missing_begin.txt.snap 2023/08/11 | 80 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_with_begin.txt @@ -201,14 +596,19 @@ 2023/08/11 | 7 | support/texlab/crates/parser/src/test_data/latex/citation/citation_empty.txt 2023/08/11 | 79 | support/texlab/crates/diagnostics/src/grammar.rs 2023/08/11 | 797 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__allowed_patterns.snap +2023/08/11 | 7962 | macros/latex/contrib/profcollege/latex/PfCDessinGradue.tex 2023/08/11 | 79261 | macros/latex/contrib/l3kernel/l3str.dtx 2023/08/11 | 784 | biblio/bibtex/bibtex-x/tests/bibtexu-yannis.test +2023/08/11 | 7808 | macros/latex/contrib/profcollege/latex/PfCSimplifierFraction.tex +2023/08/11 | 7797 | macros/latex/contrib/profcollege/latex/PfCReseauxSociaux.tex 2023/08/11 | 778 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_full.txt.snap 2023/08/11 | 77774 | macros/latex/contrib/l3kernel/l3msg.dtx 2023/08/11 | 7762 | support/texlab/crates/parser/src/test_data/build_log/007.txt +2023/08/11 | 7733 | macros/latex/contrib/profcollege/latex/PfCProbabilites.tex 2023/08/11 | 772 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_figure.txt.snap 2023/08/11 | 770 | support/texlab/crates/diagnostics/src/types.rs 2023/08/11 | 76 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_definition_options.txt +2023/08/11 | 76961 | macros/latex/contrib/profcollege/latex/PfCReperage.tex 2023/08/11 | 762 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_complicated_options.txt.snap 2023/08/11 | 761 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@issue_809.txt.snap 2023/08/11 | 760 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_package.txt.snap @@ -217,19 +617,20 @@ 2023/08/11 | 7531 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__aksin_2006.txt.snap 2023/08/11 | 7528 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__jain_1999.txt.snap 2023/08/11 | 750 | support/texlab/crates/diagnostics/src/util.rs +2023/08/11 | 7497 | macros/latex/contrib/profcollege/latex/PfCCible.tex 2023/08/11 | 7472 | macros/latex/contrib/l3kernel/l3fp-assign.dtx 2023/08/11 | 746 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@block_comments.txt.snap 2023/08/11 | 745 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_874.txt.snap 2023/08/11 | 742 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_simple.txt.snap 2023/08/11 | 74244 | macros/latex/contrib/l3kernel/l3text-case.dtx -2023/08/11 | 7419 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2023/08/11 | 73835 | macros/latex/contrib/l3kernel/l3fp-trig.dtx 2023/08/11 | 7360498 | macros/latex/contrib/l3kernel/source3.pdf 2023/08/11 | 734 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_definition_simple.txt.snap 2023/08/11 | 7322 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__almendro_1998.txt.snap +2023/08/11 | 7314 | macros/latex/contrib/profcollege/latex/PfCRangementNombres.tex 2023/08/11 | 728 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_568.txt.snap 2023/08/11 | 727116 | macros/latex/contrib/naive-ebnf/naive-ebnf.pdf -2023/08/11 | 72506 | macros/latex/contrib/profmaquette/latex/ProfMaquette.sty +2023/08/11 | 7244 | macros/latex/contrib/profcollege/latex/PfCFrise.tex 2023/08/11 | 723302 | macros/latex/contrib/naive-ebnf.zip 2023/08/11 | 7214 | support/texlab/crates/hover/src/tests.rs 2023/08/11 | 720 | support/texlab/crates/hover/src/package.rs @@ -239,11 +640,16 @@ 2023/08/11 | 7157 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__combi_2004.txt.snap 2023/08/11 | 711 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__project_resolution_texlabroot.snap 2023/08/11 | 710 | support/texlab/crates/distro/src/kpsewhich.rs +2023/08/11 | 7105 | macros/latex/contrib/profcollege/latex/PfCHorloge.tex +2023/08/11 | 7102 | macros/latex/contrib/profcollege/latex/PfCPuzzleSommePyramide.tex +2023/08/11 | 7088 | macros/latex/contrib/profcollege/latex/PfCColorilude.tex 2023/08/11 | 7079 | macros/latex/contrib/l3kernel/l3term-glossary.tex +2023/08/11 | 7072 | macros/latex/contrib/profcollege/latex/PfCPuissanceQuatre.tex 2023/08/11 | 706 | support/texlab/crates/parser/src/test_data/bibtex/samples/almendro_1998.txt 2023/08/11 | 706 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@structure__structure_siblings.txt.snap 2023/08/11 | 70679 | macros/latex/contrib/l3kernel/l3fp.dtx 2023/08/11 | 70538 | macros/latex/contrib/l3kernel/expl3.dtx +2023/08/11 | 7051 | macros/latex/contrib/profcollege/latex/PfCNombreAstral.tex 2023/08/11 | 70482 | macros/latex/contrib/l3kernel/l3prg.dtx 2023/08/11 | 703 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__inkscape_include_options.txt.snap 2023/08/11 | 702 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__svg_include_options.txt.snap @@ -253,6 +659,7 @@ 2023/08/11 | 6970534 | support/texlab/crates/completion-data/data/completion.json.gz 2023/08/11 | 6963 | support/texlab/crates/syntax/src/bibtex/cst.rs 2023/08/11 | 694 | support/texlab/crates/syntax/src/bibtex.rs +2023/08/11 | 6941 | macros/latex/contrib/profcollege/latex/PfCGrimuku.tex 2023/08/11 | 689 | support/texlab/crates/syntax/src/latex.rs 2023/08/11 | 6836 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__erwin_2007.txt.snap 2023/08/11 | 681 | support/texlab/crates/texlab/src/features/completion/entry_type.rs @@ -271,6 +678,7 @@ 2023/08/11 | 647 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_default.txt.snap 2023/08/11 | 6477 | support/texlab/crates/base-db/src/util/line_index.rs 2023/08/11 | 6472 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__rivest_1978.txt.snap +2023/08/11 | 6465 | macros/latex/contrib/profcollege/latex/PfCCalculsFractions.tex 2023/08/11 | 645 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_simple.txt.snap 2023/08/11 | 6433 | macros/latex/contrib/l3kernel/l3news06.tex 2023/08/11 | 642 | support/texlab/crates/texlab/src/features/completion/user_command.rs @@ -280,6 +688,7 @@ 2023/08/11 | 62840 | macros/latex/contrib/l3kernel/l3tl-analysis.dtx 2023/08/11 | 626 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_default_error.txt.snap 2023/08/11 | 6267 | macros/latex/contrib/l3kernel/l3syntax-changes.tex +2023/08/11 | 6260 | macros/latex/contrib/profcollege/latex/PfCProgrammeCalcul.tex 2023/08/11 | 624 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path_command.txt.snap 2023/08/11 | 6224 | macros/latex/contrib/l3kernel/l3.ins 2023/08/11 | 621772 | macros/latex/contrib/l3kernel/expl3.pdf @@ -289,6 +698,7 @@ 2023/08/11 | 60 | support/texlab/crates/parser/src/test_data/latex/structure/structure_enum_item.txt 2023/08/11 | 60 | support/texlab/crates/bibtex-utils/src/field.rs 2023/08/11 | 608 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_prenote_postnote.txt.snap +2023/08/11 | 6030 | macros/latex/contrib/profcollege/latex/PfCTectonic.tex 2023/08/11 | 602 | support/texlab/crates/texlab/src/features/completion/component_command.rs 2023/08/11 | 6018 | support/texlab/crates/texlab/src/util/capabilities.rs 2023/08/11 | 59921 | macros/latex/contrib/dccpaper/dccpaper-by.eps @@ -296,9 +706,12 @@ 2023/08/11 | 5900 | support/texlab/crates/base-db/src/util/label.rs 2023/08/11 | 588 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error2.txt.snap 2023/08/11 | 5864 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__betram_1996.txt.snap +2023/08/11 | 58611 | macros/latex/contrib/profcollege/latex/PfCDistributivite.tex 2023/08/11 | 583 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_command_simple_package.snap 2023/08/11 | 58325 | support/texlab/crates/base-db/src/data.rs +2023/08/11 | 5824 | macros/latex/contrib/profcollege/latex/PfCPatronPaves.tex 2023/08/11 | 5706 | support/texlab/crates/base-db/src/graph.rs +2023/08/11 | 56982 | macros/latex/contrib/profcollege/latex/PfCThales.tex 2023/08/11 | 5684 | support/texlab/crates/parser/src/build_log.rs 2023/08/11 | 566 | support/texlab/crates/symbols/src/workspace/snapshots/symbols__workspace__tests__filter_type_figure.snap 2023/08/11 | 5665 | dviware/dvidvi/ChangeLog @@ -308,10 +721,12 @@ 2023/08/11 | 563 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_number.txt.snap 2023/08/11 | 561 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__citation.snap 2023/08/11 | 55 | support/texlab/crates/parser/src/test_data/latex/issue_857.txt +2023/08/11 | 5591 | macros/latex/contrib/profcollege/latex/PfCOperationsTrou.tex 2023/08/11 | 558 | support/texlab/crates/commands/Cargo.toml 2023/08/11 | 558218 | macros/latex/contrib/l3kernel/l3doc.pdf 2023/08/11 | 557 | support/texlab/crates/parser/src/test_data/bibtex/samples/rivest_1978.txt 2023/08/11 | 556 | support/texlab/crates/parser/src/test_data/bibtex/samples/betram_1996.txt +2023/08/11 | 5561 | macros/latex/contrib/profcollege/latex/PfCRepresenterEntier.tex 2023/08/11 | 555 | support/texlab/crates/texlab/src/features/link/include.rs 2023/08/11 | 5557 | support/texlab/crates/base-db/src/util/queries.rs 2023/08/11 | 5556 | support/texlab/crates/symbols/src/document/tests.rs @@ -323,6 +738,7 @@ 2023/08/11 | 541 | support/texlab/crates/hover/src/entry_type.rs 2023/08/11 | 5386 | support/texlab/crates/parser/src/latex/lexer/commands.rs 2023/08/11 | 5378 | support/texlab/crates/base-db/src/document.rs +2023/08/11 | 5365 | macros/latex/contrib/profcollege/latex/PfCMidpoint.tex 2023/08/11 | 535 | support/texlab/crates/base-db/Cargo.toml 2023/08/11 | 533 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_description.txt.snap 2023/08/11 | 533 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_name_with_counter.txt.snap @@ -331,6 +747,7 @@ 2023/08/11 | 52 | support/texlab/crates/parser/src/test_data/latex/environment/environment_nested_missing_braces.txt 2023/08/11 | 5295 | macros/latex/contrib/circledsteps/circledsteps.sty 2023/08/11 | 526 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_828.txt.snap +2023/08/11 | 5223 | macros/latex/contrib/profcollege/latex/PfCRepresenterTableur.tex 2023/08/11 | 520 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_wrap_long_lines.snap 2023/08/11 | 520 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@caption__caption_minimal.txt.snap 2023/08/11 | 52059 | macros/latex/contrib/joinbox/latexframe.png @@ -376,6 +793,8 @@ 2023/08/11 | 47216 | macros/latex/contrib/l3kernel/l3fp-aux.dtx 2023/08/11 | 4716 | macros/latex/contrib/l3kernel/l3news05.tex 2023/08/11 | 470 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__import_simple.txt.snap +2023/08/11 | 4692 | macros/latex/contrib/profcollege/latex/PfCFutoshiki.tex +2023/08/11 | 4664 | macros/latex/contrib/profcollege/latex/PfCDiagrammeRadar.tex 2023/08/11 | 46584 | macros/latex/contrib/l3kernel/l3prefixes.csv 2023/08/11 | 464 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__import_class_open_brace.snap 2023/08/11 | 464 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@007.txt.snap @@ -386,6 +805,7 @@ 2023/08/11 | 4574 | macros/latex/contrib/l3kernel/l3legacy.dtx 2023/08/11 | 456 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_multiple.txt.snap 2023/08/11 | 454 | support/texlab/crates/symbols/Cargo.toml +2023/08/11 | 4548 | macros/latex/contrib/profcollege/latex/PfCMosaique.tex 2023/08/11 | 453 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_multiple_keys.txt.snap 2023/08/11 | 452 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__tikz_library_closed_brace.snap 2023/08/11 | 452 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_definition_line_break.txt.snap @@ -400,6 +820,7 @@ 2023/08/11 | 448 | support/texlab/crates/parser/src/snapshots/parser__build_log__tests__parse@002.txt.snap 2023/08/11 | 447 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@graphics_path.txt.snap 2023/08/11 | 445 | support/texlab/crates/base-db/src/util/regex_filter.rs +2023/08/11 | 4441 | macros/latex/contrib/profcollege/latex/PfCCalculatrice.tex 2023/08/11 | 441 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__field_entry_field_name.snap 2023/08/11 | 43 | support/texlab/crates/parser/src/test_data/latex/environment/environment_nested.txt 2023/08/11 | 433107 | macros/latex/contrib/circledsteps.zip @@ -415,8 +836,11 @@ 2023/08/11 | 41 | support/texlab/crates/parser/src/test_data/latex/include/package_include_options.txt 2023/08/11 | 414 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_word.snap 2023/08/11 | 4144 | support/texlab/crates/diagnostics/src/grammar/tex.rs +2023/08/11 | 4138 | macros/latex/contrib/profcollege/latex/PfCPixelArt.tex 2023/08/11 | 4130 | support/texlab/crates/parser/src/test_data/build_log/006.txt 2023/08/11 | 4126 | support/texlab/crates/texlab/src/features/symbols.rs +2023/08/11 | 4125 | macros/latex/contrib/profcollege/latex/PfCMulPiecesPuzzle.tex +2023/08/11 | 4113 | macros/latex/contrib/profcollege/latex/PfCDomino.tex 2023/08/11 | 408 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_simple.snap 2023/08/11 | 407 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__color_model_definition_open_brace.snap 2023/08/11 | 407 | support/texlab/crates/parser/Cargo.toml @@ -435,12 +859,12 @@ 2023/08/11 | 39 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error1.txt 2023/08/11 | 39 | support/texlab/crates/parser/src/test_data/latex/caption/caption_figure.txt 2023/08/11 | 399 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_empty.snap -2023/08/11 | 39833 | macros/latex/contrib/profmaquette/doc/profmaquette-doc.tex 2023/08/11 | 3959 | support/texlab/crates/base-db/src/config.rs 2023/08/11 | 395889 | macros/latex/contrib/l3kernel/l3news.pdf 2023/08/11 | 394 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@theorem_definition__theorem_definition_only_name.txt.snap 2023/08/11 | 394 | support/texlab/crates/diagnostics/Cargo.toml 2023/08/11 | 389 | support/texlab/crates/commands/src/lib.rs +2023/08/11 | 38860 | macros/latex/contrib/profcollege/latex/PfCNotionFonction.tex 2023/08/11 | 387 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__graphics_include_simple.txt.snap 2023/08/11 | 386 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__ignored_patterns.snap 2023/08/11 | 386 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__biblatex_include_simple.txt.snap @@ -449,16 +873,20 @@ 2023/08/11 | 384 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__tikz_library_import_simple.txt.snap 2023/08/11 | 384 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__escaped_brackets.txt.snap 2023/08/11 | 3838 | support/texlab/crates/commands/src/build.rs +2023/08/11 | 3835 | macros/latex/contrib/profcollege/latex/PfCKenKen.tex 2023/08/11 | 382 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__pgf_library_import_simple.txt.snap 2023/08/11 | 380 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_range_incomplete.txt.snap +2023/08/11 | 3806 | macros/latex/contrib/profcollege/latex/PfCJeuRangement.tex 2023/08/11 | 380190 | support/texlab/images/demo.gif 2023/08/11 | 37 | support/texlab/crates/parser/src/test_data/latex/issue_874.txt 2023/08/11 | 379 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@equation.txt.snap +2023/08/11 | 3798 | macros/latex/contrib/profcollege/latex/PfCErathostene.tex 2023/08/11 | 377 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_impl.txt.snap 2023/08/11 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_simple.txt.snap 2023/08/11 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__bibtex_include_simple.txt.snap 2023/08/11 | 376 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__math_operator_no_impl.txt.snap 2023/08/11 | 3767 | support/texlab/README.md +2023/08/11 | 3765 | macros/latex/contrib/profcollege/latex/PfCEnquete.tex 2023/08/11 | 375 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_simple.txt.snap 2023/08/11 | 373 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__inkscape_include_simple.txt.snap 2023/08/11 | 373 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@preamble.txt.snap @@ -472,9 +900,11 @@ 2023/08/11 | 3645 | macros/latex/contrib/dccpaper/README.md 2023/08/11 | 363 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__latex_include_simple.txt.snap 2023/08/11 | 361 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_equation.txt.snap +2023/08/11 | 3618 | macros/latex/contrib/profcollege/latex/PfCDecompFracDeci.tex 2023/08/11 | 35 | support/texlab/crates/parser/src/test_data/latex/structure/structure_siblings.txt 2023/08/11 | 35 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_package.txt 2023/08/11 | 358 | support/texlab/crates/texlab/src/features/highlight.rs +2023/08/11 | 35829 | macros/latex/contrib/profcollege/latex/PfCPavage.tex 2023/08/11 | 357 | support/texlab/crates/definition/Cargo.toml 2023/08/11 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_definition_simple.txt.snap 2023/08/11 | 356 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_no_impl_error.txt.snap @@ -491,9 +921,11 @@ 2023/08/11 | 349 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@label__label_reference_simple.txt.snap 2023/08/11 | 3491 | support/texlab/crates/references/src/tests.rs 2023/08/11 | 347 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_789.txt.snap +2023/08/11 | 3466 | macros/latex/contrib/profcollege/latex/PfCTablesOperations.tex 2023/08/11 | 344 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_simple.txt.snap 2023/08/11 | 344973 | macros/latex/contrib/dccpaper/dccpaper.pdf 2023/08/11 | 344366 | macros/latex/contrib/dccpaper.zip +2023/08/11 | 3431 | macros/latex/contrib/profcollege/latex/PfCBarresCalculs.tex 2023/08/11 | 342 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_star.txt.snap 2023/08/11 | 33 | support/texlab/crates/parser/src/test_data/latex/graphics_path_options.txt 2023/08/11 | 33 | support/texlab/crates/parser/src/test_data/latex/environment/environment_simple.txt @@ -506,6 +938,7 @@ 2023/08/11 | 32 | support/texlab/crates/parser/src/test_data/latex/graphics_path_command.txt 2023/08/11 | 32 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_reference_options.txt 2023/08/11 | 3286 | support/texlab/crates/diagnostics/src/tests.rs +2023/08/11 | 3280 | macros/latex/contrib/profcollege/latex/PfCFicheMemo.tex 2023/08/11 | 3265 | support/texlab/crates/completion-data/src/lib.rs 2023/08/11 | 3263 | support/texlab/crates/diagnostics/src/build_log.rs 2023/08/11 | 3250 | support/texlab/crates/definition/src/tests.rs @@ -531,6 +964,7 @@ 2023/08/11 | 3058 | macros/latex/contrib/l3kernel/README.md 2023/08/11 | 3057 | support/texlab/crates/parser/src/test_data/build_log/004.txt 2023/08/11 | 30508 | macros/latex/contrib/l3kernel/l3intarray.dtx +2023/08/11 | 3049 | macros/latex/contrib/profcollege/latex/PfCRLE.tex 2023/08/11 | 304307 | macros/latex/contrib/l3kernel/l3regex.dtx 2023/08/11 | 3027 | support/texlab/crates/diagnostics/src/citations.rs 2023/08/11 | 3021 | support/texlab/crates/diagnostics/src/labels.rs @@ -546,17 +980,23 @@ 2023/08/11 | 2972 | support/texlab/crates/test-utils/src/fixture.rs 2023/08/11 | 296516 | macros/latex/contrib/l3kernel/l3styleguide.pdf 2023/08/11 | 295 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@citation__citation_empty.txt.snap +2023/08/11 | 2942 | macros/latex/contrib/profcollege/latex/PfCMentalo.tex +2023/08/11 | 2939 | macros/latex/contrib/profcollege/latex/PfCBarreNiveaux.tex +2023/08/11 | 29357 | macros/latex/contrib/profcollege/latex/PfCLabyrintheNombre.tex 2023/08/11 | 291 | support/texlab/crates/test-utils/Cargo.toml 2023/08/11 | 28 | support/texlab/crates/parser/src/test_data/latex/include/package_include_multiple.txt 2023/08/11 | 28 | support/texlab/crates/parser/src/test_data/latex/include/biblatex_include_simple.txt 2023/08/11 | 28 | support/texlab/crates/parser/src/test_data/latex/group/equation_missing_end.txt 2023/08/11 | 28 | support/texlab/crates/parser/src/test_data/latex/graphics_path.txt 2023/08/11 | 28 | support/texlab/crates/parser/src/test_data/latex/equation_missing_begin.txt +2023/08/11 | 28872 | macros/latex/contrib/profcollege/latex/PfCSolides.tex 2023/08/11 | 2841 | fonts/simpleicons/enc/simpleiconsone.enc 2023/08/11 | 283 | support/texlab/crates/texlab/src/features/completion/begin_snippet.rs 2023/08/11 | 2832 | support/texlab/crates/texlab/src/features/completion/label.rs 2023/08/11 | 2821 | macros/latex/contrib/l3kernel/l3prefixes.tex 2023/08/11 | 2821 | macros/latex/contrib/dccpaper/Makefile +2023/08/11 | 2815 | macros/latex/contrib/profcollege/latex/PfCMotsCodes.tex +2023/08/11 | 28129 | macros/latex/contrib/profcollege/latex/PfCRappelsFormules.tex 2023/08/11 | 27 | support/texlab/crates/parser/src/test_data/latex/structure/structure_invalid_nesting.txt 2023/08/11 | 27 | support/texlab/crates/parser/src/test_data/latex/include/verbatim_include_simple.txt 2023/08/11 | 27 | support/texlab/crates/parser/src/test_data/latex/caption/caption_default.txt @@ -585,10 +1025,13 @@ 2023/08/11 | 264 | fonts/simpleicons/tex/usimpleiconsthree.fd 2023/08/11 | 264 | fonts/simpleicons/tex/usimpleiconsseven.fd 2023/08/11 | 264 | fonts/simpleicons/tex/usimpleiconseight.fd +2023/08/11 | 26408 | macros/latex/contrib/profcollege/latex/PfCPythagore.tex 2023/08/11 | 263 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__glossary_ref_open_brace.snap 2023/08/11 | 2630 | macros/latex/contrib/naive-ebnf/naive-ebnf.ins +2023/08/11 | 2617 | macros/latex/contrib/profcollege/latex/PfCQuiSuisJe.tex 2023/08/11 | 2610 | support/texlab/crates/symbols/src/types.rs 2023/08/11 | 2609 | support/texlab/crates/texlab/src/server/extensions.rs +2023/08/11 | 2605 | macros/latex/contrib/profcollege/latex/PfCKakurasu.tex 2023/08/11 | 25 | support/texlab/crates/parser/src/test_data/latex/glossary/glossary_entry_reference_options.txt 2023/08/11 | 25 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error3.txt 2023/08/11 | 25 | support/texlab/crates/parser/src/test_data/bibtex/preamble.txt @@ -598,6 +1041,8 @@ 2023/08/11 | 2586 | support/texlab/texlab.tex 2023/08/11 | 2586 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__document_symbol__smoke.snap 2023/08/11 | 257 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_class.snap +2023/08/11 | 25681 | macros/latex/contrib/profcollege/latex/PfCPavageAvecMotifImage.tex +2023/08/11 | 25670 | macros/latex/contrib/profcollege/latex/PfCCartesJeux.tex 2023/08/11 | 255 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__theorem_end.snap 2023/08/11 | 254 | fonts/simpleicons/tex/usimpleiconstwo.fd 2023/08/11 | 254 | fonts/simpleicons/tex/usimpleiconssix.fd @@ -606,16 +1051,20 @@ 2023/08/11 | 2543 | support/texlab/crates/distro/src/lib.rs 2023/08/11 | 2535 | fonts/simpleicons/enc/simpleiconsthree.enc 2023/08/11 | 25351 | support/texlab/crates/texlab/src/features/completion/builder.rs +2023/08/11 | 25302 | macros/latex/contrib/profcollege/latex/PfCQuestionsFlash.tex 2023/08/11 | 25249 | macros/latex/contrib/l3kernel/l3deprecation.dtx 2023/08/11 | 2515 | support/texlab/crates/parser/src/test_data/build_log/003.txt 2023/08/11 | 250 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__theorem_begin.snap 2023/08/11 | 250127 | macros/latex/contrib/l3kernel/l3news09.pdf 2023/08/11 | 24 | support/texlab/crates/parser/src/test_data/latex/include/svg_include_simple.txt +2023/08/11 | 2499 | macros/latex/contrib/profcollege/latex/PfCSquaro.tex 2023/08/11 | 2496 | fonts/simpleicons/enc/simpleiconsonezero.enc 2023/08/11 | 248 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@color__color_set_definition_error4.txt.snap 2023/08/11 | 247 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__issue_883.snap 2023/08/11 | 24792 | macros/latex/contrib/l3kernel/source3body.tex +2023/08/11 | 2470 | macros/latex/contrib/profcollege/latex/PfCEcritureLettres.tex 2023/08/11 | 2467 | support/texlab/crates/distro/src/miktex.rs +2023/08/11 | 24666 | macros/latex/contrib/profcollege/latex/PfCTrigonometrie.tex 2023/08/11 | 2455 | support/texlab/crates/parser/src/test_data/build_log/002.txt 2023/08/11 | 244 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@group__unmatched_brackets.txt.snap 2023/08/11 | 244 | support/texlab/crates/base-db/src/util.rs @@ -635,32 +1084,38 @@ 2023/08/11 | 234 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@comment.txt.snap 2023/08/11 | 234484 | macros/latex/contrib/xkcdcolors.zip 2023/08/11 | 2337 | support/texlab/crates/texlab/benches/bench_main.rs +2023/08/11 | 23237 | macros/latex/contrib/profcollege/latex/PfCDecomposerNombrePremier.tex 2023/08/11 | 2322 | support/texlab/crates/diagnostics/src/lib.rs 2023/08/11 | 231519 | fonts/simpleicons/tex/simpleiconsglyphs-xeluatex.tex 2023/08/11 | 2303 | fonts/simpleicons/enc/simpleiconsoneone.enc 2023/08/11 | 23036 | macros/latex/contrib/xkcdcolors/xkcdcolors.sty +2023/08/11 | 2301 | macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex 2023/08/11 | 23011 | macros/latex/contrib/l3kernel/l3fp-logic.dtx 2023/08/11 | 22 | support/texlab/crates/parser/src/test_data/latex/include/bibtex_include_simple.txt 2023/08/11 | 22 | support/texlab/crates/parser/src/test_data/latex/command_definition/command_definition_no_argc.txt 2023/08/11 | 22 | support/texlab/crates/parser/src/test_data/latex/caption/caption_minimal.txt +2023/08/11 | 2285 | macros/latex/contrib/profcollege/latex/PfCGrades.tex 2023/08/11 | 227 | support/texlab/crates/syntax/Cargo.toml 2023/08/11 | 227 | support/texlab/crates/distro/Cargo.toml +2023/08/11 | 2276 | macros/latex/contrib/profcollege/latex/PfCKakuro.tex 2023/08/11 | 226 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__acronym_package_ref.snap 2023/08/11 | 2263 | macros/latex/contrib/xkcdcolors/README.md 2023/08/11 | 223 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__component_environment_simple.snap 2023/08/11 | 2229 | macros/latex/contrib/l3kernel/source3.tex +2023/08/11 | 2222 | macros/latex/contrib/profcollege/latex/PfCMotsCroises.tex 2023/08/11 | 22204 | support/texlab/crates/citeproc/src/driver.rs +2023/08/11 | 2211 | macros/latex/contrib/profcollege/latex/PfCHiddenMessage.tex 2023/08/11 | 22004 | biblio/bibtex/bibtex-x/ChangeLog 2023/08/11 | 21 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_description.txt 2023/08/11 | 21 | support/texlab/crates/parser/src/test_data/latex/theorem_definition/theorem_definition_name_with_counter.txt 2023/08/11 | 21 | support/texlab/crates/parser/src/test_data/latex/label/label_number.txt 2023/08/11 | 21 | support/texlab/crates/parser/src/test_data/latex/inline_double_dollar.txt 2023/08/11 | 21 | support/texlab/crates/parser/src/test_data/latex/caption/caption_minimal_error.txt -2023/08/11 | 2194 | biblio/bibtex/bibtex-x/tests/bibtexu-char.test 2023/08/11 | 218315 | macros/latex/contrib/l3kernel/l3term-glossary.pdf 2023/08/11 | 217219 | macros/latex/contrib/xkcdcolors/xkcdcolors-manual.pdf 2023/08/11 | 216 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_empty.txt.snap 2023/08/11 | 215 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@generic_command_escape.txt.snap +2023/08/11 | 2155 | macros/latex/contrib/profcollege/latex/PfCGaram.tex 2023/08/11 | 2143 | support/texlab/crates/texlab/src/features/folding.rs 2023/08/11 | 2128479 | fonts/simpleicons/doc/simpleicons.pdf 2023/08/11 | 211 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__argument_word.snap @@ -672,14 +1127,15 @@ 2023/08/11 | 20 | support/texlab/crates/parser/src/test_data/latex/citation/citation_prenote_postnote.txt 2023/08/11 | 208 | macros/latex/contrib/naive-ebnf/DEPENDS.txt 2023/08/11 | 2074 | support/texlab/crates/bibtex-utils/src/field/author.rs +2023/08/11 | 2072 | macros/latex/contrib/profcollege/latex/PfCBonSortie.tex 2023/08/11 | 2068 | support/texlab/crates/texlab/src/features/formatting/latexindent.rs 2023/08/11 | 205 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_complete_entry.snap -2023/08/11 | 205075 | macros/latex/contrib/profmaquette.zip 2023/08/11 | 204992 | macros/latex/contrib/l3kernel/l3news12.pdf 2023/08/11 | 20464 | macros/latex/contrib/l3kernel/l3text-purify.dtx 2023/08/11 | 2040 | support/texlab/crates/parser/src/latex/lexer.rs 2023/08/11 | 2038 | macros/latex/contrib/l3kernel/interface3.tex 2023/08/11 | 2028356 | fonts/simpleicons/opentype/SimpleIcons.otf +2023/08/11 | 2013 | macros/latex/contrib/profcollege/latex/PfCEngrenagesBase.tex 2023/08/11 | 1 | support/texlab/crates/parser/src/test_data/latex/parameter_error.txt 2023/08/11 | 19 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_error.txt 2023/08/11 | 19 | support/texlab/crates/parser/src/test_data/latex/label/label_definition_line_break.txt @@ -687,6 +1143,7 @@ 2023/08/11 | 19 | support/texlab/crates/parser/src/test_data/latex/inline.txt 2023/08/11 | 19 | support/texlab/crates/parser/src/test_data/latex/include/pgf_library_import_simple.txt 2023/08/11 | 19 | support/texlab/crates/parser/src/test_data/latex/glossary/acronym_reference_simple.txt +2023/08/11 | 19900 | macros/latex/contrib/profcollege/latex/PfCTrio.tex 2023/08/11 | 1980 | support/texlab/crates/symbols/src/document/bib.rs 2023/08/11 | 197 | support/texlab/crates/texlab/src/features.rs 2023/08/11 | 19641 | macros/latex/contrib/l3kernel/l3fp-convert.dtx @@ -701,6 +1158,8 @@ 2023/08/11 | 187 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@parameter_error.txt.snap 2023/08/11 | 1871 | support/texlab/crates/symbols/src/workspace/snapshots/symbols__workspace__tests__filter_type_section.snap 2023/08/11 | 186 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_after_string.snap +2023/08/11 | 1862 | macros/latex/contrib/profcollege/latex/PfCMotsEmpiles.tex +2023/08/11 | 18605 | macros/latex/contrib/profcollege/latex/ProfCollege.sty 2023/08/11 | 185 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_preamble.snap 2023/08/11 | 18532 | macros/latex/contrib/l3kernel/l3fp-round.dtx 2023/08/11 | 1844 | fonts/simpleicons/doc/simpleicons.tex @@ -708,6 +1167,7 @@ 2023/08/11 | 182 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_article.snap 2023/08/11 | 182 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@parameter.txt.snap 2023/08/11 | 1829 | support/texlab/crates/texlab/src/features/completion/color.rs +2023/08/11 | 18239 | macros/latex/contrib/profcollege/latex/PfCRose.tex 2023/08/11 | 1820 | support/texlab/crates/commands/src/clean.rs 2023/08/11 | 181 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_join_strings.snap 2023/08/11 | 181 | support/texlab/CONTRIBUTING.md @@ -721,7 +1181,7 @@ 2023/08/11 | 179 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__completion__entry_type_before_string.snap 2023/08/11 | 1791 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@issue_853.txt.snap 2023/08/11 | 17809 | macros/latex/contrib/l3kernel/l3pdf.dtx -2023/08/11 | 177321 | macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf +2023/08/11 | 1777 | macros/latex/contrib/profcollege/latex/PfCRapido.tex 2023/08/11 | 1760 | support/texlab/crates/citeproc/src/output.rs 2023/08/11 | 175 | support/texlab/crates/symbols/src/lib.rs 2023/08/11 | 1748 | support/texlab/crates/texlab/src/features/rename/entry.rs @@ -743,40 +1203,51 @@ 2023/08/11 | 16709 | macros/latex/contrib/l3kernel/l3candidates.dtx 2023/08/11 | 16633 | macros/latex/contrib/l3kernel/l3text-map.dtx 2023/08/11 | 1660 | support/texlab/crates/texlab/src/features/hover.rs +2023/08/11 | 16486 | macros/latex/contrib/profcollege/latex/PfCRondeInfernale.tex 2023/08/11 | 1647 | support/texlab/crates/texlab/src/util.rs 2023/08/11 | 16391 | macros/latex/contrib/naive-ebnf/naive-ebnf.dtx 2023/08/11 | 1636 | support/texlab/crates/texlab/src/features/completion/argument.rs 2023/08/11 | 163456 | macros/latex/contrib/l3kernel/l3news08.pdf 2023/08/11 | 1632 | biblio/bibtex/bibtex-x/tests/bibtex8u-mem.test 2023/08/11 | 1626 | support/texlab/crates/bibtex-utils/src/field/number.rs +2023/08/11 | 16190 | macros/latex/contrib/profcollege/latex/PfCResoudreEquation.tex 2023/08/11 | 1611 | support/texlab/crates/texlab/src/util/line_index_ext.rs 2023/08/11 | 160 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_preamble.snap 2023/08/11 | 1608 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__inlay_hint__label_definition.snap +2023/08/11 | 16038 | macros/latex/contrib/profcollege/latex/PfCRepresenterFraction.tex 2023/08/11 | 15 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_range_incomplete.txt 2023/08/11 | 15 | support/texlab/crates/parser/src/test_data/latex/color/color_set_definition_error4.txt 2023/08/11 | 15 | support/texlab/crates/parser/src/test_data/latex/citation/citation_prenote.txt 2023/08/11 | 15 | support/texlab/crates/parser/src/test_data/latex/citation/citation_multiple_keys.txt 2023/08/11 | 15 | support/texlab/crates/bibtex-utils/src/lib.rs +2023/08/11 | 1596 | macros/latex/contrib/profcollege/latex/PfCGeometrie.tex 2023/08/11 | 1590 | support/texlab/crates/commands/src/dep_graph.rs 2023/08/11 | 158 | support/texlab/crates/base-db/src/lib.rs +2023/08/11 | 15861 | macros/latex/contrib/profcollege/latex/PfCFonctionAffine.tex 2023/08/11 | 1583 | support/texlab/crates/commands/src/placeholders.rs 2023/08/11 | 157 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_trailing_comma.snap 2023/08/11 | 157 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_insert_braces.snap 2023/08/11 | 15622 | support/texlab/crates/citeproc/src/tests.rs 2023/08/11 | 156194 | macros/latex/contrib/l3kernel/l3doc.dtx +2023/08/11 | 15405 | macros/latex/contrib/profcollege/latex/PfCPropor.tex +2023/08/11 | 15326 | macros/latex/contrib/profcollege/latex/PfCRepresentationGraphique.tex +2023/08/11 | 1528 | macros/latex/contrib/profcollege/latex/PfCCartesMentales.tex 2023/08/11 | 152023 | macros/latex/contrib/l3kernel/l3docstrip.pdf 2023/08/11 | 1519 | macros/latex/contrib/circledsteps/ctikzexample.tex 2023/08/11 | 1519 | fonts/simpleicons/tex/simpleicons.sty 2023/08/11 | 151569 | macros/latex/contrib/l3kernel/l3news06.pdf 2023/08/11 | 1509 | support/texlab/crates/symbols/src/document.rs +2023/08/11 | 15072 | macros/latex/contrib/profcollege/latex/PfCFactorisation.tex 2023/08/11 | 1506 | support/texlab/crates/texlab/src/features/completion/import.rs 2023/08/11 | 150675 | macros/latex/contrib/l3kernel/l3news02.pdf 2023/08/11 | 1505 | support/texlab/crates/texlab/tests/lsp/text_document/document_symbol.rs 2023/08/11 | 150282 | macros/latex/contrib/l3kernel/l3news10.pdf 2023/08/11 | 14 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_multiple.txt 2023/08/11 | 14 | support/texlab/crates/parser/src/test_data/latex/generic_command_args.txt +2023/08/11 | 14951 | macros/latex/contrib/profcollege/latex/PfCMulArt.tex 2023/08/11 | 14913 | macros/latex/contrib/l3kernel/l3news12.tex 2023/08/11 | 148 | support/texlab/crates/parser/src/lib.rs +2023/08/11 | 1488 | macros/latex/contrib/profcollege/latex/PfCScratch.tex 2023/08/11 | 148704 | macros/latex/contrib/l3kernel/l3news03.pdf 2023/08/11 | 1464 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@glossary__acronym_declaration.txt.snap 2023/08/11 | 1448 | biblio/bibtex/bibtex-x/tests/bibtex8.test @@ -789,9 +1260,12 @@ 2023/08/11 | 14296 | support/texlab/crates/texlab/tests/lsp/text_document/completion.rs 2023/08/11 | 1428 | macros/latex/contrib/naive-ebnf/README.md 2023/08/11 | 1428 | biblio/bibtex/bibtex-x/tests/bibtex8-char.test +2023/08/11 | 14262 | macros/latex/contrib/profcollege/latex/PfCCAN.tex 2023/08/11 | 1421 | macros/latex/contrib/circledsteps/README.md 2023/08/11 | 141613 | macros/latex/contrib/l3kernel/l3tl.dtx +2023/08/11 | 14131 | macros/latex/contrib/profcollege/latex/PfCDessinerRatio.tex 2023/08/11 | 1412 | support/texlab/crates/texlab/src/server/progress.rs +2023/08/11 | 14120 | macros/latex/contrib/profcollege/latex/PfCNonogramme.tex 2023/08/11 | 1409 | support/texlab/crates/references/src/entry.rs 2023/08/11 | 140150 | macros/latex/contrib/l3kernel/l3file.dtx 2023/08/11 | 13 | support/texlab/crates/parser/src/test_data/latex/include/package_include_empty.txt @@ -810,6 +1284,7 @@ 2023/08/11 | 132 | support/texlab/crates/texlab/tests/lsp/text_document/snapshots/lsp__text_document__formatting__bibtex_internal_parens.snap 2023/08/11 | 1322 | support/texlab/crates/texlab/tests/lsp/text_document/document_highlight.rs 2023/08/11 | 1321 | support/texlab/crates/symbols/src/workspace.rs +2023/08/11 | 13187 | macros/latex/contrib/profcollege/latex/PfCEcritureUnites.tex 2023/08/11 | 131482 | macros/latex/contrib/l3kernel/l3basics.dtx 2023/08/11 | 1305 | support/texlab/crates/texlab/src/features/rename/command.rs 2023/08/11 | 1304 | support/texlab/crates/texlab/src/features/definition.rs @@ -819,6 +1294,7 @@ 2023/08/11 | 12 | support/texlab/crates/parser/src/test_data/latex/group/curly_group_missing_end.txt 2023/08/11 | 12 | support/texlab/crates/parser/src/test_data/latex/citation/citation_redundant_comma.txt 2023/08/11 | 1298 | support/texlab/crates/texlab/src/features/inlay_hint.rs +2023/08/11 | 1287 | macros/latex/contrib/profcollege/latex/PfCPyraVoca.tex 2023/08/11 | 128317 | macros/latex/contrib/l3kernel/l3news07.pdf 2023/08/11 | 12806 | macros/latex/contrib/l3kernel/l3bootstrap.dtx 2023/08/11 | 12777 | macros/latex/contrib/l3kernel/l3fp-traps.dtx @@ -840,6 +1316,8 @@ 2023/08/11 | 122711 | macros/latex/contrib/l3kernel/l3news01.pdf 2023/08/11 | 1225 | support/texlab/crates/hover/src/citation.rs 2023/08/11 | 1208 | support/texlab/crates/texlab/tests/lsp/text_document/folding_range.rs +2023/08/11 | 12069 | macros/latex/contrib/profcollege/latex/PfCCalculsCroises.tex +2023/08/11 | 12065 | macros/latex/contrib/profcollege/latex/PfCNumberHive.tex 2023/08/11 | 11 | support/texlab/crates/parser/src/test_data/latex/label/label_reference_equation.txt 2023/08/11 | 11 | support/texlab/crates/parser/src/test_data/latex/label/label_definition_simple.txt 2023/08/11 | 11 | support/texlab/crates/parser/src/test_data/latex/include/import_incomplete.txt @@ -850,6 +1328,7 @@ 2023/08/11 | 11884 | macros/latex/contrib/l3kernel/l3styleguide.tex 2023/08/11 | 11781 | macros/latex/contrib/l3kernel/l3fparray.dtx 2023/08/11 | 1177 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@command_definition__command_definition_with_begin.txt.snap +2023/08/11 | 11740 | macros/latex/contrib/profcollege/latex/PfCSommeAngles.tex 2023/08/11 | 1170 | support/texlab/crates/base-db/src/semantics/auxiliary.rs 2023/08/11 | 1157 | support/texlab/crates/texlab/tests/lsp/text_document/document_link.rs 2023/08/11 | 114591 | macros/latex/contrib/l3kernel/l3news04.pdf @@ -857,6 +1336,7 @@ 2023/08/11 | 11420 | support/texlab/crates/parser/src/bibtex.rs 2023/08/11 | 11391 | macros/latex/contrib/joinbox/expl3.png 2023/08/11 | 113435 | macros/latex/contrib/l3kernel/l3str-convert.dtx +2023/08/11 | 11255 | macros/latex/contrib/profcollege/latex/PfCCompteBon.tex 2023/08/11 | 1124 | support/texlab/crates/distro/src/language.rs 2023/08/11 | 112487 | macros/latex/contrib/l3kernel/l3news05.pdf 2023/08/11 | 112274 | macros/latex/contrib/l3kernel/l3color.dtx @@ -865,10 +1345,13 @@ 2023/08/11 | 1120 | support/texlab/crates/symbols/src/document/snapshots/symbols__document__tests__theorem_amsthm.snap 2023/08/11 | 1112 | support/texlab/crates/parser/src/test_data/bibtex/samples/nietzsche_1998.txt 2023/08/11 | 11093 | support/texlab/crates/base-db/src/semantics/tex.rs +2023/08/11 | 11046 | macros/latex/contrib/profcollege/latex/PfCAutomatismes.tex 2023/08/11 | 1103 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@environment__environment_definition.txt.snap +2023/08/11 | 11026 | macros/latex/contrib/profcollege/latex/PfCProprietesDroites.tex 2023/08/11 | 11015 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__nietzsche_1998.txt.snap 2023/08/11 | 10 | support/texlab/crates/parser/src/test_data/latex/citation/citation_star.txt 2023/08/11 | 10 | support/texlab/crates/parser/src/test_data/latex/citation/citation_simple.txt +2023/08/11 | 10951 | macros/latex/contrib/profcollege/latex/PfCAutonomie.tex 2023/08/11 | 108 | support/texlab/crates/texlab/src/lib.rs 2023/08/11 | 1083 | support/texlab/crates/texlab/src/features/formatting.rs 2023/08/11 | 1081 | dviware/dvidvi/dvidvi.test @@ -880,17 +1363,21 @@ 2023/08/11 | 1067 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__package_include_options.txt.snap 2023/08/11 | 1066 | support/texlab/crates/texlab/src/features/rename/label.rs 2023/08/11 | 1066 | support/texlab/crates/parser/src/snapshots/parser__latex__tests__parse@include__class_include_options.txt.snap +2023/08/11 | 10633 | macros/latex/contrib/profcollege/latex/PfCEnigmeAire.tex 2023/08/11 | 1059 | support/texlab/crates/hover/src/string_ref.rs 2023/08/11 | 1056 | support/texlab/crates/definition/src/include.rs +2023/08/11 | 10548 | macros/latex/contrib/profcollege/latex/PfCModeleBarre.tex 2023/08/11 | 1051 | support/texlab/crates/texlab/tests/lsp/workspace/symbol.rs 2023/08/11 | 105012 | macros/latex/contrib/l3kernel/l3fp-parse.dtx 2023/08/11 | 1049 | support/texlab/crates/texlab/src/features/highlight/label.rs +2023/08/11 | 10479 | macros/latex/contrib/profcollege/latex/PfCDefiTables.tex 2023/08/11 | 1046 | support/texlab/crates/definition/src/string_ref.rs 2023/08/11 | 10380 | support/texlab/crates/parser/src/snapshots/parser__bibtex__tests__parse@samples__averroes_1998.txt.snap 2023/08/11 | 10328 | macros/latex/contrib/l3kernel/l3flag.dtx 2023/08/11 | 1025 | support/texlab/crates/texlab/src/features/completion/matcher.rs 2023/08/11 | 10257 | support/texlab/crates/texlab/src/util/cursor.rs 2023/08/11 | 102208 | macros/latex/contrib/dccpaper/dccpaper.dtx +2023/08/11 | 10168 | macros/latex/contrib/profcollege/latex/PfCPapiers.tex 2023/08/11 | 10108 | support/texlab/crates/base-db/src/workspace.rs 2023/08/11 | 1009 | support/texlab/crates/symbols/src/workspace/snapshots/symbols__workspace__tests__filter_type_math.snap 2023/08/11 | 1008 | support/texlab/crates/parser/src/test_data/bibtex/samples/averroes_1998.txt @@ -1025,7 +1512,6 @@ 2023/08/08 | 80620 | systems/texlive/tlnet/tlpkg/translations/uk.po 2023/08/08 | 7774 | macros/luatex/latex/luacomplex/luacomplex.tex 2023/08/08 | 770 | graphics/pgf/contrib/tikzfill/CHANGES.md -2023/08/08 | 7423 | macros/latex/contrib/memoir/doc-src/memnoidxnum.tex 2023/08/08 | 70484 | systems/texlive/tlnet/tlpkg/translations/sl.po 2023/08/08 | 6974 | macros/latex/contrib/proflycee/tex/ProfLycee.sty 2023/08/08 | 67354 | systems/texlive/tlnet/tlpkg/translations/pl.po @@ -1039,34 +1525,22 @@ 2023/08/08 | 62854 | systems/texlive/tlnet/tlpkg/translations/ja.po 2023/08/08 | 620009 | macros/latex/contrib/apa6.zip 2023/08/08 | 61459 | systems/texlive/tlnet/tlpkg/translations/zh_TW.po -2023/08/08 | 586 | macros/latex/contrib/memoir/doc-src/trims-example.tex 2023/08/08 | 58302 | systems/texlive/tlnet/tlpkg/translations/nl.po 2023/08/08 | 58292 | macros/latex/contrib/proflycee/doc/ProfLycee-exemples-pyluatex.pdf 2023/08/08 | 57728 | systems/texlive/tlnet/tlpkg/translations/da.po -2023/08/08 | 5519 | macros/latex/contrib/memoir/doc-src/memfonts.sty 2023/08/08 | 5409 | macros/latex/contrib/proflycee/doc/ProfLycee-exemples-pythontex.tex 2023/08/08 | 529 | macros/latex/contrib/proflycee/doc/testscript.py -2023/08/08 | 52303 | macros/latex/contrib/memoir/README 2023/08/08 | 486576 | systems/texlive/tlnet/archive/tikzpeople.doc.r67840.tar.xz 2023/08/08 | 47295 | systems/texlive/tlnet/tlpkg/translations/messages.pot 2023/08/08 | 4728832 | systems/texlive/tlnet/archive/novel.doc.r67840.tar.xz 2023/08/08 | 4639 | graphics/pgf/contrib/tikzfill/tikzfill-doc.sty -2023/08/08 | 432 | macros/latex/contrib/memoir/doc-src/memman.gst -2023/08/08 | 42311 | macros/latex/contrib/memoir/doc-src/memsty.sty 2023/08/08 | 42059 | graphics/pgf/contrib/tikzfill/tikzfill.tex 2023/08/08 | 4197 | macros/luatex/latex/luacomplex/luacomplex.sty 2023/08/08 | 41277 | macros/latex/contrib/jeuxcartes/doc/JeuxCartes-doc.tex 2023/08/08 | 40961 | macros/latex/contrib/proflycee/doc/ProfLycee-exemples-pythontex.pdf -2023/08/08 | 3977 | macros/latex/contrib/memoir/memoir.ins -2023/08/08 | 389 | macros/latex/contrib/memoir/doc-src/memman.ist -2023/08/08 | 36627 | macros/latex/contrib/memoir/mempatch.dtx -2023/08/08 | 3623212 | install/macros/latex/contrib/memoir.tds.zip -2023/08/08 | 3522153 | macros/latex/contrib/memoir.zip 2023/08/08 | 34968 | systems/texlive/tlnet/archive/tagpdf.r67840.tar.xz 2023/08/08 | 3036 | systems/texlive/tlnet/archive/modeles-factures-belges-assocs.r67840.tar.xz 2023/08/08 | 295284 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.tex -2023/08/08 | 2852 | macros/latex/contrib/memoir/mempatch.ins -2023/08/08 | 2845232 | macros/latex/contrib/memoir/memman.pdf 2023/08/08 | 27432 | systems/texlive/tlnet/archive/luamplib.source.r67840.tar.xz 2023/08/08 | 260140 | systems/texlive/tlnet/archive/modeles-factures-belges-assocs.doc.r67840.tar.xz 2023/08/08 | 258446 | macros/latex/contrib/verbatimbox/verbatimbox.pdf @@ -1075,18 +1549,12 @@ 2023/08/08 | 23340 | macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty 2023/08/08 | 2109884 | systems/texlive/tlnet/archive/tagpdf.doc.r67840.tar.xz 2023/08/08 | 2090 | macros/luatex/latex/lualinalg/README.txt -2023/08/08 | 206 | macros/latex/contrib/memoir/doc-src/Makeidxglo 2023/08/08 | 20696 | systems/texlive/tlnet/archive/tikzpeople.r67840.tar.xz 2023/08/08 | 20611 | macros/latex/contrib/verbatimbox/verbatimbox.tex -2023/08/08 | 203838 | macros/latex/contrib/memoir/doc-src/setpage-example.pdf -2023/08/08 | 17396 | macros/latex/contrib/memoir/doc-src/titlepages.sty 2023/08/08 | 1644 | systems/texlive/tlnet/archive/chronology.r67840.tar.xz 2023/08/08 | 16028 | systems/texlive/tlnet/archive/context-handlecsv.r67840.tar.xz 2023/08/08 | 156876 | systems/texlive/tlnet/archive/luamplib.doc.r67840.tar.xz 2023/08/08 | 15207834 | macros/latex/contrib/jeuxcartes.zip -2023/08/08 | 1520265 | macros/latex/contrib/memoir/doc-src/memman.tex -2023/08/08 | 1518 | macros/latex/contrib/memoir/doc-src/anvil2.mps -2023/08/08 | 14597 | macros/latex/contrib/memoir/doc-src/memlays.sty 2023/08/08 | 1298 | macros/luatex/latex/luacomplex/README.txt 2023/08/08 | 12772 | systems/texlive/tlnet/archive/chronology.doc.r67840.tar.xz 2023/08/08 | 12132 | systems/texlive/tlnet/archive/luamplib.r67840.tar.xz @@ -1096,7 +1564,6 @@ 2023/08/08 | 116132 | systems/texlive/tlnet/archive/novel.r67840.tar.xz 2023/08/08 | 1140 | graphics/pgf/contrib/tikzfill/tikzfill.rhombus.sty 2023/08/08 | 1140 | graphics/pgf/contrib/tikzfill/tikzfill.hexagon.sty -2023/08/08 | 1122850 | macros/latex/contrib/memoir/memoir.dtx 2023/08/08 | 1120 | graphics/pgf/contrib/tikzfill/tikzfill.image.sty 2023/08/08 | 10931 | graphics/pgf/contrib/tikzfill/tikzlibraryfill.image.code.tex 2023/08/08 | 109293 | macros/luatex/latex/luacomplex/luacomplex.pdf @@ -1104,33 +1571,3 @@ 2023/08/08 | 107622 | systems/texlive/tlnet/tlpkg/translations/ru.po 2023/08/08 | 1071216 | macros/latex/contrib/proflycee/doc/ProfLycee-doc.pdf 2023/08/08 | 103515 | systems/texlive/tlnet/tlpkg/translations/sr.po -2023/08/07 | 9953 | macros/luatex/generic/luamplib/NEWS -2023/08/07 | 96212 | macros/luatex/generic/luamplib/luamplib.dtx -2023/08/07 | 7724 | macros/latex/contrib/apa6/samples/bibliography.bib -2023/08/07 | 6908 | macros/latex/contrib/apa6/samples/longsample.tex -2023/08/07 | 6704 | macros/latex/contrib/apa6/apa6.ins -2023/08/07 | 6249 | macros/latex/contrib/apa6/samples/shortsample.tex -2023/08/07 | 603020 | macros/latex/contrib/apa6/apa6.pdf -2023/08/07 | 5611 | macros/luatex/generic/luamplib/test-luamplib-latex.tex -2023/08/07 | 5548 | macros/latex/contrib/apa6/config/APAendfloat.cfg -2023/08/07 | 3872 | macros/luatex/generic/luamplib/test-luamplib-plain.tex -2023/08/07 | 3223 | macros/latex/contrib/apa6/config/APAngerman.txt -2023/08/07 | 3221 | macros/latex/contrib/apa6/config/APAgreek.txt -2023/08/07 | 3214 | macros/latex/contrib/apa6/config/APAgerman.txt -2023/08/07 | 3213 | macros/latex/contrib/apa6/config/APAturkish.txt -2023/08/07 | 3204 | macros/latex/contrib/apa6/config/APAczech.txt -2023/08/07 | 3193 | macros/latex/contrib/apa6/config/APAdutch.txt -2023/08/07 | 3169 | macros/latex/contrib/apa6/config/APAenglish.txt -2023/08/07 | 3169 | macros/latex/contrib/apa6/config/APAamerican.txt -2023/08/07 | 3164 | macros/latex/contrib/apa6/config/APAbritish.txt -2023/08/07 | 2752 | macros/luatex/generic/luamplib/Makefile -2023/08/07 | 2359601 | macros/latex/contrib/tagpdf.zip -2023/08/07 | 202348 | install/macros/luatex/generic/luamplib.tds.zip -2023/08/07 | 1996 | macros/luatex/generic/luamplib/README -2023/08/07 | 187702 | macros/luatex/generic/luamplib.zip -2023/08/07 | 172321 | macros/latex/contrib/apa6/apa6.dtx -2023/08/07 | 153613 | macros/luatex/generic/luamplib/luamplib.pdf -2023/08/07 | 1422 | macros/latex/contrib/apa6/README -2023/08/07 | 13798 | macros/latex/contrib/apa6/pseudoTeX/apa6.ptex -2023/08/07 | 13269 | macros/latex/contrib/apa6/pseudoTeX/TeX2WordForapa6.bas -2023/08/07 | 125713 | systems/texlive/tlnet/install-tl diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib index 8d2aa3bce2..28f1cf3216 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-08-2023, 02:00:44 +%% created at 15-08-2023, 02:01:02 %% %% This file is provided under the terms of the LPPL v1.3 or @@ -35202,6 +35202,17 @@ this source file that each compile differently.}, } +@manual{ctan-joinbox, + title = {The \texttt{joinbox} package}, + subtitle = {Join boxes vertically or horizontally}, + author = {Nan Geng}, + date = {2023-08-14}, + version = {1.0.0}, + license = {lppl1.3c}, + mirror = {https://mirror.ctan.org/macros/latex/contrib/joinbox}, + url = {https://ctan.org/pkg/joinbox}, +} + @manual{ctan-josefin, title = {The \texttt{josefin} package}, subtitle = {Josefin fonts with \LaTeX{} support}, @@ -38770,8 +38781,8 @@ title = {The \texttt{lettrine} package}, subtitle = {Typeset dropped capitals}, author = {Daniel Flipo}, - date = {2023-07-04}, - version = {2.51}, + date = {2023-08-14}, + version = {2.52}, license = {lppl1.3}, mirror = {https://mirror.ctan.org/macros/latex/contrib/lettrine}, url = {https://ctan.org/pkg/lettrine}, @@ -44101,8 +44112,8 @@ title = {The \texttt{memoir} package}, subtitle = {Typeset fiction, non-fiction and mathematical books}, author = {Peter R. Wilson and Lars Madsen}, - date = {2023-08-08}, - version = {3.8}, + date = {2023-08-14}, + version = {3.8a}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/memoir}, url = {https://ctan.org/pkg/memoir}, @@ -48298,8 +48309,8 @@ title = {The \texttt{nicematrix} package}, subtitle = {Improve the typesetting of mathematical matrices with PGF}, author = {François Pantigny}, - date = {2023-07-17}, - version = {6.21a}, + date = {2023-08-14}, + version = {6.22}, license = {lppl1.3}, mirror = {https://mirror.ctan.org/macros/latex/contrib/nicematrix}, url = {https://ctan.org/pkg/nicematrix}, @@ -50838,6 +50849,17 @@ url = {https://ctan.org/pkg/pangram}, } +@manual{ctan-panneauxroute, + title = {The \texttt{panneauxroute} package}, + subtitle = {Commands to display French road signs (vector graphics)}, + author = {Cédric Pierquet}, + date = {2023-08-14}, + version = {0.1.0}, + license = {lppl1.3c,cc-by-sa-3}, + mirror = {https://mirror.ctan.org/macros/latex/contrib/panneauxroute}, + url = {https://ctan.org/pkg/panneauxroute}, +} + @manual{ctan-paper, title = {The \texttt{paper} package}, subtitle = {Versions of article class, tuned for scholarly publications}, @@ -54588,8 +54610,8 @@ title = {The \texttt{ProfCollege} package}, subtitle = {A \LaTeX{} package for French maths teachers in college}, author = {Christophe Poulain}, - date = {2023-08-01}, - version = {0.99-z-q}, + date = {2023-08-14}, + version = {0.99-z-r}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/profcollege}, url = {https://ctan.org/pkg/profcollege}, @@ -54621,8 +54643,8 @@ title = {The \texttt{profmaquette} package}, subtitle = {Use exercises in different types of documents}, author = {Christophe Poulain}, - date = {2023-08-11}, - version = {0.25}, + date = {2023-08-14}, + version = {0.35}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/profmaquette}, url = {https://ctan.org/pkg/profmaquette}, @@ -58524,8 +58546,8 @@ title = {The \texttt{reledmac} package}, subtitle = {Typeset scholarly editions}, author = {Maïeul Rouquette}, - date = {2023-07-21}, - version = {2.39.5}, + date = {2023-08-14}, + version = {2.39.6}, license = {lppl1.3}, mirror = {https://mirror.ctan.org/macros/latex/contrib/reledmac}, url = {https://ctan.org/pkg/reledmac}, @@ -64987,10 +65009,10 @@ title = {The \texttt{substitutefont} package}, subtitle = {Easy font substitution}, author = {Günter Milde}, - date = {2016-06-24}, - version = {0.1.4}, + date = {2023-08-14}, + version = {0.1.5}, license = {lppl1.3}, - mirror = {https://mirror.ctan.org/macros/latex/contrib/substitutefont}, + mirror = {https://mirror.ctan.org/obsolete/macros/latex/contrib/substitutefont}, url = {https://ctan.org/pkg/substitutefont}, } @@ -78429,8 +78451,8 @@ title = {The \texttt{zref-check} package}, subtitle = {Flexible cross-references with contextual checks based on zref}, author = {Gustavo Barros}, - date = {2023-06-14}, - version = {0.3.3}, + date = {2023-08-14}, + version = {0.3.4}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/zref-check}, url = {https://ctan.org/pkg/zref-check}, @@ -78456,8 +78478,8 @@ title = {The \texttt{zref-clever} package}, subtitle = {Clever \LaTeX{} cross-references based on zref}, author = {Gustavo Barros}, - date = {2023-06-19}, - version = {0.4.1}, + date = {2023-08-14}, + version = {0.4.2}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/zref-clever}, url = {https://ctan.org/pkg/zref-clever}, diff --git a/biblio/ctan-bibdata/ctan.pdf b/biblio/ctan-bibdata/ctan.pdf index 4e060ec8a7..0eb2bf7722 100644 Binary files a/biblio/ctan-bibdata/ctan.pdf and b/biblio/ctan-bibdata/ctan.pdf differ diff --git a/macros/latex/contrib/lettrine/doc/lettrine-demo-de.pdf b/macros/latex/contrib/lettrine/doc/lettrine-demo-de.pdf index 4b3ff4d6e1..84ba7a4344 100644 Binary files a/macros/latex/contrib/lettrine/doc/lettrine-demo-de.pdf and b/macros/latex/contrib/lettrine/doc/lettrine-demo-de.pdf differ diff --git a/macros/latex/contrib/lettrine/doc/lettrine-demo-fr.pdf b/macros/latex/contrib/lettrine/doc/lettrine-demo-fr.pdf index c616adba03..a780c1c0a6 100644 Binary files a/macros/latex/contrib/lettrine/doc/lettrine-demo-fr.pdf and b/macros/latex/contrib/lettrine/doc/lettrine-demo-fr.pdf differ diff --git a/macros/latex/contrib/lettrine/doc/lettrine-demo-lua.pdf b/macros/latex/contrib/lettrine/doc/lettrine-demo-lua.pdf index cc433b0fab..a88972db81 100644 Binary files a/macros/latex/contrib/lettrine/doc/lettrine-demo-lua.pdf and b/macros/latex/contrib/lettrine/doc/lettrine-demo-lua.pdf differ diff --git a/macros/latex/contrib/lettrine/doc/lettrine.pdf b/macros/latex/contrib/lettrine/doc/lettrine.pdf index ad1c4ac4c0..0fde23f12d 100644 Binary files a/macros/latex/contrib/lettrine/doc/lettrine.pdf and b/macros/latex/contrib/lettrine/doc/lettrine.pdf differ diff --git a/macros/latex/contrib/lettrine/lettrine.dtx b/macros/latex/contrib/lettrine/lettrine.dtx index 3c1a191780..4f17f5f6b6 100644 --- a/macros/latex/contrib/lettrine/lettrine.dtx +++ b/macros/latex/contrib/lettrine/lettrine.dtx @@ -106,7 +106,7 @@ \ProvidesFile{lettrine.dtx} % %<*sty|dtx> - [2023-07-04 v2.51 (Daniel Flipo)] + [2023-08-14 v2.52 (Daniel Flipo)] % % \fi % @@ -182,10 +182,21 @@ % this requires the |graphicx| package to be loaded in the preamble. % |\lettrine[image=true]{A}{n exemple}|\quad or just\\ % |\lettrine[image]{A}{n exemple}|\\ -% will load |A.eps|, |A.jpg|, |A.png| or |A.pdf| instead of letter~A.\\ -% N.B.: Redefining |\LettrineFont| as |\LettrineFontEPS| is no longer -% supported and |\LettrineFontEPS| has been renamed as -% |\LettrineImage|. +% will load |A.eps|, |A.jpg|, |A.png| or |A.pdf| instead of letter~A. +% +% \changes{v2.52}{2023/08/14}{New option`viewport’ to be passed to +% \cs{includegraphics}.} +% +% \item \lopt{viewport=}\meta{llx lly urx ury} is passed to +% |\includegraphics| (same four dimen parameters); when present, +% |\lettrine| only considers the contents of the rectangle defined by +% its lower left and upper right corners to compute the size of the +% final image. It’s up to the user to deal with the rest of the +% image… f.i.\ providing a |\vspace*{...}| in case a significant part +% sticks out on top of the defined rectangle. This option may be +% useful in some special cases, see +% \url{https://tex.stackexchange.com/questions/693270/} or when the +% image’s bounding box is inaccurate. % % \changes{v1.8}{2015/02/06}{Added two keyval options: % `grid’ (true/false) and `novskip’ to override \cs{DiscardVskip}.} @@ -276,8 +287,9 @@ % specified as options passed to the \pkg{lettrine} \emph{package}. % These options are the same as those of the |\lettrine| command % previously described% -% \footnote{With the exception of \lopt{ante} which doesn’t make -% sense for a global usage.}: f.i. |\usepackage[lines=3]{lettrine}| +% \footnote{With the exception of \lopt{ante} and \lopt{viewport} +% which do not make sense for a global usage.}: +% f.i.\ |\usepackage[lines=3]{lettrine}| % will set the default to three lines of text. % Options passed to the \pkg{lettrine} package override the defaults % set in the \file{lettrine.cfg} file (see below) and will be @@ -333,7 +345,7 @@ % % A hook |\LettrineFontHook| is provided to change the font % used for the dropped capital, syntax follows LaTeX’s -% low-level font interface (see LaTeX Companion, p.187--192), +% low-level font interface (see LaTeX Companion III, section~I-9.3), % the |\selectfont| command is issued by |\LettrineFont|:\\ % |\renewcommand{\LettrineFontHook}{\fontfamily{ppl}|\ignorespaces % |\fontseries{bx}%|\\ @@ -354,7 +366,7 @@ % mention the cm-super fonts and the type1ec package by % Vladimir Volovich.} % -% \vspace{\baselineskip} +% \vspace{.5\baselineskip} % \textbf{Important notice:} % the sizing works fine with \emph{fully scalable} fonts (like the % standard PostScript or OpenType fonts), but might not work well @@ -386,7 +398,7 @@ % (Palatino, Times, Utopia…), or any OpenType font, they are % fully scalable too! % -% \newpage +% \vspace{.5\baselineskip} % \textbf{Breaking change in version~2.50:} in order to improve the % alignment of side by side parboxes starting with a dropped cap, the % internals of the |\lettrine{}| command have changed. Formerly, the @@ -404,6 +416,7 @@ % for an example. Using the rollback mechanism to switch back to % version~2.40 is another option: |\usepackage{lettrine}[=v2.4]|. % +% \vspace{.5\baselineskip} % \textbf{Known issues:} % \begin{itemize} % \item Nothing is done to prevent page-breaking in a paragraph @@ -552,6 +565,7 @@ \newif\ifL@image \newif\ifL@grid \newif\ifL@realh +\newcommand*{\L@viewport}{} % \end{macrocode} % % \begin{macro}{\LettrineTestString} @@ -606,7 +620,7 @@ image.if = LettrineImage , grid.if = LettrineOnGrid , realheight.if = LettrineRealHeight , - refstring.default:n = \l@initial , + refstring.default:n = \L@initial , refstring.store = \LettrineTestString , optionsfile.store = \DefaultOptionsFile } @@ -629,10 +643,11 @@ slope.code = \setlength{\L@slope}{#1} , novskip.code = \setlength{\L@novskip}{#1} , image.if = L@image , + viewport.store = \L@viewport , grid.if = L@grid , realheight.if = L@realh , - refstring.default:n = \l@initial , - refstring.store = \l@refstring + refstring.default:n = \L@initial , + refstring.store = \L@refstring } % \end{macrocode} % @@ -770,10 +785,10 @@ % In most cases, the default is a better choice . % \begin{macrocode} \def\compute@fontsize{% - \ifx\l@refstring\@empty + \ifx\L@refstring\@empty \def\Lettrine@RefString{\LettrineTestString}% \else - \def\Lettrine@RefString{\l@refstring}% + \def\Lettrine@RefString{\L@refstring}% \fi \sbox{\@tempboxa}{\LettrineFontHook \fontsize{\L@height}{\L@height}\selectfont @@ -803,30 +818,6 @@ % \end{macrocode} % \end{macro} % -% \changes{v0.9}{1998/03/13}{\cs{LettrineFontEPS} added.} -% -% \changes{v2.21}{2018/08/28}{\cs{LettrineFontEPS} renamed as -% \cs{LettrineImage}.} -% -% \begin{macro}{\LettrineImage} -% The following definition is for use with dropped capitals defined -% as images: EPS, PDF, JPG, PNG files (see examples in -% lettrine-demo-fr.tex). -% Its requires the |graphicx| package to be loaded in the -% preamble with |\usepackage{graphicx}|. The image’s height is -% computed just as in the standard case and passed to -% |\includegraphics|. -% -% \changes{v1.6}{2004/05/22}{Added \cs{LettrineFontHook} -% to \cs{LettrineFontEPS}. This is needed for color options.} -% -% \begin{macrocode} -\newcommand*{\LettrineImage}{% - \LettrineFontHook\includegraphics[height=\L@height]% -} -% \end{macrocode} -% \end{macro} -% % \begin{macro}{\setupL@lbox} % The next (internal) command computes the requested size for the % initial (letter or image) and prepares a box |\L@lbox| holding it. @@ -834,10 +825,17 @@ \def\setupL@lbox{% \computeL@height \ifL@image - \sbox{\L@lbox}{\LettrineImage{\l@initial}}% + \ifx\L@viewport\@empty + \sbox{\L@lbox}{\includegraphics[height=\L@height]{\L@initial}}% + \else + \sbox{\L@lbox}{% + \expanded{\noexpand\includegraphics% + [viewport=\L@viewport, height=\L@height]{\L@initial}% + }}% + \fi \else \compute@fontsize - \sbox{\L@lbox}{\LettrineFont \l@initial}% + \sbox{\L@lbox}{\LettrineFont \L@initial}% \fi } % \end{macrocode} @@ -854,18 +852,18 @@ % % \begin{macrocode} \newcommand*{\LettrineOptionsFor}[2]{% - \edef\l@tmpa{#1}% + \edef\L@tmpa{#1}% % \end{macrocode} % Gobble potential color commands for the initial. % \begin{macrocode} \begingroup - \def\color##1##{\l@color{##1}}% - \let\l@color\@gobbletwo - \def\textcolor##1##{\l@textcolor{##1}}% - \def\l@textcolor##1##2##3{##3}% - \xdef\l@tmpb{\l@initial}% + \def\color##1##{\L@color{##1}}% + \let\L@color\@gobbletwo + \def\textcolor##1##{\L@textcolor{##1}}% + \def\L@textcolor##1##2##3{##3}% + \xdef\L@tmpb{\L@initial}% \endgroup - \ifx\l@tmpa\l@tmpb \SetKeys[LettrineLocal]{#2}\fi + \ifx\L@tmpa\L@tmpb \SetKeys[LettrineLocal]{#2}\fi } % \end{macrocode} % \end{macro} @@ -876,7 +874,7 @@ % \begin{macrocode} \def\lettrine{\@ifnextchar[\@lettrine{\@lettrine[]}} \def\@lettrine[#1]#2#3{% - \def\l@initial{#2}\let\l@refstring\@empty + \def\L@initial{#2}\def\L@refstring{}\def\L@viewport{}% % \end{macrocode} % % \changes{v1.9}{2015/08/31}{\cs{theDefaultLines} changed to @@ -930,7 +928,7 @@ % config file \cs{DefaultOptionsFile}.} % Then try to read an optional file (its name is given by % |\DefaultOptionsFile|), do this inside a group, and define a -% global command |\l@LOKeys| which will expand to the list of +% global command |\L@LOKeys| which will expand to the list of % options given by |\LettrineOptionsFor| for the current initial % (defined by |#2|)… % diff --git a/macros/latex/contrib/memoir/README b/macros/latex/contrib/memoir/README index 0edb2a1741..7ad41300bf 100644 --- a/macros/latex/contrib/memoir/README +++ b/macros/latex/contrib/memoir/README @@ -22,6 +22,13 @@ un-updated LaTeX systems and we often make no attempt to be backwards compatible. Instead we assume that users use updated memoir with an updated LaTeX installation. +Changes (2023/08/14) + +o memoir v3.8a + +-- forgot to enable the announced stop if the LaTeX format is to old. +-- updated the bibliography to more recent years. + Changes (2023/08/08) o memoir v3.8 diff --git a/macros/latex/contrib/memoir/doc-src/memman.tex b/macros/latex/contrib/memoir/doc-src/memman.tex index c95b8a0dae..c233cfecd9 100644 --- a/macros/latex/contrib/memoir/doc-src/memman.tex +++ b/macros/latex/contrib/memoir/doc-src/memman.tex @@ -32640,8 +32640,8 @@ than Archibald Smythe University will permit. \svnidlong {$Ignore: $} -{$LastChangedDate: 2018-09-06 15:05:23 +0200 (Thu, 06 Sep 2018) $} -{$LastChangedRevision: 612 $} +{$LastChangedDate: 2023-08-14 12:41:03 +0200 (Mon, 14 Aug 2023) $} +{$LastChangedRevision: 777 $} {$LastChangedBy: daleif@math.au.dk $} \chapter{Packages and macros} @@ -32654,7 +32654,8 @@ additional macros, some of which I will show you. \section{Packages} The packages that I have used that you are likely to have, and if -you do not have them please consider getting them, are: +you do not have them please consider getting them, +are:\fxnote[author=dlf,vadj=0em]{2023/08/10: rewrite} \begin{itemize} \item \Lpack{etex} lets you take advantage of e\tx's extended support for counters and such. @@ -32668,14 +32669,14 @@ you do not have them please consider getting them, are: \verb|\RequirePackage{etex}| \emph{before} \cs{documentclass}! \item \Lpack{url}~\cite{URL} is for typesetting URL's without worrying about special characters or line breaking. -\item \Lpack{fixltx2e}~\cite{FIXLTX2E} eliminates some infelicities - of the original LaTeX kernel. In particular it maintains the order - of floats\index{float} on a twocolumn\index{column!double} page - and ensures the correct marking - on a twocolumn\index{column!double} page. +% \item \Lpack{fixltx2e}~\cite{FIXLTX2E} eliminates some infelicities +% of the original LaTeX kernel. In particular it maintains the order +% of floats\index{float} on a twocolumn\index{column!double} page +% and ensures the correct marking +% on a twocolumn\index{column!double} page. - Note that as of 2015, the functionality of this package has been - merged into the \LaTeX{} kernel. Loading this package does nothing. +% Note that as of 2015, the functionality of this package has been +% merged into the \LaTeX{} kernel. Loading this package does nothing. \item \Lpack{alltt}~\cite{ALLTT} is a basic package which provides a @@ -38967,1381 +38968,2016 @@ end if access CTAN is available at \url{http://www.tug.org}. \par\vspace{\onelineskip}} -%%%\begin{comment} -\begin{thebibliography}{GMS94A} -\small +% %\begin{comment} -%%% keep -\bibitem[AHK90]{IMPATIENT} - Paul W. Abrahams, Kathryn Hargreaves and Karl Berry. - \newblock \emph{TeX for the Impatient}. - \newblock Addison-Wesley, 1990. - \newblock (Available at - \url{ftp://tug.org/tex/impatient}) +% %%%\begin{comment} +% \begin{thebibliography}{GMS94A} +% \small -\begin{comment} -\bibitem[Ado01]{ADOBEBOOK} - \emph{How to Create Adobe PDF eBooks}. - \newblock Adobe Systems Inc., - \newblock 2001. - \newblock (Available from - \url{http://www.adobe.com/epaper/tips/acr5ebook/pdfs/eBook.pdf}) -\end{comment} +% %%% keep +% \bibitem[AHK90]{IMPATIENT} +% Paul W. Abrahams, Kathryn Hargreaves and Karl Berry. +% \newblock \emph{TeX for the Impatient}. +% \newblock Addison-Wesley, 1990. +% \newblock (Available at +% \url{ftp://tug.org/tex/impatient}) -\LMnote{2010/09/28}{Added the \cs{CTANurl}'s and verified them} +% \begin{comment} +% \bibitem[Ado01]{ADOBEBOOK} +% \emph{How to Create Adobe PDF eBooks}. +% \newblock Adobe Systems Inc., +% \newblock 2001. +% \newblock (Available from +% \url{http://www.adobe.com/epaper/tips/acr5ebook/pdfs/eBook.pdf}) +% \end{comment} -%%% keep -\bibitem[Ars99]{URL} - Donald Arseneau. - \newblock \emph{The url package}. - \newblock February, 1999. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/url/}) +% \LMnote{2010/09/28}{Added the \cs{CTANurl}'s and verified them} -%%% keep -% \bibitem[Ars01a]{TITLEREF} +% %%% keep +% \bibitem[Ars99]{URL} % Donald Arseneau. -% \newblock \emph{The titleref package}. -% \newblock April, 2001. +% \newblock \emph{The url package}. +% \newblock February, 1999. % \newblock (Available from CTAN via -% \CTANurl{/macros/latex/contrib/titleref/}) - -%%% keep -\bibitem[Ars01b]{CHAPTERBIB} - Donald Arseneau. - \newblock \emph{The chapterbib package}. - \newblock September, 2001. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/cite/}) - -%%% keep -\bibitem[Ars07]{FRAMED} - Donald Arseneau. - \newblock \emph{The framed package} v0.95. - \newblock October, 2007. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/framed/}) +% \CTANurl{/macros/latex/contrib/url/}) + +% %%% keep +% % \bibitem[Ars01a]{TITLEREF} +% % Donald Arseneau. +% % \newblock \emph{The titleref package}. +% % \newblock April, 2001. +% % \newblock (Available from CTAN via +% % \CTANurl{/macros/latex/contrib/titleref/}) + +% %%% keep +% \bibitem[Ars01b]{CHAPTERBIB} +% Donald Arseneau. +% \newblock \emph{The chapterbib package}. +% \newblock September, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/cite/}) -\begin{comment} -\bibitem[Bar92]{BAROLINI92} - Helen Barolini. - \newblock \emph{Aldus and his Dream Book}. - \newblock Italica Press, 1992. - \newblock ISBN 0--934977--22--4. - -\bibitem[Bar01]{BARTRAM01} - Alan Bartram. - \newblock \emph{Five hundred years of book design}. - \newblock Yale university Press, 2001. - \newblock ISBN 0--300--09058--7. - \newblock (First published 2001 by The British Library) - -\bibitem[BDG89]{BIGELOW89} - Charles Bigelow, Paul Hayden Duensing and Linnea Gentry (Eds). - \newblock \emph{Fine Print on Type}. 1989. - \newblock Fine Print, CA (ISBN 0--9607290-X) or - \newblock Bedford Arts, CA (ISBN 0--938491--17--2). - -\bibitem[Boh90]{BOHLE90} - Robert Bohle. - \newblock \emph{Publication Design for Editors}. - \newblock Prentice-Hall, - \newblock 1990. -\end{comment} +% %%% keep +% \bibitem[Ars07]{FRAMED} +% Donald Arseneau. +% \newblock \emph{The framed package} v0.95. +% \newblock October, 2007. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/framed/}) -%%% keep -\bibitem[Ber02]{JURABIB} - Jens Berger. - \newblock \emph{The titlesec and titletoc packages}. - \newblock September, 2002. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/titlesec/}) - -%%% keep -\bibitem[Bez99]{TITLESEC} - Javier Bezos. - \newblock \emph{The titlesec and titletoc packages}. - \newblock February, 1999. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/titlesec/}) +% \begin{comment} +% \bibitem[Bar92]{BAROLINI92} +% Helen Barolini. +% \newblock \emph{Aldus and his Dream Book}. +% \newblock Italica Press, 1992. +% \newblock ISBN 0--934977--22--4. + +% \bibitem[Bar01]{BARTRAM01} +% Alan Bartram. +% \newblock \emph{Five hundred years of book design}. +% \newblock Yale university Press, 2001. +% \newblock ISBN 0--300--09058--7. +% \newblock (First published 2001 by The British Library) + +% \bibitem[BDG89]{BIGELOW89} +% Charles Bigelow, Paul Hayden Duensing and Linnea Gentry (Eds). +% \newblock \emph{Fine Print on Type}. 1989. +% \newblock Fine Print, CA (ISBN 0--9607290-X) or +% \newblock Bedford Arts, CA (ISBN 0--938491--17--2). + +% \bibitem[Boh90]{BOHLE90} +% Robert Bohle. +% \newblock \emph{Publication Design for Editors}. +% \newblock Prentice-Hall, +% \newblock 1990. +% \end{comment} -\bibitem[Bir04]{BIRDSALL04} - Derek Birdsall. - \newblock \emph{notes on book design}. - \newblock Yale University Press, 2004. - \newblock ISBN 0--300--10347--6. +% %%% keep +% \bibitem[Ber02]{JURABIB} +% Jens Berger. +% \newblock \emph{The jurabib packages}. +% \newblock January, 2004. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/jurabib/}) + +% %%% keep +% \bibitem[Bez99]{TITLESEC} +% Javier Bezos. +% \newblock \emph{The titlesec and titletoc packages}. +% \newblock February, 1999. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/titlesec/}) + +% \bibitem[Bir04]{BIRDSALL04} +% Derek Birdsall. +% \newblock \emph{notes on book design}. +% \newblock Yale University Press, 2004. +% \newblock ISBN 0--300--10347--6. -\begin{comment} -\bibitem[Bra94]{MAKEIDX} - Johannes Braams \textit{et al}. - \newblock \emph{Standard LaTeX2e packages makeidx and showidx}. - \newblock November, 1994. - \newblock (Available from CTAN as - \url{/macros/latex/base/makeindx.dtx(ins)}) -\end{comment} +% \begin{comment} +% \bibitem[Bra94]{MAKEIDX} +% Johannes Braams \textit{et al}. +% \newblock \emph{Standard LaTeX2e packages makeidx and showidx}. +% \newblock November, 1994. +% \newblock (Available from CTAN as +% \url{/macros/latex/base/makeindx.dtx(ins)}) +% \end{comment} -%%% keep -\bibitem[Bra97]{ALLTT} - Johannes Braams. - \newblock \emph{The alltt environment}. - \newblock June, 1997. - \newblock (Available as \texttt{alltt.dtx} and - \texttt{alltt.ins} from CTAN via \CTANurl{/macros/latex/base/}) +% %%% keep +% \bibitem[Bra97]{ALLTT} +% Johannes Braams. +% \newblock \emph{The alltt environment}. +% \newblock June, 1997. +% \newblock (Available as \texttt{alltt.dtx} and +% \texttt{alltt.ins} from CTAN via \CTANurl{/macros/latex/base/}) -\bibitem[Bra20]{SOURCE2E} - Johannes Braams \textit{et al}. - \newblock \emph{The \LaTeXe\ Sourses}. - \newblock October, 2020. - \newblock (Available from CTAN via \CTANurl{/pkg/source2e}) +% \bibitem[Bra20]{SOURCE2E} +% Johannes Braams \textit{et al}. +% \newblock \emph{The \LaTeXe\ Sourses}. +% \newblock October, 2020. +% \newblock (Available from CTAN via \CTANurl{/pkg/source2e}) -%%% keep -\bibitem[Bri99]{BRINGHURST99} - Robert Bringhurst. - \newblock \emph{The Elements of Typographic Style}. - \newblock Hartley \& Marks, second edition, - \newblock 1999. ISBN 0--88179--033--8. +% %%% keep +% \bibitem[Bri99]{BRINGHURST99} +% Robert Bringhurst. +% \newblock \emph{The Elements of Typographic Style}. +% \newblock Hartley \& Marks, second edition, +% \newblock 1999. ISBN 0--88179--033--8. -\begin{comment} -\bibitem[Bur59]{BURT59} - C.~L.~Burt. - \newblock \emph{A Psychological Study of Typography}. - \newblock Cambridge University Press, - \newblock 1959. -\end{comment} +% \begin{comment} +% \bibitem[Bur59]{BURT59} +% C.~L.~Burt. +% \newblock \emph{A Psychological Study of Typography}. +% \newblock Cambridge University Press, +% \newblock 1959. +% \end{comment} -%%% keep -\bibitem[Car14]{DELARRAY} - David Carlisle. - \newblock \emph{The delarray package}. - \newblock October, 2014. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/required/tools/}) - -%%% keep -\bibitem[Car95]{AFTERPAGE} - David Carlisle. - \newblock \emph{The afterpage package}. - \newblock October, 1995. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/required/tools/}) - -%%% keep -\bibitem[Car21]{LONGTABLE} - David Carlisle. - \newblock \emph{The longtable package}. - \newblock May, 2021. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/required/tools/}) - -%%% keep -\bibitem[Car98c]{ENUMERATE} - David Carlisle. - \newblock \emph{The enumerate package}. - \newblock August, 1998. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/required/tools/}) +% %%% keep +% \bibitem[Car14]{DELARRAY} +% David Carlisle. +% \newblock \emph{The delarray package}. +% \newblock October, 2014. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/required/tools/}) -\begin{comment} -\bibitem[Car98d]{REMRESET} - David Carlisle. - \newblock \emph{The remreset package}. - \newblock August, 1998. - \newblock (Available from CTAN in - \url{/macros/latex/contrib/carlisle}) -\end{comment} +% %%% keep +% \bibitem[Car95]{AFTERPAGE} +% David Carlisle. +% \newblock \emph{The afterpage package}. +% \newblock October, 1995. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/required/tools/}) -%%% keep -\LMnote{2018/09/06}{Updated year} -\bibitem[Car16]{TABULARX} - David Carlisle. - \newblock \emph{The tabularx package}. - \newblock February, 2016. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/required/tools/}) - -%%% keep -\bibitem[CR99]{GRAPHICX} - David Carlisle and Sebastian Rahtz. - \newblock \emph{The graphicx package}. - \newblock February, 1999. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/required/graphics/}) - -%%% keep -\LMnote{2018/09/06}{updated year} -\bibitem[Car14]{DCOLUMN} - David Carlisle. - \newblock \emph{The dcolumn package}. - \newblock May, 2001. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/required/tools/}) - -\LMnote{2019/10/2}{Updated year} -\bibitem[Car19]{textcase} % casing intentional - David Carlisle. -\newblock \emph{The \Lpack{textcase} package}. -\newblock September, 2019. -\newblock (Available from CTAN in - \texttt{/macros/latex/contrib/textcase}) - - - -%%% keep -\bibitem[Car05]{COLOR} - David Carlisle. - \newblock \emph{Packages in the graphics bundle} (includes the color package). - \newblock November, 2005. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/required/graphics/}) +% %%% keep +% \bibitem[Car21]{LONGTABLE} +% David Carlisle. +% \newblock \emph{The longtable package}. +% \newblock May, 2021. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/required/tools/}) -\begin{comment} -%%% keep, not anymore, the bidi package is a bit different now, Vafa -%%% is the maintainer - \bibitem[CK09]{BIDI} Fran\c{c}ois Charette and Vafa - Khalighi. \newblock \emph{Bidi: A convenient interface - for typesetting bidirectional texts with XeLaTeX}. - \newblock 2009. \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/bidi/}) -\end{comment} +% %%% keep +% \bibitem[Car98c]{ENUMERATE} +% David Carlisle. +% \newblock \emph{The enumerate package}. +% \newblock August, 1998. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/required/tools/}) +% \begin{comment} +% \bibitem[Car98d]{REMRESET} +% David Carlisle. +% \newblock \emph{The remreset package}. +% \newblock August, 1998. +% \newblock (Available from CTAN in +% \url{/macros/latex/contrib/carlisle}) +% \end{comment} +% %%% keep +% \LMnote{2018/09/06}{Updated year} +% \bibitem[Car16]{TABULARX} +% David Carlisle. +% \newblock \emph{The tabularx package}. +% \newblock February, 2016. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/required/tools/}) +% %%% keep +% \bibitem[CR99]{GRAPHICX} +% David Carlisle and Sebastian Rahtz. +% \newblock \emph{The graphicx package}. +% \newblock February, 1999. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/required/graphics/}) + +% %%% keep +% \LMnote{2018/09/06}{updated year} +% \bibitem[Car14]{DCOLUMN} +% David Carlisle. +% \newblock \emph{The dcolumn package}. +% \newblock May, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/required/tools/}) -%%% keep -\bibitem[CB99]{CHAPPELL99} - Warren Chappell and Robert Bringhurst. - \newblock \emph{A Short History of the Printed Word}. - \newblock Hartley \& Marks, 1999. - \newblock ISBN 0--88179--154--7. +% \LMnote{2019/10/2}{Updated year} +% \bibitem[Car19]{textcase} % casing intentional +% David Carlisle. +% \newblock \emph{The \Lpack{textcase} package}. +% \newblock September, 2019. +% \newblock (Available from CTAN in +% \texttt{/macros/latex/contrib/textcase}) -%%% keep -\bibitem[CH88]{CHEN88} - Pehong Chen and Michael A.~Harrison. - \newblock `Index Preparation and Processing'. - \newblock \emph{Software: Practice and Experience}, 19:8, pp. 897--915, - September, 1988. - \newblock (Available from CTAN via - \CTANurl{/indexing/makeindex/paper/}) -\begin{comment} -\bibitem[Che05]{CHENG05} - Karen Cheng. - \newblock \emph{Designing Type}. - \newblock Yale University Press, 2005. - \newblock ISBN 0--300--11150--9. -\end{comment} -%%% keep -\bibitem[Chi93]{CMS} - \newblock \emph{The Chicago Manual of Style}, Fourteenth Edition. - \newblock The University of Chicago, 1993. - \newblock ISBN 0--226--10389--7. +% %%% keep +% \bibitem[Car05]{COLOR} +% David Carlisle. +% \newblock \emph{Packages in the graphics bundle} (includes the color package). +% \newblock November, 2005. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/required/graphics/}) +% \begin{comment} +% %%% keep, not anymore, the bidi package is a bit different now, Vafa +% %%% is the maintainer +% \bibitem[CK09]{BIDI} Fran\c{c}ois Charette and Vafa +% Khalighi. \newblock \emph{Bidi: A convenient interface +% for typesetting bidirectional texts with XeLaTeX}. +% \newblock 2009. \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/bidi/}) +% \end{comment} -\begin{comment} -\bibitem[Coc02]{SUBFIGURE} - Steven Douglas Cochran. - \newblock \emph{The subfigure package}. - \newblock March, 2002. - \newblock (Available from CTAN in - \url{/macros/latex/contrib/subfigure}) - -\bibitem[CG96]{CONWAY96} - John H.~Conway and Richard K.~Guy. - \newblock \emph{The Book of Numbers}. - \newblock Copernicus, Springer-Verlag, 1996. - \newblock ISBN 0--387--97993--X. - -\bibitem[Cra92]{CRAIG92} - James Craig. - \newblock \emph{Designing with Type: A Basic Course in Typography}. - \newblock Watson-Guptill, NY, - \newblock 1992. -\end{comment} -%%% keep -\bibitem[Dal99a]{NATBIB} - Patrick W.~Daly. - \newblock \emph{Natural Sciences Citations and References}. - \newblock May, 1999. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/natbib/}) - -%%% keep -\bibitem[Dal99b]{MAKEBST} - Patrick W.~Daly. - \newblock \emph{Customizing Bibliographic Style Files}. - \newblock August, 1999. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/custom-bib}) -\begin{comment} -\bibitem[Deg92]{DEGANI92} - Asaf Degani. - \newblock \emph{On the Typography of Flight-Deck Documentation}. - \newblock NASA Contractor Report \# 177605. - \newblock December, 1992. - \newblock (Available from - \url{http://members.aol.com/willadams/typgrphy.htm#NASA}) -\end{comment} -%%% keep -\bibitem[Dow96]{DOWDING96} - Geoffrey Dowding. - \newblock \emph{Finer Points in the Spacing \& Arrangement of Type}. - \newblock Hartley \& Marks, 1996. - \newblock ISBN 0--88179--119--9. +% %%% keep +% \bibitem[CB99]{CHAPPELL99} +% Warren Chappell and Robert Bringhurst. +% \newblock \emph{A Short History of the Printed Word}. +% \newblock Hartley \& Marks, 1999. +% \newblock ISBN 0--88179--154--7. -\begin{comment} -\bibitem[Dow98]{DOWDING98} - Geoffrey Dowding. - \newblock \emph{An Introduction to the History of Printing Types}. - \newblock The British Library and Oak Knoll Press, 1998. - \newblock ISBN 0--7123--4563--9 \textsc{uk}, - 1--884718--44--2 \textsc{usa}. -\end{comment} +% %%% keep +% \bibitem[CH88]{CHEN88} +% Pehong Chen and Michael A.~Harrison. +% \newblock `Index Preparation and Processing'. +% \newblock \emph{Software: Practice and Experience}, 19:8, pp. 897--915, +% September, 1988. +% \newblock (Available from CTAN via +% \CTANurl{/indexing/makeindex/paper/}) -%%% keep -\bibitem[Dow00]{PATCHCMD} - Michael J.~Downes. - \newblock \emph{The patchcmd package}. - \newblock July, 2000. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/patchcmd/}) - -%%% keep -\bibitem[Eij92]{TEXBYTOPIC} - Victor Eijkhout. - \newblock \emph{TeX by Topic}. - \newblock Addison-Wesley, 1992. - \newblock ISBN 0--201--56882--9. - \newblock (Available from \url{http://www.eijkhout.net/tbt/}). - -%%% keep -\bibitem[Eij99]{COMMENT} - Victor Eijkhout. - \newblock \emph{comment.sty} - \newblock October, 1999. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/comment/}) +% \begin{comment} +% \bibitem[Che05]{CHENG05} +% Karen Cheng. +% \newblock \emph{Designing Type}. +% \newblock Yale University Press, 2005. +% \newblock ISBN 0--300--11150--9. +% \end{comment} -\begin{comment} -\bibitem[Fai98]{MOREVERB} - Robin Fairbairns. - \newblock \emph{The moreverb package}. - \newblock December, 1998. - \newblock (Available from CTAN in - \url{/macros/latex/contrib/moreverb}) -\end{comment} +% %%% keep +% \bibitem[Chi93]{CMS} +% \newblock \emph{The Chicago Manual of Style}, Fourteenth Edition. +% \newblock The University of Chicago, 1993. +% \newblock ISBN 0--226--10389--7. -%%% keep -\bibitem[Fai00]{FOOTMISC} - Robin Fairbairns. - \newblock \emph{footmisc --- a portmanteau package for customising - footnotes in LaTeX2e}. - \newblock March, 2000. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/footmisc/}) - -%%% keep -\LMnote{2010/09/28}{link changed} -\bibitem[FAQ]{FAQ} - Robin Fairbairns. - \newblock \emph{The UK TeX FAQ}. - \newblock (Available from CTAN via - \url{http://faq.tug.org/}) -\LMnote{2010/02/08}{Added from the main bib file} -\bibitem[Far90]{FARIN90} -Gerald Farin. -\newblock \emph{Curves and Surfaces for Computer Aided Geometric - Design --- A Practical Guide}. -\newblock Academic Press, 2 edition, 1990. +% \begin{comment} +% \bibitem[Coc02]{SUBFIGURE} +% Steven Douglas Cochran. +% \newblock \emph{The subfigure package}. +% \newblock March, 2002. +% \newblock (Available from CTAN in +% \url{/macros/latex/contrib/subfigure}) + +% \bibitem[CG96]{CONWAY96} +% John H.~Conway and Richard K.~Guy. +% \newblock \emph{The Book of Numbers}. +% \newblock Copernicus, Springer-Verlag, 1996. +% \newblock ISBN 0--387--97993--X. + +% \bibitem[Cra92]{CRAIG92} +% James Craig. +% \newblock \emph{Designing with Type: A Basic Course in Typography}. +% \newblock Watson-Guptill, NY, +% \newblock 1992. +% \end{comment} -\LMnote{2010/02/08}{Added from the main bib file} -\bibitem[FP80]{FAUX80} -I.~D. Faux and M.~J. Pratt. -\newblock {\em Computational Geometry for Design and Manufacture}. -\newblock Ellis Horwood, 1980. +% %%% keep +% \bibitem[Dal99a]{NATBIB} +% Patrick W.~Daly. +% \newblock \emph{Natural Sciences Citations and References}. +% \newblock May, 1999. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/natbib/}) +% %%% keep +% \bibitem[Dal99b]{MAKEBST} +% Patrick W.~Daly. +% \newblock \emph{Customizing Bibliographic Style Files}. +% \newblock August, 1999. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/custom-bib}) +% \begin{comment} +% \bibitem[Deg92]{DEGANI92} +% Asaf Degani. +% \newblock \emph{On the Typography of Flight-Deck Documentation}. +% \newblock NASA Contractor Report \# 177605. +% \newblock December, 1992. +% \newblock (Available from +% \url{http://members.aol.com/willadams/typgrphy.htm#NASA}) +% \end{comment} -%%% keep -\LMnote{2018/09/06}{Updated year} -\bibitem[Fea16]{BOOKTABS} - Simon Fear. - \newblock \emph{Publication quality tables in LaTeX}. - \newblock April, 2016. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/booktabs}) +% %%% keep +% \bibitem[Dow96]{DOWDING96} +% Geoffrey Dowding. +% \newblock \emph{Finer Points in the Spacing \& Arrangement of Type}. +% \newblock Hartley \& Marks, 1996. +% \newblock ISBN 0--88179--119--9. -\begin{comment} -\bibitem[Fli98]{LETTRINE} - Daniel Flipo. - \newblock \emph{Typesetting `lettrines' in LaTeX2e documents}. - \newblock March, 1998. - \newblock (Available from CTAN in - \url{/macros/latex/contrib/lettrine}) -\end{comment} +% \begin{comment} +% \bibitem[Dow98]{DOWDING98} +% Geoffrey Dowding. +% \newblock \emph{An Introduction to the History of Printing Types}. +% \newblock The British Library and Oak Knoll Press, 1998. +% \newblock ISBN 0--7123--4563--9 \textsc{uk}, +% 1--884718--44--2 \textsc{usa}. +% \end{comment} -%%% keep -\bibitem[Fly98]{FLYNN02} - Peter Flynn. - \newblock \emph{Formatting Information: A Beginner's Introduction to - Typesetting with LaTeX2}. - \newblock 2002. - \newblock (Available from CTAN via - \CTANurl{/info/beginlatex/}) +% %%% keep +% \bibitem[Dow00]{PATCHCMD} +% Michael J.~Downes. +% \newblock \emph{The patchcmd package}. +% \newblock July, 2000. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/patchcmd/}) + +% %%% keep +% \bibitem[Eij92]{TEXBYTOPIC} +% Victor Eijkhout. +% \newblock \emph{TeX by Topic}. +% \newblock Addison-Wesley, 1992. +% \newblock ISBN 0--201--56882--9. +% \newblock (Available from \url{http://www.eijkhout.net/tbt/}). + +% %%% keep +% \bibitem[Eij99]{COMMENT} +% Victor Eijkhout. +% \newblock \emph{comment.sty} +% \newblock October, 1999. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/comment/}) -\begin{comment} -\bibitem[Fra00]{CROP} - Melchior Franz. - \newblock \emph{The crop package}. - \newblock February, 2000. - \newblock (Available from CTAN in - \url{/macros/latex/contrib/crop}) - -\bibitem[FOS98]{FRIEDL98} - Friedrich Friedl, Nicolaus Ott and Bernard Stein. - \newblock \emph{Typography: An Encyclopedic Survey of Type Designs and - Techniques throughout History}. - \newblock Black Dog \& Leventhal Publishers Inc., 1998. - \newblock ISBN 1--57912--023--7. - -\bibitem[Gar66]{GARDNER66} - Martin Gardner. - \newblock \emph{More Mathematical Puzzles and Diversions}. - \newblock Penguin Books, 1996. - \newblock ISBN 0--14--020748--1. -\end{comment} +% \begin{comment} +% \bibitem[Fai98]{MOREVERB} +% Robin Fairbairns. +% \newblock \emph{The moreverb package}. +% \newblock December, 1998. +% \newblock (Available from CTAN in +% \url{/macros/latex/contrib/moreverb}) +% \end{comment} -%\bibitem[GMS94]{GOOSSENS94} -% Michel Goossens, Frank Mittelbach and Alexander Samarin. -% \newblock \emph{The LaTeX Companion}. -% \newblock Addison-Wesley Publishing Company, 1994 -% \newblock (ISBN 0--201--54199--8), 1994. - -%%% keep -\bibitem[GM\textsuperscript{+}07]{GCOMPANION} - Michel Goossens, Frank Mittelbach, et al. - \newblock \emph{The LaTeX Graphics Companion: Second edition}. - \newblock Addison-Wesley, 2007. - \newblock ISBN 0--321--50892--0. - -%%% keep -\bibitem[GR99]{WCOMPANION} - Michel Goossens and Sebastian Rahtz (with Eitan Gurari, - Ross Moore and Robert Sutor). - \newblock \emph{The LaTeX Web Companion: Integrating TeX, HTML and XML}. - \newblock Addison-Wesley, 1999. - \newblock ISBN 0--201--43311--7. +% %%% keep +% \bibitem[Fai00]{FOOTMISC} +% Robin Fairbairns. +% \newblock \emph{footmisc --- a portmanteau package for customising +% footnotes in LaTeX2e}. +% \newblock March, 2000. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/footmisc/}) -\begin{comment} -\bibitem[Gou87]{GOULD87} - J.~D.~Gould \textit{et al}. - \newblock `Reading from CRT displays can be as fast as reading from paper'. - \newblock \emph{Human Factors}, pp 497--517, 29:5, 1987. - -\bibitem[HR83]{HARTLEY83} - J.~Hartley and D.~Rooum. - \newblock `Sir Cyril Burt and typography'. - \newblock \emph{British Journal of Psychology}, pp 203--212, 74:2, 1983. - -\bibitem[HM01]{HELLER01} - Steven Heller and Philip B.~Meggs (Eds). - \newblock \emph{Texts on Type: Critical Writings on Typography}. - \newblock Allworth Press, 2001. - \newblock ISBN 1--58115--082--2. -\end{comment} +% %%% keep +% \LMnote{2010/09/28}{link changed} +% \bibitem[FAQ]{FAQ} +% Robin Fairbairns. +% \newblock \emph{The UK TeX FAQ}. +% \newblock (Available from CTAN via +% \url{http://faq.tug.org/}) -%%% keep -\bibitem[Hoe98]{HOENIG98} - Alan Hoenig. - \newblock \emph{TeX Unbound: LaTeX and TeX strategies for fonts, - graphics, and more}. - \newblock Oxford University Press, 1998. - \newblock ISBN 0--19--509686--X. +% \LMnote{2010/02/08}{Added from the main bib file} +% \bibitem[Far90]{FARIN90} +% Gerald Farin. +% \newblock \emph{Curves and Surfaces for Computer Aided Geometric +% Design --- A Practical Guide}. +% \newblock Academic Press, 2 edition, 1990. -\begin{comment} -\bibitem[HK75]{HVISTENDAHL75} - J.~K.~Hvistendahl and M.~R.~Kahl. - \newblock `Roman vs. sans serif body type: Readability and reader prference'. - \newblock \emph{AANPA News Research Bulletin}, pp 3--11, 17 Jan., 1975. -\end{comment} +% \LMnote{2010/02/08}{Added from the main bib file} +% \bibitem[FP80]{FAUX80} +% I.~D. Faux and M.~J. Pratt. +% \newblock {\em Computational Geometry for Design and Manufacture}. +% \newblock Ellis Horwood, 1980. -%%% keep -\bibitem[Jon95]{INDEX} - David M.~Jones. - \newblock \emph{A new implementation of LaTeX's indexing commands}. - \newblock September, 1995. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/camel}) -%%% keep -\bibitem[Keh98]{XINDY} - Roger Kehr. - \newblock \emph{xindy: A flexible indexing system}. - \newblock February, 1998. - \newblock (Available from CTAN via \CTANurl{/indexing/xindy/}) -%%% keep -\bibitem[Ker07]{XCOLOR} - Uwe Kern. - \newblock \emph{Extending LaTeX's color facilities: the xcolor package}. - \newblock January, 2007. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/xcolor/}) +% %%% keep +% \LMnote{2018/09/06}{Updated year} +% \bibitem[Fea16]{BOOKTABS} +% Simon Fear. +% \newblock \emph{Publication quality tables in LaTeX}. +% \newblock April, 2016. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/booktabs}) -%%% keep, moved herer /daleif 2020/09/28 -\bibitem[Kha10]{BIDI} Vafa - Khalighi. - \newblock \emph{The \textsf{Bidi} package}. - \newblock 2010. \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/bidi/}) +% \begin{comment} +% \bibitem[Fli98]{LETTRINE} +% Daniel Flipo. +% \newblock \emph{Typesetting `lettrines' in LaTeX2e documents}. +% \newblock March, 1998. +% \newblock (Available from CTAN in +% \url{/macros/latex/contrib/lettrine}) +% \end{comment} +% %%% keep +% \bibitem[Fly98]{FLYNN02} +% Peter Flynn. +% \newblock \emph{Formatting Information: A Beginner's Introduction to +% Typesetting with LaTeX2}. +% \newblock 2002. +% \newblock (Available from CTAN via +% \CTANurl{/info/beginlatex/}) +% \begin{comment} +% \bibitem[Fra00]{CROP} +% Melchior Franz. +% \newblock \emph{The crop package}. +% \newblock February, 2000. +% \newblock (Available from CTAN in +% \url{/macros/latex/contrib/crop}) + +% \bibitem[FOS98]{FRIEDL98} +% Friedrich Friedl, Nicolaus Ott and Bernard Stein. +% \newblock \emph{Typography: An Encyclopedic Survey of Type Designs and +% Techniques throughout History}. +% \newblock Black Dog \& Leventhal Publishers Inc., 1998. +% \newblock ISBN 1--57912--023--7. + +% \bibitem[Gar66]{GARDNER66} +% Martin Gardner. +% \newblock \emph{More Mathematical Puzzles and Diversions}. +% \newblock Penguin Books, 1996. +% \newblock ISBN 0--14--020748--1. +% \end{comment} -%%% keep -\bibitem[Knu84]{TEXBOOK} - Donald E.~Knuth. - \newblock \emph{The TeXbook}. - \newblock Addison-Wesley, 1984. - \newblock ISBN 0--201--13448--9. +% %\bibitem[GMS94]{GOOSSENS94} +% % Michel Goossens, Frank Mittelbach and Alexander Samarin. +% % \newblock \emph{The LaTeX Companion}. +% % \newblock Addison-Wesley Publishing Company, 1994 +% % \newblock (ISBN 0--201--54199--8), 1994. + +% %%% keep +% \bibitem[GM\textsuperscript{+}07]{GCOMPANION} +% Michel Goossens, Frank Mittelbach, et al. +% \newblock \emph{The LaTeX Graphics Companion: Second edition}. +% \newblock Addison-Wesley, 2007. +% \newblock ISBN 0--321--50892--0. + +% %%% keep +% \bibitem[GR99]{WCOMPANION} +% Michel Goossens and Sebastian Rahtz (with Eitan Gurari, +% Ross Moore and Robert Sutor). +% \newblock \emph{The LaTeX Web Companion: Integrating TeX, HTML and XML}. +% \newblock Addison-Wesley, 1999. +% \newblock ISBN 0--201--43311--7. -%%% keep -\bibitem[Knu86]{TEXPROGRAM} - Donald E.~Knuth. - \newblock \emph{TeX: The Program}. - \newblock Addison-Wesley, 1986. - \newblock ISBN 0--201--13437--3. +% \begin{comment} +% \bibitem[Gou87]{GOULD87} +% J.~D.~Gould \textit{et al}. +% \newblock `Reading from CRT displays can be as fast as reading from paper'. +% \newblock \emph{Human Factors}, pp 497--517, 29:5, 1987. + +% \bibitem[HR83]{HARTLEY83} +% J.~Hartley and D.~Rooum. +% \newblock `Sir Cyril Burt and typography'. +% \newblock \emph{British Journal of Psychology}, pp 203--212, 74:2, 1983. + +% \bibitem[HM01]{HELLER01} +% Steven Heller and Philip B.~Meggs (Eds). +% \newblock \emph{Texts on Type: Critical Writings on Typography}. +% \newblock Allworth Press, 2001. +% \newblock ISBN 1--58115--082--2. +% \end{comment} -%%% keep -\bibitem[Knu87]{CM} - Donald E.~Knuth. - \newblock \emph{Computer Modern Typefaces}. - \newblock Addison-Wesley, 1987. - \newblock ISBN 0--201--134446--2. +% %%% keep +% \bibitem[Hoe98]{HOENIG98} +% Alan Hoenig. +% \newblock \emph{TeX Unbound: LaTeX and TeX strategies for fonts, +% graphics, and more}. +% \newblock Oxford University Press, 1998. +% \newblock ISBN 0--19--509686--X. -%%% keep -\bibitem[Knu92]{METAFONT} - Donald E.~Knuth. - \newblock \emph{The METAFONT Book}. - \newblock Addison-Wesley, 1992. - \newblock ISBN 0--201--13444--6. +% \begin{comment} +% \bibitem[HK75]{HVISTENDAHL75} +% J.~K.~Hvistendahl and M.~R.~Kahl. +% \newblock `Roman vs. sans serif body type: Readability and reader prference'. +% \newblock \emph{AANPA News Research Bulletin}, pp 3--11, 17 Jan., 1975. +% \end{comment} -%%% keep -\bibitem[Lam94]{LAMPORT94} - Leslie Lamport. - \newblock \emph{LaTeX: A Document Preparation System}. - \newblock Addison-Wesley, 1994. - \newblock ISBN 0--201--52983--1. - -%%% keep -\bibitem[LEB04]{NTG} - Leslie Lamport, Victor Eijkhout and Johannes Braams. - \newblock \emph{NTG document classes for LaTeX version 2e}. - \newblock June, 2004. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/ntgclass/}) +% %%% keep +% \bibitem[Jon95]{INDEX} +% David M.~Jones. +% \newblock \emph{A new implementation of LaTeX's indexing commands}. +% \newblock September, 1995. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/camel}) + +% %%% keep +% \bibitem[Keh98]{XINDY} +% Roger Kehr. +% \newblock \emph{xindy: A flexible indexing system}. +% \newblock February, 1998. +% \newblock (Available from CTAN via \CTANurl{/indexing/xindy/}) + +% %%% keep +% \bibitem[Ker07]{XCOLOR} +% Uwe Kern. +% \newblock \emph{Extending LaTeX's color facilities: the xcolor package}. +% \newblock January, 2007. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/xcolor/}) + +% %%% keep, moved herer /daleif 2020/09/28 +% \bibitem[Kha10]{BIDI} Vafa +% Khalighi. +% \newblock \emph{The \textsf{Bidi} package}. +% \newblock 2010. \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/bidi/}) + + + +% %%% keep +% \bibitem[Knu84]{TEXBOOK} +% Donald E.~Knuth. +% \newblock \emph{The TeXbook}. +% \newblock Addison-Wesley, 1984. +% \newblock ISBN 0--201--13448--9. + +% %%% keep +% \bibitem[Knu86]{TEXPROGRAM} +% Donald E.~Knuth. +% \newblock \emph{TeX: The Program}. +% \newblock Addison-Wesley, 1986. +% \newblock ISBN 0--201--13437--3. + +% %%% keep +% \bibitem[Knu87]{CM} +% Donald E.~Knuth. +% \newblock \emph{Computer Modern Typefaces}. +% \newblock Addison-Wesley, 1987. +% \newblock ISBN 0--201--134446--2. + +% %%% keep +% \bibitem[Knu92]{METAFONT} +% Donald E.~Knuth. +% \newblock \emph{The METAFONT Book}. +% \newblock Addison-Wesley, 1992. +% \newblock ISBN 0--201--13444--6. + +% %%% keep +% \bibitem[Lam94]{LAMPORT94} +% Leslie Lamport. +% \newblock \emph{LaTeX: A Document Preparation System}. +% \newblock Addison-Wesley, 1994. +% \newblock ISBN 0--201--52983--1. + +% %%% keep +% \bibitem[LEB04]{NTG} +% Leslie Lamport, Victor Eijkhout and Johannes Braams. +% \newblock \emph{NTG document classes for LaTeX version 2e}. +% \newblock June, 2004. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/ntgclass/}) -\begin{comment} -\bibitem[LMB99]{CLASSES} - Leslie Lamport, Frank Mittelbach and Johannes Braams. - \newblock \emph{Standard document classes for LaTeX version 2e}. - \newblock September, 1999. - \newblock (Available from CTAN as \url{/macros/latex/base/classes.dtx}) - -\bibitem[Law90]{LAWSON90} - Alexander Lawson. - \newblock \emph{Anatomy of a Typeface}. - \newblock David R.~Godine, 1990. - \newblock ISBN 0--87923--333--8. - -\bibitem[LA90]{LAWSONAGNER90} - Alexander S.~Lawson with Dwight Agner. - \newblock \emph{Printing Types: An Introduction}. - \newblock Beacon Press, 1990. - \newblock ISBN 0--8070--6661--3. -\end{comment} +% \begin{comment} +% \bibitem[LMB99]{CLASSES} +% Leslie Lamport, Frank Mittelbach and Johannes Braams. +% \newblock \emph{Standard document classes for LaTeX version 2e}. +% \newblock September, 1999. +% \newblock (Available from CTAN as \url{/macros/latex/base/classes.dtx}) + +% \bibitem[Law90]{LAWSON90} +% Alexander Lawson. +% \newblock \emph{Anatomy of a Typeface}. +% \newblock David R.~Godine, 1990. +% \newblock ISBN 0--87923--333--8. + +% \bibitem[LA90]{LAWSONAGNER90} +% Alexander S.~Lawson with Dwight Agner. +% \newblock \emph{Printing Types: An Introduction}. +% \newblock Beacon Press, 1990. +% \newblock ISBN 0--8070--6661--3. +% \end{comment} -%%% keep -\bibitem[Lea03]{TEXFONTSITE} - Christopher League. - \newblock \emph{TeX support for the FontSite 500 CD}. - \newblock May 2003. - \newblock (Available from - \url{http://contrapunctus.net/fs500tex}) +% %%% keep +% \bibitem[Lea03]{TEXFONTSITE} +% Christopher League. +% \newblock \emph{TeX support for the FontSite 500 CD}. +% \newblock May 2003. +% \newblock (Available from +% \url{http://contrapunctus.net/fs500tex}) + +% %%% keep +% \bibitem[Leh04]{FONTINST} +% Philipp Lehman. +% \newblock \emph{The Font Installation Guide}. +% \newblock December 2004. +% \newblock (Available from CTAN via +% \CTANurl{/info/Type1fonts/fontinstallationguide}) -%%% keep -\bibitem[Leh04]{FONTINST} - Philipp Lehman. - \newblock \emph{The Font Installation Guide}. - \newblock December 2004. - \newblock (Available from CTAN via - \CTANurl{/info/Type1fonts/fontinstallationguide}) - -%%% keep -\bibitem[Leu92]{LEUNEN92} - Mary-Claire van Leunen. - \newblock \emph{A Handbook for Scholars}. - \newblock Oxford University Press, 1992. - \newblock ISBN 0--19--506954--4. +% %%% keep +% \bibitem[Leu92]{LEUNEN92} +% Mary-Claire van Leunen. +% \newblock \emph{A Handbook for Scholars}. +% \newblock Oxford University Press, 1992. +% \newblock ISBN 0--19--506954--4. -\begin{comment} -\bibitem[Liv02]{LIVIO02} - Mario Livio. - \newblock \emph{The Golden Ratio: The Story of Phi, the World's Most - Astonishing Number}. - \newblock Broadway Books, 2002. - \newblock ISBN 0--7679--0816--3. -\end{comment} +% \begin{comment} +% \bibitem[Liv02]{LIVIO02} +% Mario Livio. +% \newblock \emph{The Golden Ratio: The Story of Phi, the World's Most +% Astonishing Number}. +% \newblock Broadway Books, 2002. +% \newblock ISBN 0--7679--0816--3. +% \end{comment} -%%% keep -\bibitem[Lon91]{MULTIND} - F.~W.~Long. - \newblock \emph{multind}. - \newblock August, 1991. - \newblock (Available from CTAN as - \CTANurl{/macros/latex209/contrib/misc/multind.sty}) - -%%% keep -\bibitem[Mad06]{CHAPSTYLES} - Lars Madsen. - \newblock \emph{Various chapter styles for the memoir class}. - \newblock July, 2006. - \newblock (Available from CTAN via - \CTANurl{/info/latex-samples/MemoirChapStyles/}) - -%%% keep -\bibitem[Mad07]{MEMEXSUPP} - Lars Madsen. - \newblock \emph{The Memoir Experimental Support Package}. - \newblock 2007. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/memexsupp/}) - -%%% keep -\bibitem[McD98]{SECTSTY} - Rowland McDonnell. - \newblock \emph{The sectsty package}. - \newblock November, 1998. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/sectsty/}) +% %%% keep +% \bibitem[Lon91]{MULTIND} +% F.~W.~Long. +% \newblock \emph{multind}. +% \newblock August, 1991. +% \newblock (Available from CTAN as +% \CTANurl{/macros/latex209/contrib/misc/multind.sty}) + +% %%% keep +% \bibitem[Mad06]{CHAPSTYLES} +% Lars Madsen. +% \newblock \emph{Various chapter styles for the memoir class}. +% \newblock July, 2006. +% \newblock (Available from CTAN via +% \CTANurl{/info/latex-samples/MemoirChapStyles/}) -\begin{comment} -\bibitem[McL75]{MCLEAN75} - Ruari McLean. - \newblock \emph{Jan Tschichold: Typographer}. - \newblock David R.~Godine, 1975. - \newblock ISBN 0--87923--841--0. -\end{comment} +% %%% keep +% \bibitem[Mad07]{MEMEXSUPP} +% Lars Madsen. +% \newblock \emph{The Memoir Experimental Support Package}. +% \newblock 2007. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/memexsupp/}) -%%% keep -\bibitem[McL80]{MCLEAN80} - Ruari McLean. - \newblock \emph{The Thames \& Hudson Manual of Typography}. - \newblock Thames \& Hudson, 1980. - \newblock ISBN 0--500--68022--1. +% %%% keep +% \bibitem[McD98]{SECTSTY} +% Rowland McDonnell. +% \newblock \emph{The sectsty package}. +% \newblock November, 1998. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/sectsty/}) -\begin{comment} -\bibitem[McL95]{MCLEAN95} - Ruari McLean (Ed). - \newblock \emph{Typographers on Type}. - \newblock W.~W.~Norton \& Co., 1995. - \newblock ISBN 0--393--70201--4. - -\bibitem[MMc95]{MEGGS00} - Philip B.~Meggs and Roy McKelvey (Eds). - \newblock \emph{Revival of the Fittest: Digital Versions of the Classic Typefaces}. - \newblock RC Publications, Inc., 2000. - \newblock ISBN 1--883915--08--2. - -\bibitem[Mit95]{DOCSHORTVRB} - Frank Mittelbach. - \newblock \emph{The doc and shortvrb packages}. - \newblock May, 1995. - \newblock (Available from CTAN in - \url{/macros/latex/base}) -\end{comment} +% \begin{comment} +% \bibitem[McL75]{MCLEAN75} +% Ruari McLean. +% \newblock \emph{Jan Tschichold: Typographer}. +% \newblock David R.~Godine, 1975. +% \newblock ISBN 0--87923--841--0. +% \end{comment} + +% %%% keep +% \bibitem[McL80]{MCLEAN80} +% Ruari McLean. +% \newblock \emph{The Thames \& Hudson Manual of Typography}. +% \newblock Thames \& Hudson, 1980. +% \newblock ISBN 0--500--68022--1. + +% \begin{comment} +% \bibitem[McL95]{MCLEAN95} +% Ruari McLean (Ed). +% \newblock \emph{Typographers on Type}. +% \newblock W.~W.~Norton \& Co., 1995. +% \newblock ISBN 0--393--70201--4. + +% \bibitem[MMc95]{MEGGS00} +% Philip B.~Meggs and Roy McKelvey (Eds). +% \newblock \emph{Revival of the Fittest: Digital Versions of the Classic Typefaces}. +% \newblock RC Publications, Inc., 2000. +% \newblock ISBN 1--883915--08--2. + +% \bibitem[Mit95]{DOCSHORTVRB} +% Frank Mittelbach. +% \newblock \emph{The doc and shortvrb packages}. +% \newblock May, 1995. +% \newblock (Available from CTAN in +% \url{/macros/latex/base}) +% \end{comment} -%%% keep -\bibitem[Mit18]{MULTICOL} - Frank Mittelbach. - \newblock \emph{An environment for multicolumn output}. - \newblock April, 2018. - \newblock (Available from CTAN (the \texttt{multicol} package) via - \CTANurl{/macros/latex/required/tools/}) - -\bibitem[Mit2020a]{LTFILEHOOK} - Frank Mittelbach - \newblock \emph{The ltfilehook package} - \newblock July 2020. - - \bibitem[Mit2020b]{LTHOOKS} - Frank Mittelbach - \newblock \emph{The lthooks package} - \newblock July 2020. - - \bibitem[Mit2020c]{LTSHIPOUT} - Frank Mittelbach - \newblock \emph{The ltshipout package} - \newblock July 2020. +% %%% keep +% \bibitem[Mit18]{MULTICOL} +% Frank Mittelbach. +% \newblock \emph{An environment for multicolumn output}. +% \newblock April, 2018. +% \newblock (Available from CTAN (the \texttt{multicol} package) via +% \CTANurl{/macros/latex/required/tools/}) + +% \bibitem[Mit2020a]{LTFILEHOOK} +% Frank Mittelbach +% \newblock \emph{The ltfilehook package} +% \newblock July 2020. + +% \bibitem[Mit2020b]{LTHOOKS} +% Frank Mittelbach +% \newblock \emph{The lthooks package} +% \newblock July 2020. + +% \bibitem[Mit2020c]{LTSHIPOUT} +% Frank Mittelbach +% \newblock \emph{The ltshipout package} +% \newblock July 2020. -%%keep -\LMnote{2018/09/06}{Updated year} -\bibitem[MC18]{ARRAY} - Frank Mittelbach and David Carlisle. - \newblock \emph{A new implementation of LaTeX's tabular and array environment}. \newblock May, 2018. - \newblock (Available from CTAN (the \texttt{array} package) via - \CTANurl{/macros/latex/required/tools/}) - -%%% keep -\bibitem[MC00]{FIXLTX2E} - Frank Mittelbach and David Carlisle. - \newblock \emph{The fixltx2e package}. - \newblock December, 2016. - \newblock As of 2015 the functionality of this package has been - merged with the \LaTeX{} kernel. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/base/}) - -%%% keep -\bibitem[MG\textsuperscript{+}04]{COMPANION} - Frank Mittelbach, Michael Goossens, et al. - \newblock \emph{The LaTeX Companion: Second Edition}. - \newblock Addison-Wesley, 2004. - \newblock ISBN 0--201--36299--6. +% %%keep +% \LMnote{2018/09/06}{Updated year} +% \bibitem[MC18]{ARRAY} +% Frank Mittelbach and David Carlisle. +% \newblock \emph{A new implementation of LaTeX's tabular and array environment}. \newblock May, 2018. +% \newblock (Available from CTAN (the \texttt{array} package) via +% \CTANurl{/macros/latex/required/tools/}) + +% %%% keep +% \bibitem[MC00]{FIXLTX2E} +% Frank Mittelbach and David Carlisle. +% \newblock \emph{The fixltx2e package}. +% \newblock December, 2016. +% \newblock As of 2015 the functionality of this package has been +% merged with the \LaTeX{} kernel. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/base/}) + +% %%% keep +% \bibitem[MG\textsuperscript{+}04]{COMPANION} +% Frank Mittelbach, Michael Goossens, et al. +% \newblock \emph{The LaTeX Companion: Second Edition}. +% \newblock Addison-Wesley, 2004. +% \newblock ISBN 0--201--36299--6. -\begin{comment} -\bibitem[Mor99]{MORISON99} - Stanley Morison. - \newblock \emph{A Tally of Types}. - \newblock David R. Godine, 1999. - \newblock ISBN 1--56792--004--7. -\end{comment} +% \begin{comment} +% \bibitem[Mor99]{MORISON99} +% Stanley Morison. +% \newblock \emph{A Tally of Types}. +% \newblock David R. Godine, 1999. +% \newblock ISBN 1--56792--004--7. +% \end{comment} -\LMnote{2010/02/08}{Added from the main bib file} -\bibitem[Mor85]{MORTENSON85} -Michael~E. Mortenson. -\newblock \emph{Geometric Modeling}. -\newblock John Wiley \& Sons, 1985. +% \LMnote{2010/02/08}{Added from the main bib file} +% \bibitem[Mor85]{MORTENSON85} +% Michael~E. Mortenson. +% \newblock \emph{Geometric Modeling}. +% \newblock John Wiley \& Sons, 1985. + + +% %%% keep +% \bibitem[NG98]{SIDECAP} +% Rolf Niespraschk and Hubert G\"{a}\ss{}lein. +% \newblock \emph{The sidecap package}. +% \newblock June, 1998. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/sidecap/}) + +% %%% keep +% \bibitem[Oet]{LSHORT} +% Tobias Oetiker. +% \newblock \emph{The Not So Short Introduction to LaTeX2e}. +% \newblock (Available from CTAN via +% \CTANurl{/info/lshort/}) + +% %%% keep +% \bibitem[Oos96]{FANCYHDR} +% Piet van Oostrum. +% \newblock \emph{Page Layout in LaTeX}. +% \newblock June, 1996. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/fancyhdr/}) + +% %%% keep +% \bibitem[Pak01]{SYMBOLS} +% Scott Pakin. +% \newblock \emph{The Comprehensive LaTeX Symbol List}. +% \newblock July, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/info/symbols/comprehensive/}) + +% %%% keep +% \bibitem[dP84]{PARVILLE84} +% H.~de~Parville. +% \newblock Recreations mathematique: {La Tour d'Hanoi} et la question +% du {Tonkin}. +% \newblock \emph{La Nature}, part {I}:285--286, Paris 1884. + +% %%% keep +% \bibitem[Pat88a]{BIBTEX} +% Oren Patashnik. +% \newblock \emph{BibTeXing}. +% \newblock February, 1988. +% \newblock (Available from CTAN as +% \CTANurl{/bibliography/bibtex/distribs/doc/btxdoc.tex}) + +% %%% keep +% \bibitem[Pat88b]{BIBTEXHACK} +% Oren Patashnik. +% \newblock \emph{Designing BibTeX Styles}. +% \newblock February, 1988. +% \newblock (Available from CTAN as +% \CTANurl{/bibliography/bibtex/distribs/doc/btxhak.tex}) + +% %%% keep +% \bibitem[Pug02]{MATHPAZO} +% Diego Puga. +% \newblock \emph{The Pazo Math fonts for mathematical typesetting +% with the Palatino fonts}. +% \newblock May, 2002. +% \newblock (Available from CTAN via +% \CTANurl{/fonts/mathpazo/}) + +% %%% keep +% \bibitem[Rahtz23a]{NAMEREF} +% Sebastian Rahtz, Heiko Oberdiek, The \LaTeX3 Project. +% \newblock \emph{Section name references in LaTeX}. +% \newblock 2023. +% \newblock (Available from CTAN (the \texttt{nameref} package) via +% \CTANurl{/macros/latex/contrib/hyperref/}) + +% %%% keep +% \bibitem[Rahtz23b]{HYPERREF} +% Sebastian Rahtz, Heiko Oberdiek, The \LaTeX3 Project. +% \newblock \emph{Hypertext marks in LaTeX}. +% \newblock 2023. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/hyperref/}) + +% %%% keep +% \bibitem[Rec97]{EPSLATEX} +% Keith Reckdahl. +% \newblock \emph{Using Imported Graphics in LaTeX2e}. +% \newblock December, 1997. Updated in 2006. +% \newblock (Available from CTAN via +% \CTANurl{/info/epslatex.pdf}) + +% \begin{comment} +% \bibitem[Reh72]{REHE72} +% Rolf Rehe. +% \newblock `Type and how to make it most legible'. +% \newblock \emph{Design Research International}, 1972. +% \end{comment} + +% %%% keep +% \bibitem[Rei07]{REINGOLD07} +% Edward M. Reingold. +% \newblock `Writing numbers in words in TeX'. +% \newblock TUGboat, 28, 2 pp 256--259, 2007. + +% \begin{comment} +% \bibitem[RAE71]{ROBINSON71} +% D.~O.~Robinson, M.~Abbamonte and S.~H.~Evans. +% \newblock `Why serifs are important: The perception of small print'. +% \newblock \emph{Visible Language}, pp 353--359, 4, 1971. + +% \bibitem[Rog43]{ROGERS43} +% Bruce Rogers. +% \newblock \emph{Paragraphs on Printing}. +% \newblock William E. Rudge's Sons, Inc., 1943. +% \newblock (Reissued by Dover, 1979, ISBN 0--486--23817--2) + +% \bibitem[Rog49]{ROGERS49} +% Bruce Rogers. +% \newblock \emph{Centaur Types}. +% \newblock October House, 1949. +% \end{comment} + +% %%% keep +% \bibitem[RBC74]{ROUSEBALL} +% W. W. Rouse Ball and H. S. M. Coxeter. +% \newblock \emph{Mathematical Recreations and Essays}. +% \newblock University of Toronto Press, twelfth edition, 1974. + +% \begin{comment} +% \bibitem[Ryd76]{RYDER} +% John Ryder. +% \newblock \emph{Printing for Pleasure}. Revised edition. +% \newblock The Bodley Head, 1976. +% \newblock ISBN 0--370--10443--9. +% \newblock (In the USA published by Henry Regenery Co., Michigan, 1977. +% ISBN 0--8092--78103--3) +% \end{comment} + +% %%% keep +% \bibitem[SW94]{EBOOK} +% Douglas Schenck and Peter Wilson. +% \newblock \emph{Information Modeling the EXPRESS Way}. +% \newblock Oxford University Press, 1994. +% \newblock ISBN 0--19--508714--3. + +% %%% keep +% \bibitem[SRR99]{VERBATIM} +% Rainer Sch\"{o}pf, Bernd Raichle and Chris Rowley. +% \newblock \emph{A New Implementation of LaTeX's verbatim +% and verbatim* Environments}. +% \newblock December, 1999. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/required/tools/}) + +% \begin{comment} +% \bibitem[Sch97]{SCHRIVER97} +% Karen A.~Schriver. +% \newblock \emph{Dynamics in Document Design}. +% \newblock Wiley \& Sons, 1997. + +% \bibitem[Sme96]{SMEIJERS96} +% Fred Smeijers. +% \newblock \emph{Counterpunch: making type in the sixteenth century, +% designing typefaces now}. +% \newblock Hyphen Press, London, 1996. +% \newblock ISBN 0--907259--06--5. +% \end{comment} + + +% \bibitem[Sch07]{practex-2007-3-ms} +% Martin Scharrer, +% \newblock\emph{Version Control of LaTeX Documents with svn-multi}. +% \newblock \emph{The Prac{\TeX} Journal}, 3, 2007. +% \newblock ISSN 1556-6994. + +% \bibitem[Sch09]{svn-multi} +% Martin Scharrer, +% \newblock\emph{The \textsf{svn-multi} package}, 2009. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/svn-multi/}) + + +% %%% keep +% \bibitem[Sne04]{SNEEP04} +% Maarten Sneep. +% \newblock \emph{The atmosphere in the laboratory: cavity ring-down +% measurements on scattering and absorption}. +% \newblock Phd thesis, +% \newblock Vrijie Universiteit, Amsterdam, 2004. + +% %%% keep +% \bibitem[Tal21]{DATETIME2} +% Nicola L. C. Talbot. +% \newblock \emph{datetime2: date and time formats}. +% \newblock Martch, 2021. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/datetime2/}) + +% %%% keep +% \bibitem[Thi98]{ORNAMENTAL} +% Christina Thiele. +% \newblock `Hey --- it works: Ornamental rules'. +% \newblock \emph{TUGboat}, +% \newblock vol. 19, no. 4, p 427, December 1998. + +% %%% keep +% \bibitem[Thi99]{TTC199} +% Christina Thiele. +% \newblock `The Treasure Chest: Package tours from CTAN', +% \newblock \emph{TUGboat}, +% \newblock vol. 20, no. 1, pp 53--58, March 1999. + +% %%% keep +% \bibitem[TJ05]{CALC} +% Kresten Krab Thorup, Frank Jensen (and Chris Rowley). +% \newblock \emph{The calc package --- Infix notation arithmetic in LaTeX}. +% \newblock August, 2005. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/required/tools/}) + +% \begin{comment} +% \bibitem[Tin63]{TINKER63} +% Miles A.~Tinker. +% \newblock \emph{Legibility of Print}. +% \newblock Books on Demand (University Microfilms International), 1963. +% \end{comment} + +% %%% keep +% \bibitem[Tob00]{SETSPACE} +% Geoffrey Tobin. +% \newblock \emph{setspace.sty}. +% \newblock December, 2000. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/setspace/}) +% %%% keep +% \bibitem[Tsc91]{TSCHICHOLD91} +% Jan Tschichold. +% \newblock \emph{The Form of the Book}. +% \newblock Lund Humphries, 1991. +% \newblock ISBN 0--85331--623--6. + +% \begin{comment} +% \bibitem[Tuf83]{TUFTE83} +% Edward R. Tufte. +% \newblock \emph{The Visual Display of Quantative Information}. +% \newblock Graphics Press, 1983. +% \end{comment} + +% %%% keep +% \bibitem[Ume99]{GEOMETRY} +% Hideo Umeki. +% \newblock \emph{The geometry package}. +% \newblock November, 1999. +% \newblock (Available from CTAN in +% \CTANurl{/macros/latex/contrib/geometry/}) + + +% \begin{comment} +% \bibitem[Whe95]{WHEILDON95} +% Colin Wheildon. +% \newblock \emph{Type \& Layout}. +% \newblock Strathmore Press, 1995. +% \newblock ISBN 0--9624891--5--8. +% \end{comment} + +% %%% keep +% \bibitem[Wil00]{CATALOGUE} +% Graham Williams. +% \newblock \emph{The TeX Catalogue}. +% \newblock (Latest version on CTAN as +% \CTANurl{/help/Catalogue/catalogue.html}) + +% %%% keep +% \bibitem[Wil93]{ADRIANWILSON93} +% Adrian Wilson. +% \newblock \emph{The Design of Books}. +% \newblock Chronicle Books, 1993. +% \newblock ISBN 0--8118--0304--X. + + +% %%% keep +% \bibitem[Wil99b]{TOCVSEC2} +% Peter Wilson. +% \newblock \emph{The tocvsec2 package}. +% \newblock January, 1999. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/tocvsec2/}) + +% %%% keep +% \bibitem[Wil00a]{EPIGRAPH} +% Peter Wilson. +% \newblock \emph{The epigraph package}. +% \newblock February, 2000. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/epigraph/}) + +% %%% keep +% \bibitem[Wil00b]{ISOCLASS} +% Peter Wilson. +% \newblock \emph{LaTeX files for typesetting ISO standards}. +% \newblock February, 2000. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/isostds/iso/}) + +% %%% keep +% \bibitem[Wil00c]{NEXTPAGE} +% Peter Wilson. +% \newblock \emph{The nextpage package}. +% \newblock February, 2000. +% \newblock (Available from CTAN as +% \CTANurl{/macros/latex/contrib/misc/nextpage.sty}) + +% \begin{comment} +% \bibitem[Wil00d]{NEEDSPACE} +% Peter Wilson. +% \newblock \emph{The needspace package}. +% \newblock March, 2000. +% \newblock (Available from CTAN as +% \url{/macros/latex/contrib/misc/needspace.sty}) +% \end{comment} + +% %%% keep +% \bibitem[Wil00e]{XTAB} +% Peter Wilson. +% \newblock \emph{The xtab package}. +% \newblock April 2000. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/xtab}) + +% %%% keep +% \bibitem[Wil01a]{ABSTRACT} +% Peter Wilson. +% \newblock \emph{The abstract package}. +% \newblock February, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/abstract/}) + +% \begin{comment} +% %%% it no longer exist +% \LMnote{2010/09/28}{Removed as it no longer exist} +% \bibitem[Wil01b]{CHNGPAGE} +% Peter Wilson. +% \newblock \emph{The changepage package}. +% \newblock February, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/changepage/}) + +% \bibitem[Wil01c]{APPENDIX} +% Peter Wilson. +% \newblock \emph{The appendix package}. +% \newblock March, 2001. +% \newblock (Available from CTAN in +% \url{/macros/latex/contrib/appendix}) +% \end{comment} + +% %%% keep +% \bibitem[Wil01d]{CCAPTION} +% Peter Wilson. +% \newblock \emph{The ccaption package}. +% \newblock March, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/ccaption/}) + +% %%% keep +% \bibitem[Wil01e]{CHNGCNTR} +% Peter Wilson. +% \newblock \emph{The chngcntr package}. +% \newblock April, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/chngcntr/}) + +% %%% keep +% \bibitem[Wil01f]{HANGING} +% Peter Wilson. +% \newblock \emph{The hanging package}. +% \newblock March, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/hanging/}) + +% %%% keep +% \bibitem[Wil01g]{TITLING} +% Peter Wilson. +% \newblock \emph{The titling package}. +% \newblock March, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/titling/}) + +% %%% keep +% \bibitem[Wil01h]{TOCBIBIND} +% Peter Wilson. +% \newblock \emph{The tocbibind package}. +% \newblock April, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/tocbibind/}) + +% %%% keep +% \bibitem[Wil01i]{TOCLOFT} +% Peter Wilson. +% \newblock \emph{The tocloft package}. +% \newblock April, 2001. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/tocloft/}) + + +% \begin{comment} +% \bibitem[Wil01j]{MEMOIR} +% Peter Wilson. +% \newblock \emph{The LaTeX memoir class for configurable book +% typesetting: Source code}. +% \newblock July, 2001. +% \newblock (Available from CTAN in +% \url{/macros/latex/contrib/memoir}) + +% \bibitem[Wil01k]{VERSE} +% Peter Wilson. +% \newblock \emph{Typesetting simple verse with LaTeX} +% \newblock July, 2001. +% \newblock (Available from CTAN in +% \url{/macros/latex/contrib/verse}) + +% \bibitem[Wil01l]{BOOKLET} +% Peter Wilson. +% \newblock \emph{Printing booklets with LaTeX} +% \newblock August, 2001. +% \newblock (Available from CTAN in +% \url{/macros/latex/contrib/booklet}) +% \end{comment} + + +% %%% keep +% \bibitem[Wil03b]{LEDMAC} +% Peter Wilson. +% \newblock \emph{ledmac: A presumptuous attempt to port EDMAC and +% TABMAC to LaTeX} +% \newblock November, 2003. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/ledmac/}) + +% \begin{comment} +% \bibitem[Wil04a]{GLISTER3} +% Peter Wilson. +% \newblock `Glisterings'. +% \newblock TUGboat, 25, 2 pp 201--202, 2004. +% \end{comment} + + +% \LMnote{2010/02/08}{Added from the main bib file} +% \bibitem[Wil04a]{BEZ123} +% Peter Wilson. +% \newblock \emph{The bez123 and multiply packages}, April 2004. +% \newblock (Available from CTAN in \CTANurl{/macros/latex/contrib/bez123/}) + + +% %%% keep +% \bibitem[Wil04b]{PAGENOTE} +% Peter Wilson. +% \newblock \emph{The pagenote package} +% \newblock September, 2004. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/pagenote/}) + + +% %%% keep +% \bibitem[Wil04c]{LAYOUTS} +% Peter Wilson. +% \newblock \emph{The layouts package} +% \newblock October, 2004. +% \newblock (Available from CTAN in +% \CTANurl{/macros/latex/contrib/layouts/}) + + +% %%% keep +% \bibitem[Wil07a]{TITLEPAGES} +% Peter Wilson. +% \newblock \emph{Some Examples of Title Pages}. +% \newblock Herries Press, 2007. +% \newblock (Available from CTAN via +% \CTANurl{/info/latex-samples/TitlePages/}) + +% %%% keep +% \begin{comment} +% % repeated below +% \bibitem[Wil07b]{MEMCODE} Peter Wilson. \newblock \emph{The \ltx\ +% memoir class for configurable book typesetting: source code} +% \newblock November, 2007. \newblock (Available from CTAN in +% \url{/macros/latex/contrib/memoir}) +% \end{comment} +% %%% keep + +% %%% keep, outcommented, as we do not use an addendum at the moment +% \LMnote{2010/09/28}{out commented as we do not provide one at the moment} +% \begin{comment} +% \bibitem[Wil07d]{MEMADD} +% Peter Wilson. +% \newblock \emph{ADDENDUM: The Memoir Class for Configurable +% Typesetting --- User Guide} +% \newblock November, 2007. +% \newblock (Available from CTAN in +% \url{/macros/latex/contrib/memoir}) +% \end{comment} + +% %%% keep +% \bibitem[Wil07e]{GLISTER07} +% Peter Wilson. +% \newblock `Glisterings', \emph{TUGboat}, 28(2):229--232, 2007. + +% \begin{comment} +% \bibitem[Wil07f]{TUGKEYNOTE07} +% Peter Wilson. +% \newblock `Between then and now --- A meandering memoir', +% \newblock \emph{TUGboat}, 28(3):280--298, 2007. +% \end{comment} + +% %%% keep +% \bibitem[Wil08a]{CHANGEPAGE} +% Peter Wilson. +% \newblock \emph{The changepage package}. +% \newblock March, 2008. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/changepage/}) + +% %%% keep +% \bibitem[Wil08b]{GLISTER08} +% Peter Wilson. +% \newblock `Glisterings', \emph{TUGboat}, 29(2):324--327, 2008. + +% %%% keep +% \bibitem[Wil09a]{FONTTABLE} +% Peter Wilson. +% \newblock \emph{The fonttable package} +% \newblock April, 2009. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/fonttable/}) + +% \bibitem[Wil19a]{MEMCODE} +% Peter Wilson (with the assistance of Lars Madsen). +% \newblock \emph{The \ltx\ memoir class for configurable book +% typesetting: source code} +% \newblock November, 2019. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/memoir/}) + +% \bibitem[Wil23]{MEMMAN} +% Peter Wilson (with the assistance of Lars Madsen). +% \newblock \emph{The Memoir Class for Configurable Typesetting --- +% User Guide} +% \newblock November, 2023. Regularly updated. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/memoir/}) + +% \bibitem[Wil18]{MEMDESIGN} +% Peter Wilson. +% \newblock \emph{A Few Notes on Book Design} +% \newblock September, 2018. +% \newblock (Available from CTAN via +% \CTANurl{/info/memdesign/}) + + +% %%% keep +% % \bibitem[Wil??]{RUMOUR} +% % Peter Wilson. +% % \newblock \emph{A Rumour of Humour: A scientist's commonplace book}. +% % \newblock To be published. + + +% \bibitem[Wri23]{SIUNITX} +% Joseph Wright. +% \newblock \emph{Siunitx — A comprehensive (SI) units package} +% \newblock October, 2023. +% \newblock (Available from CTAN via \CTANurl{/macros/latex/contrib/siunitx}) + + + + +% \begin{comment} +% \bibitem[Wis03]{WISHART03} +% David Wishart. +% \newblock \emph{The Printing of Mathematics} +% \newblock in \emph{Type \& Typography: Highlights from \emph{Matrix}, the +% review for printers \& bibliophiles}. +% \newblock Mark Batty Publisher, 2003. +% \newblock ISBN 0--9715687--6--6. +% \newblock (Originally published in \emph{Matrix 8}, 1988) + +% \bibitem[Wul53]{WULLING-FOOTNOTES} +% Emerson G. Wulling. +% \newblock \emph{A Comp's-Eye View of Footnotes}. +% \newblock Sumac Press, 1953. + +% \bibitem[Zac69]{ZACHRISSOM69} +% B.~Zachrissom. +% \newblock \emph{Studies in the Legibility of Printed Text}. +% \newblock Almqvist \& Wiksell, Stockholm, 1969. +% \end{comment} + +% %%% keep +% \bibitem[Zan98]{FANCYBOX} +% Timothy Van Zandt. +% \newblock \emph{Documentation for fancybox.sty: Box tips and tricks for +% LaTeX}, +% \newblock November, 1998. +% \newblock (Available from CTAN via +% \CTANurl{/macros/latex/contrib/fancybox/}) + +% \begin{comment} +% \bibitem[Zap00]{ZAPF00} +% Hermann Zapf. +% \newblock \emph{The Fine Art of Letters}. +% \newblock The Grolier Club, 2000. +% \newblock ISBN 0--910672--35--0. +% \end{comment} + +% \end{thebibliography} + +% %\end{comment} + + + +\newcommand{\etalchar}[1]{$^{#1}$} +\begin{thebibliography}{GMR{\etalchar{+}}07} + +\bibitem[AHB20]{IMPATIENT} +Paul~W. Abrahams, Kathryn Hargreaves, and Karl Berry. +\newblock Tex for the impatient, 2020. +\newblock Originally published by Addison-Wesley in 1990. Out of print by 2003, + after which the rights were passed back to the authors, who open sourced the + book. \viaCTANurl{/info/impatient}. + +\bibitem[Ars10]{CHAPTERBIB} +Donald Arseneau. +\newblock {\em Chapterbib – multiple bibliographies in LaTeX}, 2010. +\newblock \viaCTANurl{/macros/latex/contrib/cite}. + +\bibitem[Ars12]{FRAMED} +Donald Arseneau. +\newblock {\em The framed package}, 2012. +\newblock \viaCTANurl{/macros/latex/contrib/framed/}. + +\bibitem[Ars13]{URL} +Donal Arseneau. +\newblock {\em The url package}, 2013. +\newblock See also the \Lpack{xurl} package, \cite{XURL}. + \viaCTANurl{/macros/latex/contrib/url/}. + +\bibitem[BC74]{ROUSEBALL} +W.~W.~Rouse Ball and H.~S.~M. Coxeter. +\newblock {\em Mathematical Recreations and Essays}. +\newblock University of Toronto Press, 12th edition, 1974. + +\bibitem[Ber04]{JURABIB} +Jens Berger. +\newblock {\em The jurabib Package}, 2004. +\newblock \viaCTANurl{/macros/latex/contrib/jurabib/}. + +\bibitem[Bez21]{TITLESEC} +Javier Bezos. +\newblock {\em The titlesec, titleps and titletoc packages}, 2021. +\newblock \viaCTANurl{/macros/latex/contrib/titlesec/}. + +\bibitem[Bir04]{BIRDSALL04} +Derek Birdsall. +\newblock {\em Notes on book design}. +\newblock Yale University Press, 2004. +\newblock ISBN 0--300--10347--6. + +\bibitem[Bra21]{ALLTT} +Johannes Braams. +\newblock {\em The alltt environment}, 2021. +\newblock \viaCTANurl{/macros/latex/base/}. + +\bibitem[Bri99]{BRINGHURST99} +Robert Bringhurst. +\newblock {\em The Elements of Typographic Style}. +\newblock Hartley \& Marks, 2nd edition, 1999. +\newblock ISBN 0--88179--033--8. + +\bibitem[Car14a]{AFTERPAGE} +David Carlisle. +\newblock {\em The afterpage package}, 2014. +\newblock \viaCTANurl{/macros/latex/required/tools/}. + +\bibitem[Car14b]{DCOLUMN} +David Carlisle. +\newblock {\em The dcolumn package}, 2014. +\newblock \viaCTANurl{/macros/latex/required/tools/}. + +\bibitem[Car14c]{DELARRAY} +David Carlisle. +\newblock {\em The delarray package}, 2014. +\newblock \viaCTANurl{/macros/latex/required/tools/}. + +\bibitem[Car15]{ENUMERATE} +David Carlisle. +\newblock {\em The enumerate package}, 2015. +\newblock \viaCTANurl{/macros/latex/required/tools/}. + +\bibitem[Car20]{TABULARX} +David Carlisle. +\newblock {\em The tabularx package}, 2020. +\newblock \viaCTANurl{/macros/latex/required/tools/}. + +\bibitem[Car21]{LONGTABLE} +David Carlisle. +\newblock {\em The longtable package}, 2021. +\newblock \viaCTANurl{/macros/latex/required/tools/}. + +\bibitem[Car23]{textcase} +David Carlisle. +\newblock {\em The textcase package}, 2023. +\newblock The package is marked \emph{obsolete} as of the June 2022 \LaTeX\ + release as by then the functionality was provided by the kernel. + \viaCTANurl{/macros/latex/contrib/textcase}. + +\bibitem[CB99]{CHAPPELL99} +Warren Chappell and Robert Bringhurst. +\newblock {\em A Short history of the Printed Word}. +\newblock Hartley \& Marks, 1999. +\newblock ISBN 0--88179--154--7. + +\bibitem[CH88]{CHEN88} +Pehong Chen and Michael~A. Harrison. +\newblock Index preparation and processing. +\newblock {\em Software: Practive and Experience}, 19(8):897--915, 1988. +\newblock \viaCTANurl{/indexing/makeindex/paper/}. + +\bibitem[CL21]{COLOR} +David Carlisle and The {LaTeX Project}. +\newblock {\em Packages in the graphics bundle (including the color package)}, + 2021. +\newblock \viaCTANurl{/macros/latex/required/graphics/}. + +\bibitem[CMS93]{CMS} +{\em The Chicago Manual of Style}. +\newblock The University of Chicago, fourteenth edition, 1993. + +\bibitem[CR21]{GRAPHICX} +David Carlisle and Sebastian Rahtz. +\newblock {\em The graphicx package}, 2021. +\newblock \viaCTANurl{/macros/latex/required/graphics/}. + +\bibitem[Dal03]{MAKEBST} +Patrick~W. Daly. +\newblock {\em Customizing Bibliographic Style Files}, 2003. +\newblock \viaCTANurl{/macros/latex/contrib/custom-bib/}. + +\bibitem[Dal10]{NATBIB} +Patrick~W. Daly. +\newblock {\em Natural Sciences and References (Author-Year and Numerical + Schemes)}, 2010. +\newblock \viaCTANurl{/macros/latex/contrib/natbib/}. + +\bibitem[Dow96]{DOWDING96} +Geoffrey Dowding. +\newblock {\em Finer Points in the Spacing \& Arrangement of Type}. +\newblock Hartley \& Marks, 1996. +\newblock ISBN 0--88179--119--9. + +\bibitem[Dow16]{PATCHCMD} +Michael~J. Downes. +\newblock {\em The patchcmd package}, 2016. +\newblock \viaCTANurl{/macros/latex/contrib/patchcmd/}. -%%% keep -\bibitem[NG98]{SIDECAP} - Rolf Niespraschk and Hubert G\"{a}\ss{}lein. - \newblock \emph{The sidecap package}. - \newblock June, 1998. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/sidecap/}) - -%%% keep -\bibitem[Oet]{LSHORT} - Tobias Oetiker. - \newblock \emph{The Not So Short Introduction to LaTeX2e}. - \newblock (Available from CTAN via - \CTANurl{/info/lshort/}) - -%%% keep -\bibitem[Oos96]{FANCYHDR} - Piet van Oostrum. - \newblock \emph{Page Layout in LaTeX}. - \newblock June, 1996. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/fancyhdr/}) - -%%% keep -\bibitem[Pak01]{SYMBOLS} - Scott Pakin. - \newblock \emph{The Comprehensive LaTeX Symbol List}. - \newblock July, 2001. - \newblock (Available from CTAN via - \CTANurl{/info/symbols/comprehensive/}) - -%%% keep \bibitem[dP84]{PARVILLE84} - H.~de~Parville. - \newblock Recreations mathematique: {La Tour d'Hanoi} et la question - du {Tonkin}. - \newblock \emph{La Nature}, part {I}:285--286, Paris 1884. +H.~de~Parville. +\newblock {\em Recreations mathematique: {La Tour d'Hanoi} et la question du + {Tonkin}}. +\newblock La Nature, 1884. +\newblock part {I}:285--286, Paris 1884\fixme{data not correct}. + +\bibitem[Eij07]{TEXBYTOPIC} +Victor Eijkhout. +\newblock {\em TeX by Topic}, 2007. +\newblock Originally published by Addison-Wesley in 1992. Out of print by the + late 90s. Copyright transfered back to the author who put it online. + \viaCTANurl{/info/texbytopic}. + +\bibitem[Eij16]{COMMENT} +Victor Eijkhout. +\newblock {\em The comment package}, 2016. +\newblock \viaCTANurl{/macros/latex/contrib/comment/}. -%%% keep -\bibitem[Pat88a]{BIBTEX} - Oren Patashnik. - \newblock \emph{BibTeXing}. - \newblock February, 1988. - \newblock (Available from CTAN as - \CTANurl{/bibliography/bibtex/distribs/doc/btxdoc.tex}) +\bibitem[FAQ]{FAQ} +{\em TeX FAQ}. +\newblock Available at \url{https://texfaq.org/}. -%%% keep -\bibitem[Pat88b]{BIBTEXHACK} - Oren Patashnik. - \newblock \emph{Designing BibTeX Styles}. - \newblock February, 1988. - \newblock (Available from CTAN as - \CTANurl{/bibliography/bibtex/distribs/doc/btxhak.tex}) +\bibitem[Far90]{FARIN90} +Gerald Farin. +\newblock {\em Curves and Surfaces for Computer Aided Geometric Design -- A + Practical Guide}. +\newblock Academic Press, 2nd edition, 1990. + +\bibitem[Fea20]{BOOKTABS} +Simon Fear. +\newblock {\em Publication quality tables in LaTeX}, 2020. +\newblock Maintained by Danie Els. \viaCTANurl{/macros/latex/contrib/booktabs}. + +\bibitem[Fly05]{FLYNN02} +Peter Flynn. +\newblock {\em Formatting Information: A Beginner's Introduction to Typesetting + with \LaTeX2}, 2005. +\newblock \viaCTANurl{/info/beginlatex/}. + +\bibitem[FM23]{FOOTMISC} +Robin Fairbairns and Frank Mittelbach. +\newblock {\em footmisc – a portmanteau package for customising footnotes in + \LaTeX}, 2023. +\newblock \viaCTANurl{/macros/latex/contrib/footmisc/}. -%%% keep -\bibitem[Pug02]{MATHPAZO} - Diego Puga. - \newblock \emph{The Pazo Math fonts for mathematical typesetting - with the Palatino fonts}. - \newblock May, 2002. - \newblock (Available from CTAN via - \CTANurl{/fonts/mathpazo/}) - -%%% keep -\bibitem[Rahtz23a]{NAMEREF} - Sebastian Rahtz, Heiko Oberdiek, The \LaTeX3 Project. - \newblock \emph{Section name references in LaTeX}. - \newblock 2023. - \newblock (Available from CTAN (the \texttt{nameref} package) via - \CTANurl{/macros/latex/contrib/hyperref/}) - -%%% keep -\bibitem[Rahtz23b]{HYPERREF} - Sebastian Rahtz, Heiko Oberdiek, The \LaTeX3 Project. - \newblock \emph{Hypertext marks in LaTeX}. - \newblock 2023. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/hyperref/}) - -%%% keep -\bibitem[Rec97]{EPSLATEX} - Keith Reckdahl. - \newblock \emph{Using Imported Graphics in LaTeX2e}. - \newblock December, 1997. Updated in 2006. - \newblock (Available from CTAN via - \CTANurl{/info/epslatex.pdf}) +\bibitem[FP80]{FAUX80} +I.~D. Faux and M.~J. Pratt. +\newblock {\em Computational Geometry for Design and Manufacture}. +\newblock Ellis Horwood, 1980. -\begin{comment} -\bibitem[Reh72]{REHE72} - Rolf Rehe. - \newblock `Type and how to make it most legible'. - \newblock \emph{Design Research International}, 1972. -\end{comment} +\bibitem[GMR{\etalchar{+}}07]{GCOMPANION} +Michel Goossens, Frank Mittelbach, Sebastian Rahtz, Denis Roegel, and Herbert + Vo{\ss}. +\newblock {\em The LaTeX Graphics Companion: Second edition}. +\newblock Addison-Wesley, 2007. +\newblock ISBN 0--321--50892--0. -%%% keep -\bibitem[Rei07]{REINGOLD07} - Edward M. Reingold. - \newblock `Writing numbers in words in TeX'. - \newblock TUGboat, 28, 2 pp 256--259, 2007. +\bibitem[Hoe98]{HOENIG98} +Alan Hoenig. +\newblock {\em TeX Unbound: LaTeX and TeX strategies for fonts, graphics, and + more}. +\newblock Oxford University Press, 1998. +\newblock ISBN 0--19--509686--X. -\begin{comment} -\bibitem[RAE71]{ROBINSON71} - D.~O.~Robinson, M.~Abbamonte and S.~H.~Evans. - \newblock `Why serifs are important: The perception of small print'. - \newblock \emph{Visible Language}, pp 353--359, 4, 1971. - -\bibitem[Rog43]{ROGERS43} - Bruce Rogers. - \newblock \emph{Paragraphs on Printing}. - \newblock William E. Rudge's Sons, Inc., 1943. - \newblock (Reissued by Dover, 1979, ISBN 0--486--23817--2) - -\bibitem[Rog49]{ROGERS49} - Bruce Rogers. - \newblock \emph{Centaur Types}. - \newblock October House, 1949. -\end{comment} +\bibitem[Jon95]{INDEX} +David~M. Jones. +\newblock {\em A new implementation of LaTeX's indexing commands}, 1995. +\newblock \viaCTANurl{/macros/latex/contrib/camel}. -%%% keep -\bibitem[RBC74]{ROUSEBALL} - W. W. Rouse Ball and H. S. M. Coxeter. - \newblock \emph{Mathematical Recreations and Essays}. - \newblock University of Toronto Press, twelfth edition, 1974. +\bibitem[Keh98]{XINDY} +Roger Kehr. +\newblock {\em xindy: A flexible indexing system}, 1998. +\newblock See \url{http://www.xindy.org/doc/manual.html}. -\begin{comment} -\bibitem[Ryd76]{RYDER} - John Ryder. - \newblock \emph{Printing for Pleasure}. Revised edition. - \newblock The Bodley Head, 1976. - \newblock ISBN 0--370--10443--9. - \newblock (In the USA published by Henry Regenery Co., Michigan, 1977. - ISBN 0--8092--78103--3) -\end{comment} +\bibitem[Ker22]{XCOLOR} +Uwe Kern. +\newblock {\em Extending LaTeX's color facilities: the xcolor package}, 2022. +\newblock \viaCTANurl{/macros/latex/contrib/xcolor/}. -%%% keep -\bibitem[SW94]{EBOOK} - Douglas Schenck and Peter Wilson. - \newblock \emph{Information Modeling the EXPRESS Way}. - \newblock Oxford University Press, 1994. - \newblock ISBN 0--19--508714--3. - -%%% keep -\bibitem[SRR99]{VERBATIM} - Rainer Sch\"{o}pf, Bernd Raichle and Chris Rowley. - \newblock \emph{A New Implementation of LaTeX's verbatim - and verbatim* Environments}. - \newblock December, 1999. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/required/tools/}) +\bibitem[Kha20]{BIDI} +Vafa Khalighi. +\newblock {\em The Bidi package}, 2020. +\newblock \CTANurl{/macros/latex/contrib/bidi/}. -\begin{comment} -\bibitem[Sch97]{SCHRIVER97} - Karen A.~Schriver. - \newblock \emph{Dynamics in Document Design}. - \newblock Wiley \& Sons, 1997. - -\bibitem[Sme96]{SMEIJERS96} - Fred Smeijers. - \newblock \emph{Counterpunch: making type in the sixteenth century, - designing typefaces now}. - \newblock Hyphen Press, London, 1996. - \newblock ISBN 0--907259--06--5. -\end{comment} +\bibitem[Knu84]{TEXBOOK} +Donald~E. Knuth. +\newblock {\em The TeXBook}. +\newblock Addison-Wesley, 1984. +\newblock ISBN 0--201--13448--9. +\bibitem[Knu86]{TEXPROGRAM} +Donald~E. Knuth. +\newblock {\em TeX: The Program}. +\newblock Addison-Wesley, 1986. +\newblock ISBN 0--201--13437--3. -\bibitem[Sch07]{practex-2007-3-ms} -Martin Scharrer, -\newblock\emph{Version Control of LaTeX Documents with svn-multi}. -\newblock \emph{The Prac{\TeX} Journal}, 3, 2007. -\newblock ISSN 1556-6994. +\bibitem[Knu87]{CM} +Donald~E. Knuth. +\newblock {\em Computer Modern Typefaces}. +\newblock Addison-Wesley, 1987. +\newblock ISBN 0--201--134446--2. -\bibitem[Sch09]{svn-multi} -Martin Scharrer, -\newblock\emph{The \textsf{svn-multi} package}, 2009. -\newblock (Available from CTAN via -\CTANurl{/macros/latex/contrib/svn-multi/}) +\bibitem[Knu92]{METAFONT} +Donald~E. Knuth. +\newblock {\em The METAFONT Book}. +\newblock Addison-Wesley, 1992. +\newblock ISBN 0--201--13444--6. +\bibitem[Lam94]{LAMPORT94} +Leslie Lamport. +\newblock {\em LaTeX: A Document Preparation System}. +\newblock Addison-Wesley, 1994. +\newblock ISBN 0--201--52983--1. -%%% keep -\bibitem[Sne04]{SNEEP04} - Maarten Sneep. - \newblock \emph{The atmosphere in the laboratory: cavity ring-down - measurements on scattering and absorption}. - \newblock Phd thesis, - \newblock Vrijie Universiteit, Amsterdam, 2004. +\bibitem[Lea03]{TEXFONTSITE} +Christopher League. +\newblock {\em TeX support for the FontSite 500 CD}, 2003. +\newblock Was availalble from \url{http://contrapunctus.net/fs500tex}, the page + is now defunct. -%%% keep -\bibitem[Tal21]{DATETIME2} - Nicola L. C. Talbot. - \newblock \emph{datetime2: date and time formats}. - \newblock Martch, 2021. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/datetime2/}) +\bibitem[Leh04]{FONTINST} +Philipp Lehman. +\newblock {\em The Font Installation Guide}, 2004. +\newblock \viaCTANurl{/info/Type1fonts/fontinstallationguide}. -%%% keep -\bibitem[Thi98]{ORNAMENTAL} - Christina Thiele. - \newblock `Hey --- it works: Ornamental rules'. - \newblock \emph{TUGboat}, - \newblock vol. 19, no. 4, p 427, December 1998. +\bibitem[LLB23]{NTG} +Victor~Eijkhout Leslie~Lamport and Johannes Braams. +\newblock {\em NTG Document Classes for \LaTeX\ version 2e}, 2023. +\newblock \viaCTANurl{/macros/latex/contrib/ntgclass/}. -%%% keep -\bibitem[Thi99]{TTC199} - Christina Thiele. - \newblock `The Treasure Chest: Package tours from CTAN', - \newblock \emph{TUGboat}, - \newblock vol. 20, no. 1, pp 53--58, March 1999. - -%%% keep -\bibitem[TJ05]{CALC} - Kresten Krab Thorup, Frank Jensen (and Chris Rowley). - \newblock \emph{The calc package --- Infix notation arithmetic in LaTeX}. - \newblock August, 2005. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/required/tools/}) +\bibitem[Lon91]{MULTIND} +F.~W. Long. +\newblock {\em The multind package}, 1991. +\newblock NB: Made for LaTeX209. + \viaCTANurl{/macros/latex209/contrib/misc/multind.sty}. + +\bibitem[Mad12]{CHAPSTYLES} +Lars Madsen. +\newblock {\em Various chapter styles for the memoir class}, 2012. +\newblock \viaCTANurl{/info/latex-samples/MemoirChapStyles/}. + +\bibitem[MC23]{ARRAY} +Frank Mittelbach and David Carlisle. +\newblock {\em A new implementation of \LaTeX's tabular and array environment}, + 2023. +\newblock \viaCTANurl{/macros/latex/required/tools/}. + +\bibitem[McD02]{SECTSTY} +Rowland McDonnell. +\newblock {\em The sectsty package}, 2002. +\newblock \viaCTANurl{/macros/latex/contrib/sectsty/}. -\begin{comment} -\bibitem[Tin63]{TINKER63} - Miles A.~Tinker. - \newblock \emph{Legibility of Print}. - \newblock Books on Demand (University Microfilms International), 1963. -\end{comment} +\bibitem[McL80]{MCLEAN80} +Ruari McLean. +\newblock {\em The Thames \& Hudson Manual of Typography}. +\newblock Thames \& Hudson, 1980. +\newblock ISBN 0--500--68022--1. + +\bibitem[{Mic}99]{WCOMPANION} +{Michel Goossens and Sebastian Rahtz (with Eitan Gurari, Ross Moore and Robert + Sutor)}. +\newblock {\em The LaTeX Web Companion: Integrating TeX, HTML and XML}. +\newblock Addison-Wesley, 1999. +\newblock ISBN 0--201--43311--7\fixme{author needs fixing}. + +\bibitem[Mit23a]{MULTICOL} +Frank Mittelbach. +\newblock {\em And environment for multicolumn output}, 2023. +\newblock \viaCTANurl{/macros/latex/required/tools/}. + +\bibitem[Mit23b]{LTHOOKS} +Frank Mittelbach. +\newblock {\em LaTeX's hook management}, 2023. +\newblock \viaCTANurl{/macros/latex/base/lthooks-doc.pdf}. + +\bibitem[ML23]{LTSHIPOUT} +Frank Mittelbach and The {LaTeX Project Team}. +\newblock {\em The ltshipout documentation}, 2023. +\newblock \viaCTANurl{/macros/latex/base/ltshipout-doc.pdf}. + +\bibitem[MOL23]{LTFILEHOOK} +Frank Mittelbach, Phelype Oleinik, and The {LaTeX Project Team}. +\newblock {\em The ltfilehook documentation}, 2023. +\newblock \viaCTANurl{/macros/latex/base/ltfilehooks-doc.pdf}. -%%% keep -\bibitem[Tob00]{SETSPACE} - Geoffrey Tobin. - \newblock \emph{setspace.sty}. - \newblock December, 2000. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/setspace/}) +\bibitem[Mor85]{MORTENSON85} +Michael~E. Mortenson. +\newblock {\em Geometric Modeling}. +\newblock John Wiley \& Sons, 1985. -%%% keep -\bibitem[Tsc91]{TSCHICHOLD91} - Jan Tschichold. - \newblock \emph{The Form of the Book}. - \newblock Lund Humphries, 1991. - \newblock ISBN 0--85331--623--6. +\bibitem[Mw04]{COMPANION} +Frank Mittelbach and Michel~Goossens {with Johannes Braams, David Carlisle and + Chris Rowley}. +\newblock {\em The \LaTeX\ Companion}. +\newblock Addison-Wesley, 2nd edition, 2004. +\newblock ISBN 0--201--36299--6.\fixme{with authors}. + +\bibitem[NG23]{SIDECAP} +Rolf Niespraschk and Hubert G{\"{a}\ss{}}lein. +\newblock {\em The sidecap package}, 2023. +\newblock \viaCTANurl{/macros/latex/contrib/sidecap/}. + +\bibitem[Oos22]{FANCYHDR} +{Pieter van} Oostrum. +\newblock {\em The fancyhdr and extramarks packages}, 2022. +\newblock \viaCTANurl{/macros/latex/contrib/fancyhdr/}. + +\bibitem[OPHS21]{LSHORT} +Tobias Oetiker, Hubert Partl, Irene Hyna, and Elisabeth Schlegl. +\newblock {\em The Not So Short Introduction to LaTeX2e}, 2021. +\newblock \viaCTANurl{/info/lshort/}. + +\bibitem[Pak21]{SYMBOLS} +Scott Pakin. +\newblock {\em The Comprehensive LaTeX Symbol List}, 2021. +\newblock \viaCTANurl{/info/symbols/comprehensive/}. -\begin{comment} -\bibitem[Tuf83]{TUFTE83} - Edward R. Tufte. - \newblock \emph{The Visual Display of Quantative Information}. - \newblock Graphics Press, 1983. -\end{comment} +\bibitem[Pat88a]{BIBTEX} +Oren Patashnik. +\newblock {\em BibTeXing}, 1988. +\newblock \viaCTANurl{/biblio/bibtex/contrib/doc/btxdoc.pdf}. -%%% keep -\bibitem[Ume99]{GEOMETRY} - Hideo Umeki. - \newblock \emph{The geometry package}. - \newblock November, 1999. - \newblock (Available from CTAN in - \CTANurl{/macros/latex/contrib/geometry/}) +\bibitem[Pat88b]{BIBTEXHACK} +Oren Patashnik. +\newblock {\em Designing BibTeX Styles}, 1988. +\newblock \viaCTANurl{/biblio/bibtex/contrib/doc/btxhak.pdf}. +\bibitem[Pug02]{MATHPAZO} +Diego Puga. +\newblock {\em The Pazo Math fonts for mathematical typesetting with the + Palatino fonts}, 2002. +\newblock \viaCTANurl{/fonts/mathpazo/}. -\begin{comment} -\bibitem[Whe95]{WHEILDON95} - Colin Wheildon. - \newblock \emph{Type \& Layout}. - \newblock Strathmore Press, 1995. - \newblock ISBN 0--9624891--5--8. -\end{comment} +\bibitem[Rec06]{EPSLATEX} +Keith Reckdahl. +\newblock {\em Using Imported Graphics in LaTeX2e}, 2006. +\newblock As the sources are not available, the document is only available + online. \viaCTANurl{/info/epslatex/english/epslatex.pdf}. -%%% keep -\bibitem[Wil00]{CATALOGUE} - Graham Williams. - \newblock \emph{The TeX Catalogue}. - \newblock (Latest version on CTAN as - \CTANurl{/help/Catalogue/catalogue.html}) +\bibitem[Rei07]{REINGOLD07} +Edward~M. Reingold. +\newblock Writing numbers in words in tex. +\newblock {\em TUGboat}, 28(2):256--259, 2007. -%%% keep -\bibitem[Wil93]{ADRIANWILSON93} - Adrian Wilson. - \newblock \emph{The Design of Books}. - \newblock Chronicle Books, 1993. - \newblock ISBN 0--8118--0304--X. - - -%%% keep -\bibitem[Wil99b]{TOCVSEC2} - Peter Wilson. - \newblock \emph{The tocvsec2 package}. - \newblock January, 1999. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/tocvsec2/}) - -%%% keep -\bibitem[Wil00a]{EPIGRAPH} - Peter Wilson. - \newblock \emph{The epigraph package}. - \newblock February, 2000. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/epigraph/}) - -%%% keep -\bibitem[Wil00b]{ISOCLASS} - Peter Wilson. - \newblock \emph{LaTeX files for typesetting ISO standards}. - \newblock February, 2000. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/isostds/iso/}) - -%%% keep -\bibitem[Wil00c]{NEXTPAGE} - Peter Wilson. - \newblock \emph{The nextpage package}. - \newblock February, 2000. - \newblock (Available from CTAN as - \CTANurl{/macros/latex/contrib/misc/nextpage.sty}) +\bibitem[ROL23a]{HYPERREF} +Sebastian Rahtz, Heiko Oberdiek, and The {LaTeX Project}. +\newblock {\em Hypertext marks in LaTeX: a manual for hyperref}, 2023. +\newblock \viaCTANurl{/macros/latex/contrib/hyperref/}. -\begin{comment} -\bibitem[Wil00d]{NEEDSPACE} - Peter Wilson. - \newblock \emph{The needspace package}. - \newblock March, 2000. - \newblock (Available from CTAN as - \url{/macros/latex/contrib/misc/needspace.sty}) -\end{comment} +\bibitem[ROL23b]{NAMEREF} +Sebastian Rahtz, Heiko Oberdiek, and The {LaTeX Project}. +\newblock {\em Section name references in LaTeX}, 2023. +\newblock \viaCTANurl{/macros/latex/contrib/hyperref/}. -%%% keep -\bibitem[Wil00e]{XTAB} - Peter Wilson. - \newblock \emph{The xtab package}. - \newblock April 2000. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/xtab}) - -%%% keep -\bibitem[Wil01a]{ABSTRACT} - Peter Wilson. - \newblock \emph{The abstract package}. - \newblock February, 2001. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/abstract/}) +\bibitem[Sch07]{practex-2007-3-ms} +Martin Scharrer. +\newblock Version control of latex documents with svn-multi. +\newblock {\em The Prac{\TeX} Journal}, 3, 2007. +\newblock ISSN 1556-6994. -\begin{comment} -%%% it no longer exist -\LMnote{2010/09/28}{Removed as it no longer exist} -\bibitem[Wil01b]{CHNGPAGE} - Peter Wilson. - \newblock \emph{The changepage package}. - \newblock February, 2001. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/changepage/}) - -\bibitem[Wil01c]{APPENDIX} - Peter Wilson. - \newblock \emph{The appendix package}. - \newblock March, 2001. - \newblock (Available from CTAN in - \url{/macros/latex/contrib/appendix}) -\end{comment} +\bibitem[Sch11]{svn-multi} +Martin Scharrer. +\newblock {\em The svn-multi package}, 2011. +\newblock \viaCTANurl{/macros/latex/contrib/svn-multi/}. -%%% keep -\bibitem[Wil01d]{CCAPTION} - Peter Wilson. - \newblock \emph{The ccaption package}. - \newblock March, 2001. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/ccaption/}) - -%%% keep -\bibitem[Wil01e]{CHNGCNTR} - Peter Wilson. - \newblock \emph{The chngcntr package}. - \newblock April, 2001. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/chngcntr/}) - -%%% keep -\bibitem[Wil01f]{HANGING} - Peter Wilson. - \newblock \emph{The hanging package}. - \newblock March, 2001. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/hanging/}) - -%%% keep -\bibitem[Wil01g]{TITLING} - Peter Wilson. - \newblock \emph{The titling package}. - \newblock March, 2001. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/titling/}) - -%%% keep -\bibitem[Wil01h]{TOCBIBIND} - Peter Wilson. - \newblock \emph{The tocbibind package}. - \newblock April, 2001. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/tocbibind/}) - -%%% keep -\bibitem[Wil01i]{TOCLOFT} - Peter Wilson. - \newblock \emph{The tocloft package}. - \newblock April, 2001. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/tocloft/}) +\bibitem[Sne04]{SNEEP04} +Maarten Sneep. +\newblock {\em The atmosphere in the laboratory: cavity ring-down measurements + on scattering and absorption}. +\newblock PhD thesis, Vrijie Universiteit, Amsterdam, 2004. +\bibitem[SRR22]{VERBATIM} +Rainer Sch{\"{o}}pf, Bernd Raichle, and Chris Rowley. +\newblock {\em A New Implementation of LaTeX's verbatim and verbatim* + Environments}, 2022. +\newblock \viaCTANurl{/macros/latex/required/tools/}. -\begin{comment} -\bibitem[Wil01j]{MEMOIR} - Peter Wilson. - \newblock \emph{The LaTeX memoir class for configurable book - typesetting: Source code}. - \newblock July, 2001. - \newblock (Available from CTAN in - \url{/macros/latex/contrib/memoir}) - -\bibitem[Wil01k]{VERSE} - Peter Wilson. - \newblock \emph{Typesetting simple verse with LaTeX} - \newblock July, 2001. - \newblock (Available from CTAN in - \url{/macros/latex/contrib/verse}) - -\bibitem[Wil01l]{BOOKLET} - Peter Wilson. - \newblock \emph{Printing booklets with LaTeX} - \newblock August, 2001. - \newblock (Available from CTAN in - \url{/macros/latex/contrib/booklet}) -\end{comment} +\bibitem[SW94]{EBOOK} +Douglas Schenck and Peter Wilson. +\newblock {\em Information Modeling the EXPRESS Way}. +\newblock Oxford University Press, 1994. +\newblock ISBN 0--19--508714--3. +\bibitem[Tal21]{DATETIME2} +Nicola L.~C. Talbot. +\newblock {\em Datetime2: date and time formats}, 2021. +\newblock \viaCTANurl{/macros/latex/contrib/datetime2/}. -%%% keep -\bibitem[Wil03b]{LEDMAC} - Peter Wilson. - \newblock \emph{ledmac: A presumptuous attempt to port EDMAC and - TABMAC to LaTeX} - \newblock November, 2003. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/ledmac/}) +\bibitem[TF22]{SETSPACE} +Geoffrey Tobin and Robin Fairbairns. +\newblock {\em The setspace package}, 2022. +\newblock \viaCTANurl{/macros/latex/contrib/setspace/}. -\begin{comment} -\bibitem[Wil04a]{GLISTER3} - Peter Wilson. - \newblock `Glisterings'. - \newblock TUGboat, 25, 2 pp 201--202, 2004. -\end{comment} +\bibitem[Thi98]{ORNAMENTAL} +Christina Thiele. +\newblock Hey -- it works: Ornamental rules. +\newblock {\em TUGboat}, 19(4):427, 1998. + +\bibitem[Thi99]{TTC199} +Christina Thiele. +\newblock The treasure chest: Package tours from ctan. +\newblock {\em TUGboat}, 20(1):53--58, 1999. +\bibitem[TJR17]{CALC} +Kresten~Krab Thorup, Frank Jensen, and Chris {Rowley\fxnote{should be (and + Chris Rowley)}}. +\newblock {\em The calc package --- Infix notation arithmetic in LaTeX}, 2017. +\newblock \viaCTANurl{/macros/latex/required/tools/}. -\LMnote{2010/02/08}{Added from the main bib file} -\bibitem[Wil04a]{BEZ123} +\bibitem[Tsc91]{TSCHICHOLD91} +Jan Tschichold. +\newblock {\em The Form of the Book}. +\newblock Lund Humphries, 1991. +\newblock ISBN 0--85331--623--6. + +\bibitem[Ume20]{GEOMETRY} +Hideo Umeki. +\newblock {\em The geometry package}, 2020. +\newblock \viaCTANurl{/macros/latex/contrib/geometry/}. + +\bibitem[vL92]{LEUNEN92} +Mary-Claire van Leunen. +\newblock {\em A Handbook for Scholars}. +\newblock Oxford University Press, 1992. +\newblock ISBN 0--19--506954--4. + +\bibitem[Vo{\ss}22]{XURL} +Herbert Vo{\ss}. +\newblock {\em Package xurl}, 2022. +\newblock Extends the \Lpack{url} package to increase the number of allowed + break points in URLs. \viaCTANurl{/macros/latex/contrib/xurl}. + +\bibitem[Wil]{RUMOUR} Peter Wilson. -\newblock \emph{The bez123 and multiply packages}, April 2004. -\newblock (Available from CTAN in \CTANurl{/macros/latex/contrib/bez123/}) +\newblock A rumour of humour: A scientist's commonplace book. +\newblock To be published. Maintainers note: probably never will. +\bibitem[Wil93]{ADRIANWILSON93} +Adrian Wilson. +\newblock {\em The Design of Books}. +\newblock Chronicle Books, 1993. +\newblock ISBN 0--8118--0304--X. -%%% keep -\bibitem[Wil04b]{PAGENOTE} - Peter Wilson. - \newblock \emph{The pagenote package} - \newblock September, 2004. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/pagenote/}) +\bibitem[Wil00]{NEXTPAGE} +Peter Wilson. +\newblock {\em The nextpage package}, 2000. +\newblock \viaCTANurl{/macros/latex/contrib/misc/nextpage.sty}. +\bibitem[Wil02]{ISOCLASS} +Peter Wilson. +\newblock {\em LaTeX files for typesetting ISO standards}, 2002. +\newblock \viaCTANurl{/macros/latex/contrib/isostds/iso/}. -%%% keep -\bibitem[Wil04c]{LAYOUTS} - Peter Wilson. - \newblock \emph{The layouts package} - \newblock October, 2004. - \newblock (Available from CTAN in - \CTANurl{/macros/latex/contrib/layouts/}) +\bibitem[Wil04]{LAYOUTS} +Peter Wilson. +\newblock {\em The layouts package}, 2004. +\newblock \viaCTANurl{/macros/latex/contrib/layouts/}. +\bibitem[Wil07]{GLISTER07} +Peter Wilson. +\newblock Glisterings. +\newblock {\em TUGboat}, 28(2):229--232, 2007. -%%% keep -\bibitem[Wil07a]{TITLEPAGES} - Peter Wilson. - \newblock \emph{Some Examples of Title Pages}. - \newblock Herries Press, 2007. - \newblock (Available from CTAN via - \CTANurl{/info/latex-samples/TitlePages/}) +\bibitem[Wil08]{GLISTER08} +Peter Wilson. +\newblock Glisterings. +\newblock {\em TUGboat}, 29(2):324--327, 2008. -%%% keep -\begin{comment} - % repeated below - \bibitem[Wil07b]{MEMCODE} Peter Wilson. \newblock \emph{The \ltx\ - memoir class for configurable book typesetting: source code} - \newblock November, 2007. \newblock (Available from CTAN in - \url{/macros/latex/contrib/memoir}) -\end{comment} -%%% keep +\bibitem[Wil09a]{ABSTRACT} +Peter Wilson. +\newblock {\em The abstract package}, 2009. +\newblock \viaCTANurl{/macros/latex/contrib/abstract/}. -%%% keep, outcommented, as we do not use an addendum at the moment -\LMnote{2010/09/28}{out commented as we do not provide one at the moment} -\begin{comment} -\bibitem[Wil07d]{MEMADD} +\bibitem[Wil09b]{BEZ123} Peter Wilson. - \newblock \emph{ADDENDUM: The Memoir Class for Configurable - Typesetting --- User Guide} - \newblock November, 2007. - \newblock (Available from CTAN in - \url{/macros/latex/contrib/memoir}) -\end{comment} - -%%% keep -\bibitem[Wil07e]{GLISTER07} +\newblock {\em The bez123 and multiply packages}, 2009. +\newblock \viaCTANurl{/macros/latex/contrib/bez123/}. + +\bibitem[Wil09c]{CHANGEPAGE} Peter Wilson. - \newblock `Glisterings', \emph{TUGboat}, 28(2):229--232, 2007. +\newblock {\em The changepage package}, 2009. +\newblock \viaCTANurl{/macros/latex/contrib/changepage/}. -\begin{comment} -\bibitem[Wil07f]{TUGKEYNOTE07} +\bibitem[Wil09d]{HANGING} Peter Wilson. - \newblock `Between then and now --- A meandering memoir', - \newblock \emph{TUGboat}, 28(3):280--298, 2007. -\end{comment} +\newblock {\em The hanging package}, 2009. +\newblock \viaCTANurl{/macros/latex/contrib/hanging/}. -%%% keep -\bibitem[Wil08a]{CHANGEPAGE} - Peter Wilson. - \newblock \emph{The changepage package}. - \newblock March, 2008. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/changepage/}) +\bibitem[Wil09e]{TITLING} +Peter Wilson. +\newblock {\em The titling package}, 2009. +\newblock \viaCTANurl{/macros/latex/contrib/titling/}. -%%% keep -\bibitem[Wil08b]{GLISTER08} +\bibitem[Wil10a]{TITLEPAGES} Peter Wilson. - \newblock `Glisterings', \emph{TUGboat}, 29(2):324--327, 2008. - -%%% keep -\bibitem[Wil09a]{FONTTABLE} - Peter Wilson. - \newblock \emph{The fonttable package} - \newblock April, 2009. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/fonttable/}) - -\bibitem[Wil19a]{MEMCODE} -Peter Wilson (with the assistance of Lars Madsen). - \newblock \emph{The \ltx\ memoir class for configurable book - typesetting: source code} - \newblock November, 2019. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/memoir/}) - -\bibitem[Wil23]{MEMMAN} -Peter Wilson (with the assistance of Lars Madsen). - \newblock \emph{The Memoir Class for Configurable Typesetting --- - User Guide} - \newblock November, 2023. Regularly updated. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/memoir/}) - -\bibitem[Wil18]{MEMDESIGN} - Peter Wilson. - \newblock \emph{A Few Notes on Book Design} - \newblock September, 2018. - \newblock (Available from CTAN via - \CTANurl{/info/memdesign/}) - - -%%% keep -% \bibitem[Wil??]{RUMOUR} -% Peter Wilson. -% \newblock \emph{A Rumour of Humour: A scientist's commonplace book}. -% \newblock To be published. +\newblock {\em Some Examples of Title Pages}. +\newblock Herries Press, 2010. +\newblock \viaCTANurl{/info/latex-samples/TitlePages/}. +\bibitem[Wil10b]{TOCBIBIND} +Peter Wilson. +\newblock {\em The tocbibind package}, 2010. +\newblock \viaCTANurl{/macros/latex/contrib/tocbibind/}. -\bibitem[Wri23]{SIUNITX} - Joseph Wright. - \newblock \emph{Siunitx — A comprehensive (SI) units package} - \newblock October, 2023. - \newblock (Available from CTAN via \CTANurl{/macros/latex/contrib/siunitx}) +\bibitem[Wil11a]{CATALOGUE} +Graham Williams. +\newblock {\em The TeX Catalogue}, 2011. +\newblock \viaCTANurl{/obsolete/help/Catalogue/catalogue.html}. Obsolete and + not maintained. +\bibitem[Wil11b]{CCAPTION} +Peter Wilson. +\newblock {\em The ccaption package}, 2011. +\newblock \viaCTANurl{/macros/latex/contrib/ccaption/}. +\bibitem[Wil11c]{XTAB} +Peter Wilson. +\newblock {\em The xtab package}, 2011. +\newblock \viaCTANurl{/macros/latex/contrib/xtab}. +\bibitem[Wil14]{TOCVSEC2} +Peter Wilson. +\newblock {\em The tocvsec2 package}, 2014. +\newblock \viaCTANurl{/macros/latex/contrib/tocvsec2/}. -\begin{comment} -\bibitem[Wis03]{WISHART03} -David Wishart. -\newblock \emph{The Printing of Mathematics} -\newblock in \emph{Type \& Typography: Highlights from \emph{Matrix}, the - review for printers \& bibliophiles}. -\newblock Mark Batty Publisher, 2003. -\newblock ISBN 0--9715687--6--6. -\newblock (Originally published in \emph{Matrix 8}, 1988) - -\bibitem[Wul53]{WULLING-FOOTNOTES} - Emerson G. Wulling. - \newblock \emph{A Comp's-Eye View of Footnotes}. - \newblock Sumac Press, 1953. - -\bibitem[Zac69]{ZACHRISSOM69} - B.~Zachrissom. - \newblock \emph{Studies in the Legibility of Printed Text}. - \newblock Almqvist \& Wiksell, Stockholm, 1969. -\end{comment} +\bibitem[Wil16]{LEDMAC} +Peter Wilson. +\newblock {\em Ledmac: A presumptuous attempt to port EDMAC, TABMAC and + EDSTANZA to LaTeX}, 2016. +\newblock \viaCTANurl{/macros/latex/contrib/ledmac/}. Deprecated, users should + use \Lpack{reledmac} instead. -%%% keep -\bibitem[Zan98]{FANCYBOX} - Timothy Van Zandt. - \newblock \emph{Documentation for fancybox.sty: Box tips and tricks for - LaTeX}, - \newblock November, 1998. - \newblock (Available from CTAN via - \CTANurl{/macros/latex/contrib/fancybox/}) +\bibitem[Wil17]{FONTTABLE} +Peter Wilson. +\newblock {\em The fonttable package}, 2017. +\newblock \viaCTANurl{/macros/latex/contrib/fonttable/}. -\begin{comment} -\bibitem[Zap00]{ZAPF00} - Hermann Zapf. - \newblock \emph{The Fine Art of Letters}. - \newblock The Grolier Club, 2000. - \newblock ISBN 0--910672--35--0. -\end{comment} +\bibitem[Wil18a]{CHNGCNTR} +Peter Wilson. +\newblock {\em The chngcntr package}, 2018. +\newblock The functionality is now included in the LaTeX kernel, loading the + package does nothing. \viaCTANurl{/macros/latex/contrib/chngcntr/}. + +\bibitem[Wil18b]{MEMDESIGN} +Peter Wilson. +\newblock {\em A Few Notes on Book Design}, 2018. +\newblock \viaCTANurl{/info/memdesign/}. + +\bibitem[Wil20a]{EPIGRAPH} +Peter Wilson. +\newblock {\em The epigraph package}, 2020. +\newblock \viaCTANurl{/macros/latex/contrib/epigraph/}. + +\bibitem[Wil20b]{TOCLOFT} +Peter Wilson. +\newblock {\em The tocloft package}, 2020. +\newblock \viaCTANurl{/macros/latex/contrib/tocloft/}. + +\bibitem[Wil23a]{MEMCODE} +Peter Wilson. +\newblock {\em The \LaTeX\ memoir class for configurable book typesetting: + source code}, 2023. +\newblock \viaCTANurl{/macros/latex/contrib/memoir/}. + +\bibitem[Wil23b]{MEMMAN} +Peter Wilson. +\newblock {\em The Memoir Class for Configurable Typesetting -- User Guide}, + 2023. +\newblock \viaCTANurl{/macros/latex/contrib/memoir/}. + +\bibitem[Wri23]{SIUNITX} +Joseph Wright. +\newblock {\em Siunitx — A comprehensive (SI) units package}, 2023. +\newblock \viaCTANurl{/macros/latex/contrib/siunitx}. + +\bibitem[Zan10]{FANCYBOX} +Timothy~Van Zandt. +\newblock {\em Documentation for fancybox.sty: Box tips and tricks for LaTeX}, + 2010. +\newblock \viaCTANurl{/macros/latex/contrib/fancybox/}. \end{thebibliography} + \clearpage \twocolindex diff --git a/macros/latex/contrib/memoir/doc-src/memsty.sty b/macros/latex/contrib/memoir/doc-src/memsty.sty index 6f37b8e569..7e178a8fb6 100644 --- a/macros/latex/contrib/memoir/doc-src/memsty.sty +++ b/macros/latex/contrib/memoir/doc-src/memsty.sty @@ -18,6 +18,8 @@ \usepackage{pifont} \usepackage{amsmath} \usepackage[T1]{fontenc} +\usepackage{xurl} + \providecommand{\LMnote}[2]{} \providecommand{\PWnote}[2]{} @@ -1127,6 +1129,9 @@ it to use the new width for the margin par} } } +\newcommand\viaCTANurl[1]{CTAN: \CTANurl{#1}} + + \newcommand\reimplemented[2]{% \textit{Reimplemented, #1\footnote{#2}} diff --git a/macros/latex/contrib/memoir/memman.pdf b/macros/latex/contrib/memoir/memman.pdf index fff50043ec..706dc8ff11 100644 Binary files a/macros/latex/contrib/memoir/memman.pdf and b/macros/latex/contrib/memoir/memman.pdf differ diff --git a/macros/latex/contrib/memoir/memoir.dtx b/macros/latex/contrib/memoir/memoir.dtx index b22db8831b..fb6dc088cb 100644 --- a/macros/latex/contrib/memoir/memoir.dtx +++ b/macros/latex/contrib/memoir/memoir.dtx @@ -131,6 +131,8 @@ % \changes{v3.7r}{2022/07/29}{Maintenance} % \changes{v3.7.19}{2022/11/17}{Maintenance} % \changes{v3.8}{2023/08/08}{Maintenance, see the README for details} +% \changes{v3.8a}{2023/08/14}{Forgot to enable stopping if the LaTeX +% format is too old} % % \def\dtxfile{memoir.dtx} % @@ -431,8 +433,8 @@ % Announce the name, option files and version for LaTeX2e files: % \begin{macrocode} %\ProvidesClass{memoir}% -% [2023/08/08 v3.8 configurable book, report, article document class] -%\newcommand\memversion{v3.8, 2023/08/08} +% [2023/08/14 v3.8a configurable book, report, article document class] +%\newcommand\memversion{v3.8a, 2023/08/14} % \end{macrocode} % % \changes{v3.7m}{2020/08/05}{Added \cs{IfFormatAtLeastTF}} @@ -456,6 +458,7 @@ % % Stop the loading if the kernel is too old (as \cs{NeedsTeXFormat} % only issues a warning). Though we cannot do much about nonstopmode. +% \changes{v3.8a}{2023/08/14}{Forgot to enable the stop mode} % \begin{macrocode} %\IfFormatAtLeastTF{\mem@atleast@kernel}{}{ % \ClassError{memoir}{% @@ -464,7 +467,7 @@ % from at least \mem@atleast@kernel\space onwards. Please update your\MessageBreak % entire LaTeX installation instead of manually updating\MessageBreak % just memoir}{} -% % \batchmode\read-1to\@tempa% evil mode engaged +% \batchmode\read-1to\@tempa% evil mode engaged %} % \end{macrocode} % diff --git a/macros/latex/contrib/nicematrix/nicematrix-code.dtx b/macros/latex/contrib/nicematrix/nicematrix-code.dtx index 7f7920ec77..39677ce108 100644 --- a/macros/latex/contrib/nicematrix/nicematrix-code.dtx +++ b/macros/latex/contrib/nicematrix/nicematrix-code.dtx @@ -17,8 +17,8 @@ % % \fi % \iffalse -\def\myfileversion{6.21a} -\def\myfiledate{2023/07/17} +\def\myfileversion{6.22} +\def\myfiledate{2023/08/14} % % %<*batchfile> @@ -181,7 +181,7 @@ version 2005/12/01 or later. % \begin{macrocode} \cs_new_protected:Npn \@@_msg_new:nnn #1 #2 #3 { - \bool_if:NTF \c_@@_messages_for_Overleaf_bool + \bool_if:NTF \g_@@_messages_for_Overleaf_bool { \msg_new:nnn { nicematrix } { #1 } { #2 \\ #3 } } { \msg_new:nnnn { nicematrix } { #1 } { #2 } { #3 } } } @@ -192,14 +192,15 @@ version 2005/12/01 or later. % warning on Overleaf. The argument is given by curryfication. % \begin{macrocode} \cs_new_protected:Npn \@@_error_or_warning:n - { \bool_if:NTF \c_@@_messages_for_Overleaf_bool \@@_warning:n \@@_error:n } + { \bool_if:NTF \g_@@_messages_for_Overleaf_bool \@@_warning:n \@@_error:n } % \end{macrocode} % % We try to detect whether the compilation is done on Overleaf. We use % |\c_sys_jobname_str| because, with Overleaf, the value of |\c_sys_jobname_str| % is always ``|output|''. % \begin{macrocode} -\bool_set:Nn \c_@@_messages_for_Overleaf_bool +\bool_new:N \g_@@_messages_for_Overleaf_bool +\bool_gset:Nn \g_@@_messages_for_Overleaf_bool { \str_if_eq_p:Vn \c_sys_jobname_str { _region_ } % for Emacs || \str_if_eq_p:Vn \c_sys_jobname_str { output } % for Overleaf @@ -296,7 +297,7 @@ version 2005/12/01 or later. \IfPackageLoadedTF { mdwtab } { \@@_fatal:n { mdwtab~loaded } } { - \bool_if:NF \c_@@_no_test_for_array_bool + \bool_if:NF \g_@@_no_test_for_array_bool { \group_begin: \hbox_set:Nn \l_tmpa_box @@ -310,10 +311,62 @@ version 2005/12/01 or later. } } % \end{macrocode} +% +% \bigskip +% \section{Collecting options} +% +% The following technic allows to create user commands with the ability to put +% an arbitrary number of |[|\textsl{list of (key=val)}|]| after the name of the +% command. +% +% \medskip +% \emph{Exemple} :\par\nobreak +% +% |\@@_collect_options:n { \F } [x=a,y=b] [z=c,t=d] { arg }| +% +% will be transformed in :\quad |\F{x=a,y=b,z=c,t=d}{arg}| +% +% \smallskip +% Therefore, by writing : |\def\G{\@@_collect_options:n{\F}}|, +% +% the command |\G| takes in an arbitrary number of optional arguments between +% square brackets. +% +% \bigskip +% \begin{macrocode} +\cs_new_protected:Npn \@@_collect_options:n #1 + { + \peek_meaning:NTF [ + { \@@_collect_options:nw { #1 } } + { #1 { } } + } +% \end{macrocode} +% +% \bigskip +% We use |\NewDocumentCommand| in order to be able to allow nested brackets +% within the argument between |[| and |]|. +% \begin{macrocode} +\NewDocumentCommand \@@_collect_options:nw { m r[] } + { \@@_collect_options:nn { #1 } { #2 } } + +\cs_new_protected:Npn \@@_collect_options:nn #1 #2 + { + \peek_meaning:NTF [ + { \@@_collect_options:nnw { #1 } { #2 } } + { #1 { #2 } } + } + +\cs_new_protected:Npn \@@_collect_options:nnw #1#2[#3] + { \@@_collect_options:nn { #1 } { #2 , #3 } } +% \end{macrocode} +% % % \bigskip % \section{Technical definitions} % +% The following token list will be used for definitions of user commands (with +% |\NewDocumentCommand|) with an embellishment using an \emph{underscore} (there +% may be problems because of the catcode of the underscore). % \begin{macrocode} \tl_new:N \l_@@_argspec_tl % \end{macrocode} @@ -942,6 +995,27 @@ version 2005/12/01 or later. % \begin{macrocode} \tl_new:N \g_@@_aux_tl % \end{macrocode} +% +% During the second run, if informations concerning the current environment has +% been found in the |aux| file, the following flag will be raised. +% \begin{macrocode} +\bool_new:N \g_@@_aux_found_bool +% \end{macrocode} +% +% \bigskip +% In particuler, in that |aux| file, there will, for each environment of +% \pkg{nicematrix}, an affectation for the the following sequence that will +% contain informations about the size of the array. +% \begin{macrocode} +\seq_new:N \g_@@_size_seq +% \end{macrocode} +% +% \bigskip +% \begin{macrocode} +\tl_new:N \g_@@_left_delim_tl +\tl_new:N \g_@@_right_delim_tl +\tl_new:N \g_@@_preamble_tl +% \end{macrocode} % % \bigskip % The following parameter corresponds to the key |columns-type| of the @@ -956,6 +1030,16 @@ version 2005/12/01 or later. \hook_gput_code:nnn { begindocument } { . } { \@@_set_preamble:Nn \l_@@_columns_type_tl { c } } % \end{macrocode} +% +% \bigskip +% The following parameters correspond to the keys |down|, |up| and |middle| of a +% command such as |\Cdots|. Usually, the final user doesn't use that keys +% directly because he uses the syntax with the embellishments |_|, |^| and |:|. +% \begin{macrocode} +\tl_new:N \l_@@_xdots_down_tl +\tl_new:N \l_@@_xdots_up_tl +\tl_new:N \l_@@_xdots_middle_tl +% \end{macrocode} % % \bigskip % \begin{macrocode} @@ -1316,10 +1400,11 @@ version 2005/12/01 or later. % \end{macrocode} % % \medskip -% The following parameters correspond to the keys |fill|, |draw|, |tikz|, |borders|, -% and |rounded-corners| of the command |\Block|. +% The following parameters correspond to the keys |fill|, |opacity|, |draw|, +% |tikz|, |borders|, and |rounded-corners| of the command |\Block|. % \begin{macrocode} \tl_new:N \l_@@_fill_tl +\tl_new:N \l_@@_opacity_tl \tl_new:N \l_@@_draw_tl \seq_new:N \l_@@_tikz_seq \clist_new:N \l_@@_borders_clist @@ -1414,7 +1499,6 @@ version 2005/12/01 or later. % \begin{macrocode} \bool_new:N \l_@@_hvlines_bool % \end{macrocode} -% % % % \bigskip @@ -1569,6 +1653,27 @@ version 2005/12/01 or later. } % \end{macrocode} % +% \bigskip +% The following internal parameters are for: +% \begin{itemize} +% \item |\Ldots| \emph{with both extremities open} (and hence also |\Hdotsfor| in an +% exterior row; +% \item |\Vdots| \emph{with both extremities open} (and hence also |\Vdotsfor| in an +% exterior column; +% \item when the special character ``|:|'' is used in order to put the label of +% a so-called ``dotted line'' \emph{on the line}, a margin of +% |\c_@@_innersep_middle_dim| will be added around the label. +% \end{itemize} +% +% \begin{macrocode} +\hook_gput_code:nnn { begindocument } { . } + { + \dim_const:Nn \c_@@_shift_Ldots_last_row_dim { 0.5 em } + \dim_const:Nn \c_@@_shift_exterior_Vdots_dim { 0.6 em } + \dim_const:Nn \c_@@_innersep_middle_dim { 0.17 em } + } +% \end{macrocode} +% % % \bigskip % \section{The command \textbackslash tabularnote} @@ -1937,7 +2042,6 @@ version 2005/12/01 or later. \begin { pgfscope } \pgfset { - % outer~sep = \c_zero_dim , inner~sep = \c_zero_dim , minimum~size = \c_zero_dim } @@ -1969,7 +2073,6 @@ version 2005/12/01 or later. \begin { pgfscope } \pgfset { - % outer~sep = \c_zero_dim , inner~sep = \c_zero_dim , minimum~size = \c_zero_dim } @@ -2051,14 +2154,13 @@ version 2005/12/01 or later. \hook_gput_code:nnn { begindocument } { . } { \dim_set:Nn \l_@@_xdots_inter_dim { 0.45 em } } % \end{macrocode} -% We use a hook only by security in case \cls{revtex4-1} -% is used (even though it is obsolete). +% The unit is |em| and that's why we fix the dimension after the preamble. % % \bigskip -% The following dimension is the minimal distance between a node (in fact an -% anchor of that node) and a dotted line (we say ``minimal'' because, by -% definition, a dotted line is not a continuous line and, therefore, this -% distance may vary a little). +% The following dimension is the distance between a node (in fact an +% anchor of that node) and a dotted line (for real dotted lines, the actual +% distance may, of course, be a bit larger, depending of the exact position of +% the dots). % \begin{macrocode} \dim_new:N \l_@@_xdots_shorten_start_dim \dim_new:N \l_@@_xdots_shorten_end_dim @@ -2068,8 +2170,7 @@ version 2005/12/01 or later. \dim_set:Nn \l_@@_xdots_shorten_end_dim { 0.3 em } } % \end{macrocode} -% We use a hook only by security in case \cls{revtex4-1} is used (even though it -% is obsolete). +% The unit is |em| and that's why we fix the dimension after the preamble. % % \bigskip % The following dimension is the radius of the dots for the dotted lines (when @@ -2080,8 +2181,7 @@ version 2005/12/01 or later. \hook_gput_code:nnn { begindocument } { . } { \dim_set:Nn \l_@@_xdots_radius_dim { 0.53 pt } } % \end{macrocode} -% We use a hook only by security in case \cls{revtex4-1} is used (even though it -% is obsolete). +% The unit is |em| and that's why we fix the dimension after the preamble. % % % \bigskip @@ -2130,7 +2230,7 @@ version 2005/12/01 or later. % % \bigskip % The following parameter correspond to the key |corners|. The elements of that -% |clist| must be in |NW|, |SW|, |NE| and |SE|. +% |clist| must be within |NW|, |SW|, |NE| and |SE|. % \begin{macrocode} \clist_new:N \l_@@_corners_clist % \end{macrocode} @@ -2262,8 +2362,25 @@ version 2005/12/01 or later. % % \bigskip % \begin{macrocode} +% \bigskip +% \begin{macrocode} \keys_define:nn { NiceMatrix / xdots } { + shorten-start .code:n = + \hook_gput_code:nnn { begindocument } { . } + { \dim_set:Nn \l_@@_xdots_shorten_start_dim { #1 } } , + shorten-end .code:n = + \hook_gput_code:nnn { begindocument } { . } + { \dim_set:Nn \l_@@_xdots_shorten_end_dim { #1 } } , + shorten-start .value_required:n = true , + shorten-end .value_required:n = true , + shorten .code:n = + \hook_gput_code:nnn { begindocument } { . } + { + \dim_set:Nn \l_@@_xdots_shorten_start_dim { #1 } + \dim_set:Nn \l_@@_xdots_shorten_end_dim { #1 } + } , + shorten .value_required:n = true , horizontal-labels .bool_set:N = \l_@@_xdots_h_labels_bool , horizontal-labels .default:n = true , line-style .code:n = @@ -2277,25 +2394,6 @@ version 2005/12/01 or later. line-style .value_required:n = true , color .tl_set:N = \l_@@_xdots_color_tl , color .value_required:n = true , - shorten .code:n = - \hook_gput_code:nnn { begindocument } { . } - { - \dim_set:Nn \l_@@_xdots_shorten_start_dim { #1 } - \dim_set:Nn \l_@@_xdots_shorten_end_dim { #1 } - } , - shorten-start .code:n = - \hook_gput_code:nnn { begindocument } { . } - { \dim_set:Nn \l_@@_xdots_shorten_start_dim { #1 } } , - shorten-end .code:n = - \hook_gput_code:nnn { begindocument } { . } - { \dim_set:Nn \l_@@_xdots_shorten_end_dim { #1 } } , -% \end{macrocode} -% We use a hook only by security in case \cls{revtex4-1} -% is used (even though it is obsolete). Idem for the following keys. -% \begin{macrocode} - shorten .value_required:n = true , - shorten-start .value_required:n = true , - shorten-end .value_required:n = true , radius .code:n = \hook_gput_code:nnn { begindocument } { . } { \dim_set:Nn \l_@@_xdots_radius_dim { #1 } } , @@ -2305,14 +2403,17 @@ version 2005/12/01 or later. { \dim_set:Nn \l_@@_xdots_inter_dim { #1 } } , radius .value_required:n = true , % \end{macrocode} -% The options |down| and |up| are not documented for the final user because he -% should use the syntax with |^| and |_|. +% The options |down|, |up| and |middle| are not documented for the final user +% because he should use the syntax with |^|, |_| and |:|. We use +% |\tl_put_right:Nn| and not |\tl_set:Nn| (or |.tl_set:N|) because we don't want +% a direct use of |up=...| erased by a absent |^{...}|. % \begin{macrocode} - down .tl_set:N = \l_@@_xdots_down_tl , - up .tl_set:N = \l_@@_xdots_up_tl , + down .code:n = \tl_put_right:Nn \l_@@_xdots_down_tl { #1 } , % modified 2023-08-09 + up .code:n = \tl_put_right:Nn \l_@@_xdots_up_tl { #1 } , + middle .code:n = \tl_put_right:Nn \l_@@_xdots_middle_tl { #1 } , % \end{macrocode} % The key |draw-first|, which is meant to be used only with |\Ddots| and -% |\Iddots|, which be catched when |\Ddots| or |\Iddots| is used (during the +% |\Iddots|, will be catched when |\Ddots| or |\Iddots| is used (during the % construction of the array and not when we draw the dotted lines). % \begin{macrocode} draw-first .code:n = \prg_do_nothing: , @@ -2787,6 +2888,7 @@ version 2005/12/01 or later. unknown .code:n = \@@_error:n { Unknown~key~for~NiceTabular } } % \end{macrocode} +% % % \bigskip % \section{Important code used by \{NiceArrayWithDelims\} } @@ -2812,9 +2914,9 @@ version 2005/12/01 or later. % \begin{macrocode} \cs_set_eq:NN \CodeAfter \@@_CodeAfter_i: % \end{macrocode} -% We increment |\c@jCol|, which is the counter of the columns. +% We increment the LaTeX counter |jCol|, which is the counter of the columns. % \begin{macrocode} - \int_gincr:N \c@jCol + \int_gincr:N \c@jCol % \end{macrocode} % Now, we increment the counter of the rows. We don't do this incrementation in % the |\everycr| because some packages, like \pkg{arydshln}, create special rows @@ -3225,9 +3327,9 @@ version 2005/12/01 or later. % \begin{macrocode} \cs_new_protected:Npn \@@_array:n { - \bool_if:NTF \l_@@_tabular_bool - { \dim_set_eq:NN \col@sep \tabcolsep } - { \dim_set_eq:NN \col@sep \arraycolsep } + % modified 05-08-23 + \dim_set:Nn \col@sep + { \bool_if:NTF \l_@@_tabular_bool \tabcolsep \arraycolsep } \dim_compare:nNnTF \l_@@_tabular_width_dim = \c_zero_dim { \cs_set_nopar:Npn \@halignto { } } { \cs_set_nopar:Npx \@halignto { to \dim_use:N \l_@@_tabular_width_dim } } @@ -3240,7 +3342,7 @@ version 2005/12/01 or later. % |\l_@@_baseline_tl| may have the value |t|, |c| or |b|. However, if the value % is |b|, we compose the |\array| (of \pkg{array}) with the option |t| and the % right translation will be done further. Remark that |\str_if_eq:VnTF| is -% fully expandable and you need something fully expandable here. +% fully expandable and we need something fully expandable here. % \begin{macrocode} [ \str_if_eq:VnTF \l_@@_baseline_tl c c t ] } @@ -3740,7 +3842,6 @@ version 2005/12/01 or later. \box_clear_new:N \l_@@_the_array_box % \end{macrocode} % -% % \medskip % We compute the width of both delimiters. We remind that, when the % environment |{NiceArray}| is used, it's possible to specify the delimiters in @@ -3759,8 +3860,10 @@ version 2005/12/01 or later. \dim_set:Nn \l_@@_right_delim_dim { \box_wd:N \l_tmpa_box } } { - \dim_gset:Nn \l_@@_left_delim_dim { 2 \arraycolsep } - \dim_gset:Nn \l_@@_right_delim_dim { 2 \arraycolsep } + % modified 05-08-23 + \dim_gset:Nn \l_@@_left_delim_dim + { 2 \bool_if:NTF \l_@@_tabular_bool \tabcolsep \arraycolsep } + \dim_gset_eq:NN \l_@@_right_delim_dim \l_@@_left_delim_dim } % \end{macrocode} % @@ -4111,7 +4214,7 @@ version 2005/12/01 or later. % % \begin{macrocode} \@@_provide_pgfsyspdfmark: - \bool_if:NT \c_@@_footnote_bool \savenotes + \bool_if:NT \g_@@_footnote_bool \savenotes % \end{macrocode} % % The aim of the following |\bgroup| (the corresponding |\egroup| is, of course, @@ -4130,7 +4233,6 @@ version 2005/12/01 or later. % % % \bigskip -% % \begin{macrocode} \int_gzero:N \g_@@_block_box_int \dim_zero:N \g_@@_width_last_col_dim @@ -4199,12 +4301,12 @@ version 2005/12/01 or later. % We load all the informations written in the |aux| file during previous % compilations corresponding to the current environment. % \begin{macrocode} - \bool_gset_false:N \g_@@_aux_found_bool - \tl_if_exist:cT { c_@@ _ \int_use:N \g_@@_env_int _ tl } + \tl_if_exist:cTF { c_@@ _ \int_use:N \g_@@_env_int _ tl } { \bool_gset_true:N \g_@@_aux_found_bool \use:c { c_@@ _ \int_use:N \g_@@_env_int _ tl } } + { \bool_gset_false:N \g_@@_aux_found_bool } % \end{macrocode} % Now, we prepare the token list for the instructions that we will have to write % on the |aux| file at the end of the environment. @@ -4358,7 +4460,7 @@ version 2005/12/01 or later. % \begin{macrocode} \int_compare:nNnT \l_@@_first_col_int = 0 { - \skip_horizontal:N \col@sep + % \skip_horizontal:N \col@sep % 05-08-23 \skip_horizontal:N \g_@@_width_first_col_dim } % \end{macrocode} @@ -4466,7 +4568,7 @@ version 2005/12/01 or later. \bool_if:NT \g_@@_last_col_found_bool { \skip_horizontal:N \g_@@_width_last_col_dim - \skip_horizontal:N \col@sep + % \skip_horizontal:N \col@sep % 2023-08-05 } \bool_if:NT \l_@@_preamble_bool { @@ -4498,7 +4600,7 @@ version 2005/12/01 or later. % % \bigskip % \begin{macrocode} - \bool_if:NT \c_@@_footnote_bool \endsavenotes + \bool_if:NT \g_@@_footnote_bool \endsavenotes } % \end{macrocode} % This is the end of the environment |{NiceArrayWithDelims}|. @@ -4652,7 +4754,8 @@ version 2005/12/01 or later. % \begin{macrocode} \cs_new_protected:Npn \@@_transform_preamble_ii: { -% +% \end{macrocode} +% % \medskip % If there was delimiters at the beginning or at the end of the preamble, the % environment |{NiceArray}| is transformed into an environment |{xNiceMatrix}|. @@ -6030,8 +6133,11 @@ version 2005/12/01 or later. % \begin{macrocode} \bool_if:NT \l_@@_NiceMatrix_without_vlines_bool { - \box_set_wd:Nn \l_@@_the_array_box - { \box_wd:N \l_@@_the_array_box - \arraycolsep } + \int_compare:nNnT \c@jCol > 1 % added 2023-08-13 + { + \box_set_wd:Nn \l_@@_the_array_box + { \box_wd:N \l_@@_the_array_box - \arraycolsep } + } } % \end{macrocode} % We need a |{minipage}| because we will insert a LaTeX list for the tabular @@ -7211,6 +7317,9 @@ version 2005/12/01 or later. % \section{After the construction of the array} % % \bigskip +% The following command will be used when the key |rounded-corners| is in force +% (this is the key |rounded-corners| for the whole environment and \emph{not} +% the key |rounded-corners| of a command |\Block|). % \begin{macrocode} \cs_new_protected:Npn \@@_deal_with_rounded_corners: { @@ -7223,9 +7332,11 @@ version 2005/12/01 or later. } { \bool_set_true:N \l_@@_except_borders_bool + \clist_if_empty:NF \l_@@_corners_clist + { \@@_error:n { hvlines,~rounded-corners~and~corners } } \tl_gput_right:Nn \g_@@_pre_code_after_tl { - \_@@_stroke_block:nnn + \@@_stroke_block:nnn { rounded-corners = \dim_use:N \l_@@_tab_rounded_corners_dim , draw = \l_@@_rules_color_tl @@ -7235,6 +7346,7 @@ version 2005/12/01 or later. } } } +% \end{macrocode} % % % \medskip @@ -7950,6 +8062,25 @@ version 2005/12/01 or later. } } % \end{macrocode} +% +% \medskip +% If the final user uses the key |xdots/shorten| in |\NiceMatrixOptions| or at the +% level of an environment (such as |{pNiceMatrix}|, etc.), only the so called +% ``closed extremities'' will be shortened by that key. The following command +% will be used \emph{after} the detection of the extremities of a dotted line +% (hence at a time when we known wheter the extremities are closed or open) but +% before the analyse of the keys of the individual command |\Cdots|, |\Vdots|. +% Hence, the keys |shorten|, |shorten-start| and |shorten-end| of that +% individual command will be applied. +% \begin{macrocode} +\cs_new_protected:Npn \@@_open_shorten: + { + \bool_if:NT \l_@@_initial_open_bool + { \dim_zero:N \l_@@_xdots_shorten_start_dim } + \bool_if:NT \l_@@_final_open_bool + { \dim_zero:N \l_@@_xdots_shorten_end_dim } + } +% \end{macrocode} % % \medskip % The following commmand (\emph{when it will be written}) will set the four @@ -8050,7 +8181,7 @@ version 2005/12/01 or later. } } % \end{macrocode} -% If, in fact, all the cells of the columns are empty (no PGF/Tikz nodes in +% If, in fact, all the cells of the column are empty (no PGF/Tikz nodes in % those cells). % \begin{macrocode} \dim_compare:nNnT \l_@@_x_initial_dim = \c_max_dim @@ -8109,6 +8240,7 @@ version 2005/12/01 or later. % of the line. % \begin{macrocode} \group_begin: + \@@_open_shorten: \int_compare:nNnTF { #1 } = 0 { \color { nicematrix-first-row } } { @@ -8159,12 +8291,30 @@ version 2005/12/01 or later. } { \@@_set_final_coords_from_anchor:n { base~west } } % \end{macrocode} +% Now the case of a |\Hdotsfor| (or when there is only a |\Ldots|) in the ``last +% row'' (that case will probably arise when the final user draws an arrow to +% indicate the number of columns of the matrix). In the ``first row'', we don't +% need any adjustment. +% \begin{macrocode} + \bool_lazy_all:nTF + { + \l_@@_initial_open_bool + \l_@@_final_open_bool + { \int_compare_p:nNn \l_@@_initial_i_int = \l_@@_last_row_int } + } + { + \dim_add:Nn \l_@@_y_initial_dim \c_@@_shift_Ldots_last_row_dim + \dim_add:Nn \l_@@_y_final_dim \c_@@_shift_Ldots_last_row_dim + } +% \end{macrocode} % We raise the line of a quantity equal to the radius of the dots because we % want the dots really ``on'' the line of texte. Of course, maybe we should not % do that when the option |line-style| is used (?). % \begin{macrocode} - \dim_add:Nn \l_@@_y_initial_dim \l_@@_xdots_radius_dim - \dim_add:Nn \l_@@_y_final_dim \l_@@_xdots_radius_dim + { + \dim_add:Nn \l_@@_y_initial_dim \l_@@_xdots_radius_dim + \dim_add:Nn \l_@@_y_final_dim \l_@@_xdots_radius_dim + } \@@_draw_line: } % \end{macrocode} @@ -8185,6 +8335,7 @@ version 2005/12/01 or later. % of the line. % \begin{macrocode} \group_begin: + \@@_open_shorten: \int_compare:nNnTF { #1 } = 0 { \color { nicematrix-first-row } } { @@ -8248,15 +8399,7 @@ version 2005/12/01 or later. % \begin{macrocode} \cs_new_protected:Npn \@@_open_y_initial_dim: { - \@@_qpoint:n { row - \int_use:N \l_@@_initial_i_int - base } - \dim_set:Nn \l_@@_y_initial_dim - { - \fp_to_dim:n - { - \pgf@y - + ( \box_ht:N \strutbox + \extrarowheight ) * \arraystretch - } - } % modified 6.13c + \dim_set:Nn \l_@@_y_initial_dim { - \c_max_dim } \int_step_inline:nnn \l_@@_first_col_int \g_@@_col_total_int { \cs_if_exist:cT @@ -8269,6 +8412,19 @@ version 2005/12/01 or later. { \dim_max:nn \l_@@_y_initial_dim \pgf@y } } } + % modified 2023-08-10 + \dim_compare:nNnT \l_@@_y_initial_dim = { - \c_max_dim } + { + \@@_qpoint:n { row - \int_use:N \l_@@_initial_i_int - base } + \dim_set:Nn \l_@@_y_initial_dim + { + \fp_to_dim:n + { + \pgf@y + + ( \box_ht:N \strutbox + \extrarowheight ) * \arraystretch + } + } + } } % \end{macrocode} % @@ -8276,10 +8432,7 @@ version 2005/12/01 or later. % \begin{macrocode} \cs_new_protected:Npn \@@_open_y_final_dim: { - \@@_qpoint:n { row - \int_use:N \l_@@_final_i_int - base } - \dim_set:Nn \l_@@_y_final_dim - { \fp_to_dim:n { \pgf@y - ( \box_dp:N \strutbox ) * \arraystretch } } - % modified 6.13c + \dim_set_eq:NN \l_@@_y_final_dim \c_max_dim \int_step_inline:nnn \l_@@_first_col_int \g_@@_col_total_int { \cs_if_exist:cT @@ -8292,6 +8445,13 @@ version 2005/12/01 or later. { \dim_min:nn \l_@@_y_final_dim \pgf@y } } } + % modified 2023-08-10 + \dim_compare:nNnT \l_@@_y_final_dim = \c_max_dim + { + \@@_qpoint:n { row - \int_use:N \l_@@_final_i_int - base } + \dim_set:Nn \l_@@_y_final_dim + { \fp_to_dim:n { \pgf@y - ( \box_dp:N \strutbox ) * \arraystretch } } + } } % \end{macrocode} % @@ -8310,6 +8470,7 @@ version 2005/12/01 or later. % of the line. % \begin{macrocode} \group_begin: + \@@_open_shorten: \int_compare:nNnTF { #2 } = 0 { \color { nicematrix-first-col } } { @@ -8341,80 +8502,112 @@ version 2005/12/01 or later. \cs_new_protected:Npn \@@_actually_draw_Vdots: { % \end{macrocode} -% The boolean |\l_tmpa_bool| indicates whether the column is of type |l| or may -% be considered as if. -% \begin{macrocode} - \bool_set_false:N \l_tmpa_bool +% +% First, the case of a dotted line open on both sides. +% \begin{macrocode} + \bool_lazy_and:nnTF \l_@@_initial_open_bool \l_@@_final_open_bool % \end{macrocode} -% First the case when the line is closed on both ends. +% +% We have to determine the $x$-value of the vertical rule that we will have +% to draw. % \begin{macrocode} - \bool_lazy_or:nnF \l_@@_initial_open_bool \l_@@_final_open_bool { - \@@_set_initial_coords_from_anchor:n { south~west } - \@@_set_final_coords_from_anchor:n { north~west } - \bool_set:Nn \l_tmpa_bool - { \dim_compare_p:nNn \l_@@_x_initial_dim = \l_@@_x_final_dim } - } + \@@_open_y_initial_dim: + \@@_open_y_final_dim: + \int_compare:nNnTF \l_@@_initial_j_int = \c_zero_int % \end{macrocode} -% Now, we try to determine whether the column is of type |c| or may be -% considered as if. +% We have a dotted line open on both sides in the ``first column''. % \begin{macrocode} - \bool_if:NTF \l_@@_initial_open_bool - \@@_open_y_initial_dim: - { \@@_set_initial_coords_from_anchor:n { south } } - \bool_if:NTF \l_@@_final_open_bool - \@@_open_y_final_dim: - { \@@_set_final_coords_from_anchor:n { north } } - \bool_if:NTF \l_@@_initial_open_bool - { - \bool_if:NTF \l_@@_final_open_bool { - \@@_qpoint:n { col - \int_use:N \l_@@_initial_j_int } - \dim_set_eq:NN \l_tmpa_dim \pgf@x - \@@_qpoint:n { col - \int_eval:n { \l_@@_initial_j_int + 1 } } - \dim_set:Nn \l_@@_x_initial_dim { ( \pgf@x + \l_tmpa_dim ) / 2 } - \dim_set_eq:NN \l_@@_x_final_dim \l_@@_x_initial_dim -% \end{macrocode} -% We may think that the final user won't use a ``last column'' which contains -% only a command |\Vdots|. However, if the |\Vdots| is in fact used to draw, not -% a dotted line, but an arrow (to indicate the number of rows of the matrix), it -% may be really encountered. That's why we do an adjustemnt for that case. -% \begin{macrocode} - \int_compare:nNnT \l_@@_last_col_int > { -2 } + \@@_qpoint:n { col - 1 } + \dim_set_eq:NN \l_@@_x_initial_dim \pgf@x + \dim_sub:Nn \l_@@_x_initial_dim \l_@@_left_margin_dim + \dim_sub:Nn \l_@@_x_initial_dim \l_@@_extra_left_margin_dim + % \bool_if:NT \g_@@_delims_bool + % { + \dim_sub:Nn \l_@@_x_initial_dim \c_@@_shift_exterior_Vdots_dim + % } + } + { + \bool_lazy_and:nnTF + { \int_compare_p:nNn \l_@@_last_col_int > { -2 } } + { \int_compare_p:nNn \l_@@_initial_j_int = \g_@@_col_total_int } +% \end{macrocode} +% We have a dotted line open on both sides in the ``last column''. +% \begin{macrocode} { - \int_compare:nNnT \l_@@_initial_j_int = \g_@@_col_total_int - { - \dim_set:Nn \l_tmpa_dim - { - \l_@@_right_margin_dim + \l_@@_extra_right_margin_dim - + 2 mm - } - \dim_add:Nn \l_@@_x_initial_dim \l_tmpa_dim - \dim_add:Nn \l_@@_x_final_dim \l_tmpa_dim - } + \@@_qpoint:n { col - \int_use:N \l_@@_initial_j_int } + \dim_set_eq:NN \l_@@_x_initial_dim \pgf@x + \dim_add:Nn \l_@@_x_initial_dim \l_@@_right_margin_dim + \dim_add:Nn \l_@@_x_initial_dim \l_@@_extra_right_margin_dim + % \bool_if:NT \g_@@_delims_bool + % { + \dim_add:Nn + \l_@@_x_initial_dim + \c_@@_shift_exterior_Vdots_dim + % } } +% \end{macrocode} +% We have a dotted line open on both sides which is \emph{not} in an exterior column. +% \begin{macrocode} + { + \@@_qpoint:n { col - \int_use:N \l_@@_initial_j_int } + \dim_set_eq:NN \l_tmpa_dim \pgf@x + \@@_qpoint:n { col - \int_eval:n { \l_@@_initial_j_int + 1 } } + \dim_set:Nn \l_@@_x_initial_dim { ( \pgf@x + \l_tmpa_dim ) / 2 } + } } - { \dim_set_eq:NN \l_@@_x_initial_dim \l_@@_x_final_dim } } +% \end{macrocode} +% +% Now, the dotted line is \emph{not} open on both sides (maybe open on only one side). +% +% The boolean |\l_tmpa_bool| will indicate whether the column is of type |l| or +% may be considered as if. +% \begin{macrocode} { - \bool_if:NTF \l_@@_final_open_bool - { \dim_set_eq:NN \l_@@_x_final_dim \l_@@_x_initial_dim } + \bool_set_false:N \l_tmpa_bool + \bool_lazy_and:nnT + { ! \l_@@_initial_open_bool } + { ! \l_@@_final_open_bool } { + \@@_set_initial_coords_from_anchor:n { south~west } + \@@_set_final_coords_from_anchor:n { north~west } + \bool_set:Nn \l_tmpa_bool + { \dim_compare_p:nNn \l_@@_x_initial_dim = \l_@@_x_final_dim } + } +% \end{macrocode} +% Now, we try to determine whether the column is of type |c| or may be +% considered as if. +% \begin{macrocode} + \bool_if:NTF \l_@@_initial_open_bool + { + \@@_open_y_initial_dim: + \@@_set_final_coords_from_anchor:n { north } + \dim_set_eq:NN \l_@@_x_initial_dim \l_@@_x_final_dim + } + { + \@@_set_initial_coords_from_anchor:n { south } + \bool_if:NTF \l_@@_final_open_bool + \@@_open_y_final_dim: % \end{macrocode} % Now the case where both extremities are closed. The first conditional tests % whether the column is of type |c| or may be considered as if. % \begin{macrocode} - \dim_compare:nNnF \l_@@_x_initial_dim = \l_@@_x_final_dim { - \dim_set:Nn \l_@@_x_initial_dim + \@@_set_final_coords_from_anchor:n { north } + \dim_compare:nNnF \l_@@_x_initial_dim = \l_@@_x_final_dim { - \bool_if:NTF \l_tmpa_bool \dim_min:nn \dim_max:nn - \l_@@_x_initial_dim \l_@@_x_final_dim + \dim_set:Nn \l_@@_x_initial_dim + { + \bool_if:NTF \l_tmpa_bool \dim_min:nn \dim_max:nn + \l_@@_x_initial_dim \l_@@_x_final_dim + } } - \dim_set_eq:NN \l_@@_x_final_dim \l_@@_x_initial_dim - } - } + } + } } + \dim_set_eq:NN \l_@@_x_final_dim \l_@@_x_initial_dim \@@_draw_line: } % \end{macrocode} @@ -8439,6 +8632,7 @@ version 2005/12/01 or later. % of the line. % \begin{macrocode} \group_begin: + \@@_open_shorten: \keys_set:nn { NiceMatrix / xdots } { #3 } \tl_if_empty:VF \l_@@_xdots_color_tl { \color { \l_@@_xdots_color_tl } } \@@_actually_draw_Ddots: @@ -8533,6 +8727,7 @@ version 2005/12/01 or later. % of the line. % \begin{macrocode} \group_begin: + \@@_open_shorten: \keys_set:nn { NiceMatrix / xdots } { #3 } \tl_if_empty:VF \l_@@_xdots_color_tl { \color { \l_@@_xdots_color_tl } } \@@_actually_draw_Iddots: @@ -8639,18 +8834,19 @@ version 2005/12/01 or later. % \begin{macrocode} \cs_new_protected:Npn \@@_draw_unstandard_dotted_line:n #1 { - \@@_draw_unstandard_dotted_line:nVV + \@@_draw_unstandard_dotted_line:nVVV { #1 } \l_@@_xdots_up_tl \l_@@_xdots_down_tl + \l_@@_xdots_middle_tl } \cs_generate_variant:Nn \@@_draw_unstandard_dotted_line:n { o } % \end{macrocode} % % % \bigskip -% The following Tikz styles are for both labels (set by the symbols |_| and |^|) -% of a continous line with a non-standard style. +% The following Tikz styles are for the three labels (set by the symbols |_|, +% |^| and |=|) of a continous line with a non-standard style. % \begin{macrocode} \hook_gput_code:nnn { begindocument } { . } { @@ -8659,7 +8855,12 @@ version 2005/12/01 or later. \tikzset { @@_node_above / .style = { sloped , above } , - @@_node_below / .style = { sloped , below } + @@_node_below / .style = { sloped , below } , + @@_node_middle / .style = + { + sloped , + inner~sep = \c_@@_innersep_middle_dim + } } } { } @@ -8668,91 +8869,103 @@ version 2005/12/01 or later. % % \bigskip % \begin{macrocode} -\cs_new_protected:Npn \@@_draw_unstandard_dotted_line:nnn #1 #2 #3 +\cs_new_protected:Npn \@@_draw_unstandard_dotted_line:nnnn #1 #2 #3 #4 { +% \end{macrocode} +% We take into account the parameters |xdots/shorten-start| and +% |xdots/shorten-end| ``by hand'' because, when we use the key |shorten >| and +% |shorten <| of TikZ in the command |\draw|, we don't have the expected output +% with |{decorate,decoration=brace}| is used. +% +% \medskip +% The dimension |\l_@@_l_dim| is the length $\ell$ of the line to draw. We use +% the floating point reals of the L3 programming layer to compute this length. +% \begin{macrocode} + \dim_zero_new:N \l_@@_l_dim + \dim_set:Nn \l_@@_l_dim + { + \fp_to_dim:n + { + sqrt + ( + ( \l_@@_x_final_dim - \l_@@_x_initial_dim ) ^ 2 + + + ( \l_@@_y_final_dim - \l_@@_y_initial_dim ) ^ 2 + ) + } + } + \bool_lazy_and:nnT % security + { \dim_compare_p:nNn { \dim_abs:n \l_@@_l_dim } < \c_@@_max_l_dim } + { \dim_compare_p:nNn { \dim_abs:n \l_@@_l_dim } > { 1 pt } } + { + \dim_set:Nn \l_tmpa_dim + { + \l_@@_x_initial_dim + + ( \l_@@_x_final_dim - \l_@@_x_initial_dim ) + * \dim_ratio:nn \l_@@_xdots_shorten_start_dim \l_@@_l_dim + } + \dim_set:Nn \l_tmpb_dim + { + \l_@@_y_initial_dim + + ( \l_@@_y_final_dim - \l_@@_y_initial_dim ) + * \dim_ratio:nn \l_@@_xdots_shorten_start_dim \l_@@_l_dim + } + \dim_set:Nn \l_@@_tmpc_dim + { + \l_@@_x_final_dim + - ( \l_@@_x_final_dim - \l_@@_x_initial_dim ) + * \dim_ratio:nn \l_@@_xdots_shorten_end_dim \l_@@_l_dim + } + \dim_set:Nn \l_@@_tmpd_dim + { + \l_@@_y_final_dim + - ( \l_@@_y_final_dim - \l_@@_y_initial_dim ) + * \dim_ratio:nn \l_@@_xdots_shorten_end_dim \l_@@_l_dim + } + \dim_set_eq:NN \l_@@_x_initial_dim \l_tmpa_dim + \dim_set_eq:NN \l_@@_y_initial_dim \l_tmpb_dim + \dim_set_eq:NN \l_@@_x_final_dim \l_@@_tmpc_dim + \dim_set_eq:NN \l_@@_y_final_dim \l_@@_tmpd_dim + } +% \end{macrocode} +% +% +% If the key |xdots/horizontal-labels| has been used. +% \begin{macrocode} \bool_if:NT \l_@@_xdots_h_labels_bool { \tikzset { @@_node_above / .style = { auto = left } , - @@_node_below / .style = { auto = right } + @@_node_below / .style = { auto = right } , + @@_node_middle / .style = { inner~sep = \c_@@_innersep_middle_dim } } } + \tl_if_empty:nF { #4 } + { \tikzset { @@_node_middle / .append~style = { fill = white } } } \draw - [ - shorten~> = \l_@@_xdots_shorten_end_dim , - shorten~< = \l_@@_xdots_shorten_start_dim , - #1 - ] + [ #1 ] ( \l_@@_x_initial_dim , \l_@@_y_initial_dim ) % \end{macrocode} % Be careful: We can't put |\c_math_toggle_token| instead of |$| in the % following lines because we are in the contents of Tikz nodes (and they will be % \emph{rescanned} if the Tikz library \pkg{babel} is loaded). % \begin{macrocode} - -- node [ @@_node_above ] { $ \scriptstyle #2 $ } + -- node [ @@_node_middle] { $ \scriptstyle #4 $ } node [ @@_node_below ] { $ \scriptstyle #3 $ } + node [ @@_node_above ] { $ \scriptstyle #2 $ } ( \l_@@_x_final_dim , \l_@@_y_final_dim ) ; \end { scope } } -\cs_generate_variant:Nn \@@_draw_unstandard_dotted_line:nnn { n V V } +\cs_generate_variant:Nn \@@_draw_unstandard_dotted_line:nnnn { n V V V } % \end{macrocode} % % \bigskip % The command |\@@_draw_standard_dotted_line:| draws the line with our system of dots -% (which gives a dotted line with real round dots). +% (which gives a dotted line with real rounded dots). % \begin{macrocode} \cs_new_protected:Npn \@@_draw_standard_dotted_line: - { - \bool_lazy_and:nnF - { \tl_if_empty_p:N \l_@@_xdots_up_tl } - { \tl_if_empty_p:N \l_@@_xdots_down_tl } - { - \pgfscope - \pgftransformshift - { - \pgfpointlineattime { 0.5 } - { \pgfpoint \l_@@_x_initial_dim \l_@@_y_initial_dim } - { \pgfpoint \l_@@_x_final_dim \l_@@_y_final_dim } - } - \fp_set:Nn \l_tmpa_fp - { - atand - ( - \l_@@_y_final_dim - \l_@@_y_initial_dim , - \l_@@_x_final_dim - \l_@@_x_initial_dim - ) - } - \pgftransformrotate { \fp_use:N \l_tmpa_fp } - \bool_if:NF \l_@@_xdots_h_labels_bool { \fp_zero:N \l_tmpa_fp } - \pgfnode - { rectangle } - { south } - { - \rotatebox { \fp_eval:n { - \l_tmpa_fp } } - { - \c_math_toggle_token - \scriptstyle \l_@@_xdots_up_tl - \c_math_toggle_token - } - } - { } - { \pgfusepath { } } - \pgfnode - { rectangle } - { north } - { - \rotatebox { \fp_eval:n { - \l_tmpa_fp } } - { - \c_math_toggle_token - \scriptstyle \l_@@_xdots_down_tl - \c_math_toggle_token - } - } - { } - { \pgfusepath { } } - \endpgfscope - } + { \group_begin: % \end{macrocode} % The dimension |\l_@@_l_dim| is the length $\ell$ of the line to draw. We use @@ -8783,6 +8996,15 @@ version 2005/12/01 or later. { \dim_compare_p:nNn \l_@@_l_dim = \c_zero_dim } \@@_draw_standard_dotted_line_i: \group_end: +% \end{macrocode} +% \begin{macrocode} + \bool_lazy_all:nF + { + { \tl_if_empty_p:N \l_@@_xdots_up_tl } + { \tl_if_empty_p:N \l_@@_xdots_down_tl } + { \tl_if_empty_p:N \l_@@_xdots_middle_tl } + } + \l_@@_labels_standard_dotted_line: } % \end{macrocode} % @@ -8796,43 +9018,15 @@ version 2005/12/01 or later. % \end{macrocode} % The number of dots will be |\l_tmpa_int + 1|. % \begin{macrocode} - \bool_if:NTF \l_@@_initial_open_bool + \int_set:Nn \l_tmpa_int { - \bool_if:NTF \l_@@_final_open_bool - { - \int_set:Nn \l_tmpa_int - { \dim_ratio:nn \l_@@_l_dim \l_@@_xdots_inter_dim } - } + \dim_ratio:nn { - \int_set:Nn \l_tmpa_int - { - \dim_ratio:nn - { \l_@@_l_dim - \l_@@_xdots_shorten_start_dim } - \l_@@_xdots_inter_dim - } - } - } - { - \bool_if:NTF \l_@@_final_open_bool - { - \int_set:Nn \l_tmpa_int - { - \dim_ratio:nn - { \l_@@_l_dim - \l_@@_xdots_shorten_end_dim } - \l_@@_xdots_inter_dim - } - } - { - \int_set:Nn \l_tmpa_int - { - \dim_ratio:nn - { - \l_@@_l_dim - - \l_@@_xdots_shorten_start_dim - \l_@@_xdots_shorten_end_dim - } - \l_@@_xdots_inter_dim - } - } + \l_@@_l_dim + - \l_@@_xdots_shorten_start_dim + - \l_@@_xdots_shorten_end_dim + } + \l_@@_xdots_inter_dim } % \end{macrocode} % @@ -8873,7 +9067,7 @@ version 2005/12/01 or later. \dim_ratio:nn { \l_@@_l_dim - \l_@@_xdots_inter_dim * \l_tmpa_int - + \l_@@_xdots_shorten_start_dim - \l_@@_xdots_shorten_end_dim + + \l_@@_xdots_shorten_start_dim - \l_@@_xdots_shorten_end_dim } { 2 \l_@@_l_dim } } @@ -8891,6 +9085,85 @@ version 2005/12/01 or later. % \end{macrocode} % % \bigskip +% \begin{macrocode} +\cs_new_protected:Npn \l_@@_labels_standard_dotted_line: + { + \pgfscope + \pgftransformshift + { + \pgfpointlineattime { 0.5 } + { \pgfpoint \l_@@_x_initial_dim \l_@@_y_initial_dim } + { \pgfpoint \l_@@_x_final_dim \l_@@_y_final_dim } + } + \fp_set:Nn \l_tmpa_fp + { + atand + ( + \l_@@_y_final_dim - \l_@@_y_initial_dim , + \l_@@_x_final_dim - \l_@@_x_initial_dim + ) + } + \pgftransformrotate { \fp_use:N \l_tmpa_fp } + \bool_if:NF \l_@@_xdots_h_labels_bool { \fp_zero:N \l_tmpa_fp } + \tl_if_empty:NF \l_@@_xdots_middle_tl + { + \begin { pgfscope } + \pgfset { inner~sep = \c_@@_innersep_middle_dim } + \pgfnode + { rectangle } + { center } + { + \rotatebox { \fp_eval:n { - \l_tmpa_fp } } + { + \c_math_toggle_token + \scriptstyle \l_@@_xdots_middle_tl + \c_math_toggle_token + } + } + { } + { + \pgfsetfillcolor { white } + \pgfusepath { fill } + } + \end { pgfscope } + } + \tl_if_empty:NF \l_@@_xdots_up_tl + { + \pgfnode + { rectangle } + { south } + { + \rotatebox { \fp_eval:n { - \l_tmpa_fp } } + { + \c_math_toggle_token + \scriptstyle \l_@@_xdots_up_tl + \c_math_toggle_token + } + } + { } + { \pgfusepath { } } + } + \tl_if_empty:NF \l_@@_xdots_down_tl + { + \pgfnode + { rectangle } + { north } + { + \rotatebox { \fp_eval:n { - \l_tmpa_fp } } + { + \c_math_toggle_token + \scriptstyle \l_@@_xdots_down_tl + \c_math_toggle_token + } + } + { } + { \pgfusepath { } } + } + \endpgfscope + } +% \end{macrocode} +% +% \bigskip % \section{User commands available in the new environments} % % @@ -8912,9 +9185,11 @@ version 2005/12/01 or later. % \begin{macrocode} \hook_gput_code:nnn { begindocument } { . } { - \tl_set:Nn \l_@@_argspec_tl { O { } E { _ ^ } { { } { } } } + \tl_set:Nn \l_@@_argspec_tl { m E { _ ^ : } { { } { } { } } } \tl_set_rescan:Nno \l_@@_argspec_tl { } \l_@@_argspec_tl - \exp_args:NNV \NewDocumentCommand \@@_Ldots \l_@@_argspec_tl + \cs_new_protected:Npn \@@_Ldots + { \@@_collect_options:n { \@@_Ldots_i } } + \exp_args:NNV \NewDocumentCommand \@@_Ldots_i \l_@@_argspec_tl { \int_compare:nNnTF \c@jCol = 0 { \@@_error:nn { in~first~col } \Ldots } @@ -8923,7 +9198,7 @@ version 2005/12/01 or later. { \@@_error:nn { in~last~col } \Ldots } { \@@_instruction_of_type:nnn \c_false_bool { Ldots } - { #1 , down = #2 , up = #3 } + { #1 , down = #2 , up = #3 , middle = #4 } } } \bool_if:NF \l_@@_nullify_dots_bool @@ -8934,7 +9209,9 @@ version 2005/12/01 or later. % % \bigskip % \begin{macrocode} - \exp_args:NNV \NewDocumentCommand \@@_Cdots \l_@@_argspec_tl + \cs_new_protected:Npn \@@_Cdots + { \@@_collect_options:n { \@@_Cdots_i } } + \exp_args:NNV \NewDocumentCommand \@@_Cdots_i \l_@@_argspec_tl { \int_compare:nNnTF \c@jCol = 0 { \@@_error:nn { in~first~col } \Cdots } @@ -8943,7 +9220,7 @@ version 2005/12/01 or later. { \@@_error:nn { in~last~col } \Cdots } { \@@_instruction_of_type:nnn \c_false_bool { Cdots } - { #1 , down = #2 , up = #3 } + { #1 , down = #2 , up = #3 , middle = #4 } } } \bool_if:NF \l_@@_nullify_dots_bool @@ -8954,7 +9231,9 @@ version 2005/12/01 or later. % % \bigskip % \begin{macrocode} - \exp_args:NNV \NewDocumentCommand \@@_Vdots \l_@@_argspec_tl + \cs_new_protected:Npn \@@_Vdots + { \@@_collect_options:n { \@@_Vdots_i } } + \exp_args:NNV \NewDocumentCommand \@@_Vdots_i \l_@@_argspec_tl { \int_compare:nNnTF \c@iRow = 0 { \@@_error:nn { in~first~row } \Vdots } @@ -8963,7 +9242,7 @@ version 2005/12/01 or later. { \@@_error:nn { in~last~row } \Vdots } { \@@_instruction_of_type:nnn \c_false_bool { Vdots } - { #1 , down = #2 , up = #3 } + { #1 , down = #2 , up = #3 , middle = #4 } } } \bool_if:NF \l_@@_nullify_dots_bool @@ -8975,7 +9254,9 @@ version 2005/12/01 or later. % % \bigskip % \begin{macrocode} - \exp_args:NNV \NewDocumentCommand \@@_Ddots \l_@@_argspec_tl + \cs_new_protected:Npn \@@_Ddots + { \@@_collect_options:n { \@@_Ddots_i } } + \exp_args:NNV \NewDocumentCommand \@@_Ddots_i \l_@@_argspec_tl { \int_case:nnF \c@iRow { @@ -8991,7 +9272,7 @@ version 2005/12/01 or later. { \keys_set_known:nn { NiceMatrix / Ddots } { #1 } \@@_instruction_of_type:nnn \l_@@_draw_first_bool { Ddots } - { #1 , down = #2 , up = #3 } + { #1 , down = #2 , up = #3 , middle = #4 } } } @@ -9003,7 +9284,9 @@ version 2005/12/01 or later. % % \bigskip % \begin{macrocode} - \exp_args:NNV \NewDocumentCommand \@@_Iddots \l_@@_argspec_tl + \cs_new_protected:Npn \@@_Iddots + { \@@_collect_options:n { \@@_Iddots_i } } + \exp_args:NNV \NewDocumentCommand \@@_Iddots_i \l_@@_argspec_tl { \int_case:nnF \c@iRow { @@ -9019,7 +9302,7 @@ version 2005/12/01 or later. { \keys_set_known:nn { NiceMatrix / Ddots } { #1 } \@@_instruction_of_type:nnn \l_@@_draw_first_bool { Iddots } - { #1 , down = #2 , up = #3 } + { #1 , down = #2 , up = #3 , middle = #4 } } } \bool_if:NF \l_@@_nullify_dots_bool @@ -9099,13 +9382,15 @@ version 2005/12/01 or later. % \begin{macrocode} \hook_gput_code:nnn { begindocument } { . } { - \tl_set:Nn \l_@@_argspec_tl { O { } m O { } E { _ ^ } { { } { } } } + \tl_set:Nn \l_@@_argspec_tl { m m O { } E { _ ^ : } { { } { } { } } } \tl_set_rescan:Nno \l_@@_argspec_tl { } \l_@@_argspec_tl % \end{macrocode} % We don't put |!| before the last optionnal argument for homogeneity with % |\Cdots|, etc. which have only one optional argument. % \begin{macrocode} - \exp_args:NNV \NewDocumentCommand \@@_Hdotsfor_i \l_@@_argspec_tl + \cs_new_protected:Npn \@@_Hdotsfor_i + { \@@_collect_options:n { \@@_Hdotsfor_ii } } + \exp_args:NNV \NewDocumentCommand \@@_Hdotsfor_ii \l_@@_argspec_tl { \tl_gput_right:Nx \g_@@_HVdotsfor_lines_tl { @@ -9116,7 +9401,8 @@ version 2005/12/01 or later. { #1 , #3 , down = \exp_not:n { #4 } , - up = \exp_not:n { #5 } + up = \exp_not:n { #5 } , + middle = \exp_not:n { #6 } } } \prg_replicate:nn { #2 - 1 } { & \multicolumn { 1 } { c } { } } @@ -9178,12 +9464,17 @@ version 2005/12/01 or later. % % \begin{macrocode} \group_begin: + + \@@_open_shorten: + + \int_compare:nNnTF { #1 } = 0 { \color { nicematrix-first-row } } { \int_compare:nNnT { #1 } = \g_@@_row_total_int { \color { nicematrix-last-row } } } + \keys_set:nn { NiceMatrix / xdots } { #4 } \tl_if_empty:VF \l_@@_xdots_color_tl { \color { \l_@@_xdots_color_tl } } \@@_actually_draw_Ldots: @@ -9205,9 +9496,11 @@ version 2005/12/01 or later. % \begin{macrocode} \hook_gput_code:nnn { begindocument } { . } { - \tl_set:Nn \l_@@_argspec_tl { O { } m O { } E { _ ^ } { { } { } } } + \tl_set:Nn \l_@@_argspec_tl { m m O { } E { _ ^ : } { { } { } { } } } \tl_set_rescan:Nno \l_@@_argspec_tl { } \l_@@_argspec_tl - \exp_args:NNV \NewDocumentCommand \@@_Vdotsfor: \l_@@_argspec_tl + \cs_new_protected:Npn \@@_Vdotsfor: + { \@@_collect_options:n { \@@_Vdotsfor_i } } + \exp_args:NNV \NewDocumentCommand \@@_Vdotsfor_i \l_@@_argspec_tl { \bool_gset_true:N \g_@@_empty_cell_bool \tl_gput_right:Nx \g_@@_HVdotsfor_lines_tl @@ -9218,14 +9511,16 @@ version 2005/12/01 or later. { #2 } { #1 , #3 , - down = \exp_not:n { #4 } , up = \exp_not:n { #5 } + down = \exp_not:n { #4 } , + up = \exp_not:n { #5 } , + middle = \exp_not:n { #6 } } } } } % \end{macrocode} -% Enf of |\AddToHook|. % +% \bigskip % \begin{macrocode} \cs_new_protected:Npn \@@_Vdotsfor:nnnn #1 #2 #3 #4 { @@ -9279,6 +9574,11 @@ version 2005/12/01 or later. % % \begin{macrocode} \group_begin: + \@@_open_shorten: + + + + \int_compare:nNnTF { #2 } = 0 { \color { nicematrix-first-col } } { @@ -9309,8 +9609,11 @@ version 2005/12/01 or later. % \begin{macrocode} \NewDocumentCommand \@@_rotate: { O { } } { - \bool_gset_true:N \g_@@_rotate_bool - \keys_set:nn { NiceMatrix / rotate } { #1 } + \peek_remove_spaces:n + { + \bool_gset_true:N \g_@@_rotate_bool + \keys_set:nn { NiceMatrix / rotate } { #1 } + } } % \end{macrocode} % @@ -9364,7 +9667,7 @@ version 2005/12/01 or later. % \begin{macrocode} \hook_gput_code:nnn { begindocument } { . } { - \tl_set:Nn \l_@@_argspec_tl { O { } m m ! O { } E { _ ^ } { { } { } } } + \tl_set:Nn \l_@@_argspec_tl { O { } m m ! O { } E { _ ^ : } { { } { } { } } } \tl_set_rescan:Nno \l_@@_argspec_tl { } \l_@@_argspec_tl \exp_args:NNV \NewDocumentCommand \@@_line \l_@@_argspec_tl { @@ -9659,28 +9962,23 @@ version 2005/12/01 or later. % \end{macrocode} % % \bigskip -% The macro |\@@_actually_color:| will actually fill all the rectangles, color by -% color (using the sequence |\l_@@_colors_seq| and all the token lists of the -% form |\l_@@_color_|$i$|_tl|). -% \begin{macrocode} -\cs_new_protected:Npn \@@_actually_color: - { - \pgfpicture - \pgf@relevantforpicturesizefalse -% \end{macrocode} -% If the final user has used the key |rounded-corners| for the environment -% |{NiceTabular}|, we will clip to a rectangle with rounded corners before -% filling the rectangles. +% The following command must be used within a |\pgfpicture|. % \begin{macrocode} +\cs_new_protected:Npn \@@_clip_with_rounded_corners: + { \dim_compare:nNnT \l_@@_tab_rounded_corners_dim > \c_zero_dim { +% \end{macrocode} +% The TeX group is for |\pgfsetcornersarced| (whose scope is the TeX scope). +% \begin{macrocode} + \group_begin: \pgfsetcornersarced { \pgfpoint { \l_@@_tab_rounded_corners_dim } { \l_@@_tab_rounded_corners_dim } } -% \end{macrococde} +% \end{macrocode} % Because we want \pkg{nicematrix} compatible with arrays constructed by % \pkg{array}, the nodes for the rows and columns (that is to say the nodes % |row-|\textsl{i} and |col-|\textsl{j}) have not always the expected position, @@ -9719,7 +10017,29 @@ version 2005/12/01 or later. } } \pgfusepath { clip } + \group_end: +% \end{macrocode} +% The TeX group was for |\pgfsetcornersarced|. +% \begin{macrocode} } + } +% \end{macrocode} +% +% \bigskip +% The macro |\@@_actually_color:| will actually fill all the rectangles, color by +% color (using the sequence |\l_@@_colors_seq| and all the token lists of the +% form |\l_@@_color_|$i$|_tl|). +% \begin{macrocode} +\cs_new_protected:Npn \@@_actually_color: + { + \pgfpicture + \pgf@relevantforpicturesizefalse +% \end{macrocode} +% If the final user has used the key |rounded-corners| for the environment +% |{NiceTabular}|, we will clip to a rectangle with rounded corners before +% filling the rectangles. +% \begin{macrocode} + \@@_clip_with_rounded_corners: \seq_map_indexed_inline:Nn \g_@@_colors_seq { \begin { pgfscope } @@ -9916,11 +10236,12 @@ version 2005/12/01 or later. % \end{macrocode} % % \medskip -% The command |\rowcolors| (accessible in the |code-before|) is inspired by the +% The command |\rowcolors| (accessible in the |\CodeBefore|) is inspired by the % command |\rowcolors| of the package \pkg{xcolor} (with the option |table|). % However, the command |\rowcolors| of \pkg{nicematrix} has \emph{not} the -% optional argument of the command |\rowcolors| of \pkg{xcolor}. Here is an -% example: |\rowcolors{1}{blue!10}{}[respect-blocks]|. +% optional argument of the command |\rowcolors| of \pkg{xcolor}. +% +% Here is an example: |\rowcolors{1}{blue!10}{}[respect-blocks]|. % % In \pkg{nicematrix}, the commmand |\@@_rowcolors| apperas as a special case of % |\@@_rowlistcolors|. @@ -9951,7 +10272,7 @@ version 2005/12/01 or later. { % \end{macrocode} % We don't want to take into account a block which is completely in the ``first -% column'' of (number $0$) or in the ``last column'' and that's why we filter +% column'' (number~$0$) or in the ``last column'' and that's why we filter % the sequence of the blocks (in a the sequence |\l_tmpa_seq|). % \begin{macrocode} \seq_set_eq:NN \l_tmpb_seq \g_@@_pos_of_blocks_seq @@ -10276,7 +10597,8 @@ version 2005/12/01 or later. \tl_gput_right:Nx \g__nicematrix_pre_code_before_tl { \@@_rowlistcolors - [ #1 ] { \int_use:N \c@iRow } { #2 } [ restart, #3 ] + [ #1 ] { \int_use:N \c@iRow } { #2 } + [ restart, cols = \int_use:N \c@jCol - , #3 ] } } } @@ -10806,7 +11128,6 @@ version 2005/12/01 or later. % \begin{macrocode} \cs_new_protected:Npn \@@_hline_ii: { - % \bool_set_false:N \l_@@_dotted_bool \keys_set:nV { NiceMatrix / RulesBis } \l_@@_other_keys_tl \bool_if:NTF \l_@@_dotted_bool \@@_hline_iv: @@ -10989,7 +11310,7 @@ version 2005/12/01 or later. % \bigskip % The command |\@@_draw_hlines:| draws all the horizontal rules excepted in the % blocks (even the virtual blocks determined by commands such as |\Cdots| and in -% the corners (if the key |corners| is used)). +% the corners --- if the key |corners| is used). % \begin{macrocode} \cs_new_protected:Npn \@@_draw_hlines: { @@ -11097,6 +11418,7 @@ version 2005/12/01 or later. \str_clear_new:N \l_@@_command_str \str_clear_new:N \l_@@_ccommand_str \str_clear_new:N \l_@@_letter_str + \tl_clear_new:N \l_@@_other_keys_tl \keys_set_known:nnN { NiceMatrix / custom-line } { #1 } \l_@@_other_keys_tl % \end{macrocode} % If the final user only wants to draw horizontal rules, he does not need to @@ -11277,7 +11599,6 @@ version 2005/12/01 or later. } \seq_put_left:NV \l_@@_custom_line_commands_seq \l_@@_command_str } -\cs_generate_variant:Nn \@@_h_custom_line:nn { n V } % \end{macrocode} % % \bigskip @@ -11330,7 +11651,6 @@ version 2005/12/01 or later. } } } -\cs_generate_variant:Nn \@@_c_custom_line:nn { n V } % \end{macrocode} % % \begin{macrocode} @@ -11705,6 +12025,7 @@ version 2005/12/01 or later. } \iow_shipout:Nn \@mainaux \ExplSyntaxOff } + \ignorespacesafterend } % \end{macrocode} % @@ -12089,12 +12410,21 @@ version 2005/12/01 or later. C .value_forbidden:n = true , t .code:n = \str_set:Nn \l_@@_vpos_of_block_str t , t .value_forbidden:n = true , + T .code:n = \str_set:Nn \l_@@_vpos_of_block_str T , + T .value_forbidden:n = true , b .code:n = \str_set:Nn \l_@@_vpos_of_block_str b , b .value_forbidden:n = true , - color .tl_set:N = \l_@@_color_tl , + B .code:n = \str_set:Nn \l_@@_vpos_of_block_str B , + B .value_forbidden:n = true , + color .code:n = + \@@_color:n { #1 } + \tl_set_rescan:Nnn + \l_@@_draw_tl + { \char_set_catcode_other:N ! } + { #1 } , color .value_required:n = true , respect-arraystretch .bool_set:N = \l_@@_respect_arraystretch_bool , - respect-arraystretch .default:n = true , + respect-arraystretch .default:n = true } % \end{macrocode} % @@ -12105,22 +12435,14 @@ version 2005/12/01 or later. % |<| and |>|. It's mandatory to use an expandable command. % % +% % \begin{macrocode} -\cs_new_protected:Npn \@@_block:n #1 - { - \peek_meaning:NTF [ - { \@@_block_i:n { #1 } } - { \@@_Block_i:[#1] } - } - -\cs_new_protected:Npn \@@_block_i:n #1[#2] { \@@_block:n {#1,#2} } - -\cs_new_protected:Npn \@@_Block: { \@@_block:n { } } +\cs_new_protected:Npn \@@_Block: { \@@_collect_options:n { \@@_Block_i: } } % \end{macrocode} -% +% % \bigskip % \begin{macrocode} -\NewExpandableDocumentCommand \@@_Block_i: { O { } m D < > { } +m } +\NewExpandableDocumentCommand \@@_Block_i: { m m D < > { } +m } { % \end{macrocode} % If the first mandatory argument of the command (which is the size of the block @@ -12160,11 +12482,11 @@ version 2005/12/01 or later. % \end{macrocode} % % \medskip -% Now, the arguments have been extracted: |#1| is $i$ (the number of rows of the -% block), |#2| is $j$ (the number of columns of the block), |#3| is the list of -% \textsl{key=values} pairs, |#4| are the tokens to put before the math mode and -% the beginning of the small array of the block and |#5| is the label of the -% block. +% Now, the arguments have been extracted: +% |#1| is $i$ (the number of rows of the block), |#2| is $j$ (the number of +% columns of the block), |#3| is the list of \textsl{key=values} pairs, |#4| are +% the tokens to put before the math mode and before the composition of the block +% and |#5| is the label (=content) of the block. % \begin{macrocode} \cs_new_protected:Npn \@@_Block_ii:nnnnn #1 #2 #3 #4 #5 { @@ -12261,7 +12583,13 @@ version 2005/12/01 or later. % right now in a box (because we have to take into account the dimensions of % that box for the width of the current column or the height and the depth of the % current row). However, that box will be put in the array \emph{after the -% construction of the array} (by using \textsc{pgf}). +% construction of the array} (by using \textsc{pgf}) with |\@@_draw_blocks:| and +% above all |\@@_Block_v:nnnnnn| which will do the main job. +% +% |#1| is $i$ (the number of rows of the block), |#2| is $j$ (the number of +% columns of the block), |#3| is the list of \textsl{key=values} pairs, |#4| are +% the tokens to put before the math mode and before the composition of the block +% and |#5| is the label (=content) of the block. % \begin{macrocode} \cs_new_protected:Npn \@@_Block_iv:nnnnn #1 #2 #3 #4 #5 { @@ -12280,6 +12608,13 @@ version 2005/12/01 or later. } \box_gclear_new:c { g_@@_ block _ box _ \int_use:N \g_@@_block_box_int _ box } +% \end{macrocode} +% Now, we will actually compose the content of the |\Block| in a TeX box. +% \emph{Be careful}: if after, the construction of the box, the boolean +% |\g_@@_rotate_bool| is raised (which means that the command |\rotate| was +% present in the content of the |\Block|) we will rotate the box but also, +% maybe, change the position of the baseline! +% \begin{macrocode} \hbox_gset:cn { g_@@_ block _ box _ \int_use:N \g_@@_block_box_int _ box } { @@ -12309,30 +12644,44 @@ version 2005/12/01 or later. } \g_@@_row_style_tl } - \group_begin: \bool_if:NF \l_@@_respect_arraystretch_bool { \cs_set:Npn \arraystretch { 1 } } \dim_zero:N \extrarowheight +% \end{macrocode} +% |#4| is the optional argument of the command |\Block|, provided with the +% syntax |<...>|. +% \begin{macrocode} #4 % \end{macrocode} -% If the box is rotated (the key |\rotate| may be in the previous |#4|), the -% tabular used for the content of the cell will be constructed with a format -% |c|. In the other cases, the tabular will be constructed with a format equal -% to the key of position of the box. In other words: the alignment internal to -% the tabular is the same as the external alignment of the tabular (that is to -% say the position of the block in its zone of merged cells). +% We adjust |\l_@@_hpos_block_str| when |\rotate| has been used (in the cell +% where the command |\Block| is used but maybe in |#4|, |\RowStyle|, +% |code-for-first-row|, etc.). +% \begin{macrocode} + \@@_adjust_hpos_rotate: +% \end{macrocode} +% The boolean |\g_@@_rotate_bool| will be also considered \emph{after the composition +% of the box} (in order to rotate the box). +% +% \medskip +% Remind that we are in the command of composition of the box of the block. +% Previously, we have only done some tuning. Now, we will actually compose the +% content with a |{tabular}|, an |{array}| or a |{minipage}|. % \begin{macrocode} - \bool_if:NT \g_@@_rotate_bool { \str_set:Nn \l_@@_hpos_block_str c } \bool_if:NTF \l_@@_tabular_bool { \bool_lazy_all:nTF { { \int_compare_p:nNn { #2 } = 1 } - { \dim_compare_p:n { \l_@@_col_width_dim >= \c_zero_dim } } +% \end{macrocode} +% Remind that, when the column has not a fixed width, the dimension +% |\l_@@_col_width_dim| has the conventionnal value of $-1$~cm. +% \begin{macrocode} + { \dim_compare_p:n { \l_@@_col_width_dim >= \c_zero_dim } } { ! \g_@@_rotate_bool } } % \end{macrocode} -% When the block is mono-column in a column with a fixed width (eg |p{3cm}|). +% When the block is mono-column in a column with a fixed width (eg |p{3cm}|), we +% use a |{minipage}|. % \begin{macrocode} { \use:x @@ -12341,16 +12690,15 @@ version 2005/12/01 or later. [ \str_lowercase:V { \l_@@_vpos_of_block_str } ] { \l_@@_col_width_dim } \str_case:Vn \l_@@_hpos_block_str - { - c \centering - r \raggedleft - l \raggedright - } + { c \centering r \raggedleft l \raggedright } } #5 \end { minipage } } - { +% \end{macrocode} +% In the other cases, we use a |{tabular}|. +% \begin{macrocode} + { \use:x { \exp_not:N \begin { tabular }% @@ -12361,6 +12709,10 @@ version 2005/12/01 or later. \end { tabular } } } +% \end{macrocode} +% If we are in a mathematical array (|\l_@@_tabular_bool| is |false|). The +% composition is always done with an |{array}| (never with a |{minipage}|). +% \begin{macrocode} { \c_math_toggle_token \use:x @@ -12373,30 +12725,18 @@ version 2005/12/01 or later. \end { array } \c_math_toggle_token } - \group_end: - } - \bool_if:NT \g_@@_rotate_bool - { - \box_grotate:cn - { g_@@_ block _ box _ \int_use:N \g_@@_block_box_int _ box } - { 90 } - \bool_if:NT \g_@@_rotate_c_bool - { - \hbox_gset:cn - { g_@@_ block _ box _ \int_use:N \g_@@_block_box_int _ box } - { - \c_math_toggle_token - \vcenter - { - \box_use:c - { g_@@_ block _ box _ \int_use:N \g_@@_block_box_int _ box } - } - \c_math_toggle_token - } - } - \bool_gset_false:N \g_@@_rotate_bool } % \end{macrocode} +% The box which will contain the content of the block has now been composed. +% +% \bigskip +% If there were |\rotate| (which raises |\g_@@_rotate_bool|) in the content of +% the |\Block|, we do a rotation of the box (and we also adjust the +% baseline the rotated box). +% \begin{macrocode} + \bool_if:NT \g_@@_rotate_bool \@@_rotate_box_of_block: +% \end{macrocode} +% % If we are in a mono-column block, we take into account the width of that block % for the width of the column. % \begin{macrocode} @@ -12449,8 +12789,17 @@ version 2005/12/01 or later. % \begin{macrocode} { \exp_not:n { #3 } , - \l_@@_hpos_block_str , - \bool_if:NT \g_@@_rotate_c_bool { v-center } + \l_@@_hpos_block_str , +% \end{macrocode} +% Now, we put a key for the vertical alignment. +% \begin{macrocode} + \bool_if:NT \g_@@_rotate_bool + { + \bool_if:NTF \g_@@_rotate_c_bool + { v-center } + { \int_compare:nNnT \c@iRow = \l_@@_last_row_int T } + } + } { \box_use_drop:c @@ -12460,12 +12809,74 @@ version 2005/12/01 or later. \bool_set_false:N \g_@@_rotate_c_bool } % \end{macrocode} +% +% \bigskip +% \begin{macrocode} +\cs_new:Npn \@@_adjust_hpos_rotate: + { + \bool_if:NT \g_@@_rotate_bool + { + \str_set:Nx \l_@@_hpos_block_str + { + \bool_if:NTF \g_@@_rotate_c_bool + { c } + { + \str_case:VnF \l_@@_vpos_of_block_str + { b l B l t r T r } + { \int_compare:nNnTF \c@iRow = \l_@@_last_row_int r l } + } + } + } + } +% \end{macrocode} +% +% \bigskip +% Despite its name the following command rotates the box of the block \emph{but +% also does vertical adjustement of the baseline of the block}. +% \begin{macrocode} +\cs_new_protected:Npn \@@_rotate_box_of_block: + { + \box_grotate:cn + { g_@@_ block _ box _ \int_use:N \g_@@_block_box_int _ box } + { 90 } + \int_compare:nNnT \c@iRow = \l_@@_last_row_int + { + \vbox_gset_top:cn + { g_@@_ block _ box _ \int_use:N \g_@@_block_box_int _ box } + { + \skip_vertical:n { 0.8 ex } + \box_use:c + { g_@@_ block _ box _ \int_use:N \g_@@_block_box_int _ box } + } + } + \bool_if:NT \g_@@_rotate_c_bool + { + \hbox_gset:cn + { g_@@_ block _ box _ \int_use:N \g_@@_block_box_int _ box } + { + \c_math_toggle_token + \vcenter + { + \box_use:c + { g_@@_ block _ box _ \int_use:N \g_@@_block_box_int _ box } + } + \c_math_toggle_token + } + } + } +% \end{macrocode} % % \bigskip % The following macro is for the standard case, where the block is not mono-row % and not mono-column. In that case, the content of the block is \emph{not} % composed right now in a box. The composition in a box will be done further, -% just after the construction of the array. +% just after the construction of the array (cf. |\@@_draw_blocks:| and +% above all |\@@_Block_v:nnnnnn|). +% +% |#1| is $i$ (the number of rows of the block), |#2| is $j$ (the number of +% columns of the block), |#3| is the list of \textsl{key=values} pairs, |#4| are +% the tokens to put before the math mode and before the composition of the block +% and |#5| is the label (=content) of the block. % \begin{macrocode} \cs_new_protected:Npn \@@_Block_v:nnnnn #1 #2 #3 #4 #5 { @@ -12491,8 +12902,7 @@ version 2005/12/01 or later. % the tabular is the same as the external alignment of the tabular (that is to % say the position of the block in its zone of merged cells). % \begin{macrocode} - \bool_if:NT \g_@@_rotate_bool - { \str_set:Nn \l_@@_hpos_block_str c } + % \@@_adjust_hpos_rotate: \use:x { \exp_not:N \begin { tabular } [ \l_@@_vpos_of_block_str ] @@ -12503,6 +12913,9 @@ version 2005/12/01 or later. } \group_end: } +% \end{macrocode} +% When we are \emph{not} in an environments |{NiceTabular}| (or similar). +% \begin{macrocode} { \group_begin: \bool_if:NF \l_@@_respect_arraystretch_bool @@ -12511,9 +12924,8 @@ version 2005/12/01 or later. { \dim_zero:N \extrarowheight #4 - \bool_if:NT \g_@@_rotate_bool - { \str_set:Nn \l_@@_hpos_block_str c } - \c_math_toggle_token + % \@@_adjust_hpos_rotate: + \c_math_toggle_token % :n c \use:x { \exp_not:N \begin { array } [ \l_@@_vpos_of_block_str ] @@ -12550,6 +12962,8 @@ version 2005/12/01 or later. { \char_set_catcode_other:N ! } { #1 } , fill .value_required:n = true , + opacity .tl_set:N = \l_@@_opacity_tl , + opacity .value_required:n = true , draw .code:n = \tl_set_rescan:Nnn \l_@@_draw_tl @@ -12564,7 +12978,6 @@ version 2005/12/01 or later. \l_@@_draw_tl { \char_set_catcode_other:N ! } { #1 } , - color .value_required:n = true , borders .clist_set:N = \l_@@_borders_clist , borders .value_required:n = true , hvlines .meta:n = { vlines , hlines } , @@ -12574,36 +12987,29 @@ version 2005/12/01 or later. hlines .default:n = true , line-width .dim_set:N = \l_@@_line_width_dim , line-width .value_required:n = true , +% \end{macrocode} +% Some keys have not a property |.value_required:n| (or similar) because they +% are in |FirstPass|. +% \begin{macrocode} l .code:n = \str_set:Nn \l_@@_hpos_block_str l , - l .value_forbidden:n = true , r .code:n = \str_set:Nn \l_@@_hpos_block_str r , - r .value_forbidden:n = true , c .code:n = \str_set:Nn \l_@@_hpos_block_str c , - c .value_forbidden:n = true , L .code:n = \str_set:Nn \l_@@_hpos_block_str l \bool_set_true:N \l_@@_hpos_of_block_cap_bool , - L .value_forbidden:n = true , R .code:n = \str_set:Nn \l_@@_hpos_block_str r \bool_set_true:N \l_@@_hpos_of_block_cap_bool , - R .value_forbidden:n = true , C .code:n = \str_set:Nn \l_@@_hpos_block_str c \bool_set_true:N \l_@@_hpos_of_block_cap_bool , - C .value_forbidden:n = true , t .code:n = \str_set:Nn \l_@@_vpos_of_block_str t , - t .value_forbidden:n = true , T .code:n = \str_set:Nn \l_@@_vpos_of_block_str T , - T .value_forbidden:n = true , b .code:n = \str_set:Nn \l_@@_vpos_of_block_str b , - b .value_forbidden:n = true , B .code:n = \str_set:Nn \l_@@_vpos_of_block_str B , - B .value_forbidden:n = true , v-center .code:n = \str_set:Nn \l_@@_vpos_of_block_str { c } , v-center .value_forbidden:n = true , name .tl_set:N = \l_@@_block_name_str , name .value_required:n = true , name .initial:n = , respect-arraystretch .bool_set:N = \l_@@_respect_arraystretch_bool , - respect-arraystretch .default:n = true , transparent .bool_set:N = \l_@@_transparent_bool , transparent .default:n = true , transparent .initial:n = false , @@ -12765,6 +13171,21 @@ version 2005/12/01 or later. % \begin{macrocode} \tl_if_empty:NF \l_@@_fill_tl { + \tl_if_empty:NF \l_@@_opacity_tl + { + \tl_if_head_eq_meaning:nNTF \l_@@_fill_tl [ + { + \tl_set:Nx \l_@@_fill_tl + { + [ opacity = \l_@@_opacity_tl , + \tl_tail:V \l_@@_fill_tl + } + } + { + \tl_set:Nx \l_@@_fill_tl + { [ opacity = \l_@@_opacity_tl ] { \l_@@_fill_tl } } + } + } \tl_gput_right:Nx \g_@@_pre_code_before_tl { \exp_not:N \roundedrectanglecolor @@ -13005,14 +13426,17 @@ version 2005/12/01 or later. % \end{macrocode} % If we are in the first column, we must put the block as if it was with the key~|r|. % \begin{macrocode} - \int_compare:nNnT { #2 } = 0 - { \str_set:Nn \l_@@_hpos_block_str r } + \int_compare:nNnT { #2 } = 0 { \str_set:Nn \l_@@_hpos_block_str r } +% \end{macrocode} +% If we are in the last column, we must put the block as if it was with the key~|l|. +% \begin{macrocode} \bool_if:nT \g_@@_last_col_found_bool { \int_compare:nNnT { #2 } = \g_@@_col_total_int { \str_set:Nn \l_@@_hpos_block_str l } } % \end{macrocode} +% |\l_tmpa_tl| will contain the anchor of the \textsc{pgf} node which will be used. % \begin{macrocode} \tl_set:Nx \l_tmpa_tl { @@ -13069,9 +13493,10 @@ version 2005/12/01 or later. { \box_use_drop:N \l_@@_cell_box } { } { } } % \end{macrocode} -% +% End of the case when |\l_@@_vpos_of_block_str| is equal to |c|, |T| or |B|. +% Now, the other cases. % \begin{macrocode} - { + { % \end{macrocode} % % \begin{macrocode} @@ -13151,11 +13576,11 @@ version 2005/12/01 or later. { \CT@arc@ } { \@@_color:V \l_@@_draw_tl } } - \pgfsetcornersarced + \pgfsetcornersarced { \pgfpoint - { \dim_use:N \l_@@_rounded_corners_dim } - { \dim_use:N \l_@@_rounded_corners_dim } + { \l_@@_rounded_corners_dim } + { \l_@@_rounded_corners_dim } } \@@_cut_on_hyphen:w #2 \q_stop \bool_lazy_and:nnT @@ -13163,22 +13588,22 @@ version 2005/12/01 or later. { \int_compare_p:n { \l_tmpb_tl <= \c@jCol } } { \@@_qpoint:n { row - \l_tmpa_tl } - \dim_set:Nn \l_tmpb_dim { \pgf@y } + \dim_set_eq:NN \l_tmpb_dim \pgf@y \@@_qpoint:n { col - \l_tmpb_tl } - \dim_set:Nn \l_@@_tmpc_dim { \pgf@x } + \dim_set_eq:NN \l_@@_tmpc_dim \pgf@x \@@_cut_on_hyphen:w #3 \q_stop \int_compare:nNnT \l_tmpa_tl > \c@iRow { \tl_set:Nx \l_tmpa_tl { \int_use:N \c@iRow } } \int_compare:nNnT \l_tmpb_tl > \c@jCol { \tl_set:Nx \l_tmpb_tl { \int_use:N \c@jCol } } \@@_qpoint:n { row - \int_eval:n { \l_tmpa_tl + 1 } } - \dim_set:Nn \l_tmpa_dim { \pgf@y } + \dim_set_eq:NN \l_tmpa_dim \pgf@y \@@_qpoint:n { col - \int_eval:n { \l_tmpb_tl + 1 } } - \dim_set:Nn \l_@@_tmpd_dim { \pgf@x } + \dim_set_eq:NN \l_@@_tmpd_dim \pgf@x + \pgfsetlinewidth { 1.1 \l_@@_line_width_dim } \pgfpathrectanglecorners { \pgfpoint \l_@@_tmpc_dim \l_tmpb_dim } { \pgfpoint \l_@@_tmpd_dim \l_tmpa_dim } - \pgfsetlinewidth { 1.1 \l_@@_line_width_dim } \dim_compare:nNnTF \l_@@_rounded_corners_dim = \c_zero_dim { \pgfusepathqstroke } { \pgfusepath { stroke } } @@ -13252,7 +13677,7 @@ version 2005/12/01 or later. position = ##1 , start = \l_@@_tmpd_tl , end = \int_eval:n { \l_tmpb_tl - 1 } , - total-width = \dim_use:N \l_@@_line_width_dim % added 2022-08-06 + total-width = \dim_use:N \l_@@_line_width_dim } } } @@ -13405,6 +13830,7 @@ version 2005/12/01 or later. \cs_new_protected:Npn \@@_block_tikz:nnnnn #1 #2 #3 #4 #5 { \begin { tikzpicture } + \@@_clip_with_rounded_corners: \clist_map_inline:nn { #5 } { \path [ ##1 ] @@ -13702,6 +14128,7 @@ version 2005/12/01 or later. delimiters / color .value_required:n = true , rules .code:n = \keys_set:nn { NiceMatrix / rules } { #1 } , rules .value_required:n = true , + xdots .code:n = \keys_set:nn { NiceMatrix / xdots } { #1 } , unknown .code:n = \@@_error:n { Unknown~key~for~CodeAfter } } % \end{macrocode} @@ -14863,15 +15290,15 @@ version 2005/12/01 or later. % The boolean |\g_@@_footnotehyper_bool| will indicate if the option % |footnotehyper| is used. % \begin{macrocode} -\bool_new:N \c_@@_footnotehyper_bool +\bool_new:N \g_@@_footnotehyper_bool % \end{macrocode} % % \medskip -% The boolean |\c_@@_footnote_bool| will indicate if the option |footnote| is +% The boolean |\g_@@_footnote_bool| will indicate if the option |footnote| is % used, but quicky, it will also be set to |true| if the option |footnotehyper| % is used. % \begin{macrocode} -\bool_new:N \c_@@_footnote_bool +\bool_new:N \g_@@_footnote_bool % \end{macrocode} % % \begin{macrocode} @@ -14900,10 +15327,10 @@ version 2005/12/01 or later. renew-dots .value_forbidden:n = true , renew-matrix .code:n = \@@_renew_matrix: , renew-matrix .value_forbidden:n = true , - messages-for-Overleaf .bool_set:N = \c_@@_messages_for_Overleaf_bool , - footnote .bool_set:N = \c_@@_footnote_bool , - footnotehyper .bool_set:N = \c_@@_footnotehyper_bool , - no-test-for-array .bool_set:N = \c_@@_no_test_for_array_bool , + messages-for-Overleaf .bool_set:N = \g_@@_messages_for_Overleaf_bool , + footnote .bool_set:N = \g_@@_footnote_bool , + footnotehyper .bool_set:N = \g_@@_footnotehyper_bool , + no-test-for-array .bool_set:N = \g_@@_no_test_for_array_bool , no-test-for-array .default:n = true , unknown .code:n = \@@_error:n { Unknown~key~for~package } } @@ -14937,14 +15364,14 @@ version 2005/12/01 or later. % % \medskip % \begin{macrocode} -\bool_if:NT \c_@@_footnote_bool +\bool_if:NT \g_@@_footnote_bool { % \end{macrocode} % The class \cls{beamer} has its own system to extract footnotes and that's why % we have nothing to do if \cls{beamer} is used. % \begin{macrocode} \IfClassLoadedTF { beamer } - { \bool_set_false:N \c_@@_footnote_bool } + { \bool_set_false:N \g_@@_footnote_bool } { \IfPackageLoadedTF { footnotehyper } { \@@_error:n { footnote~with~footnotehyper~package } } @@ -14954,24 +15381,24 @@ version 2005/12/01 or later. % \end{macrocode} % % \begin{macrocode} -\bool_if:NT \c_@@_footnotehyper_bool +\bool_if:NT \g_@@_footnotehyper_bool { % \end{macrocode} % The class \cls{beamer} has its own system to extract footnotes and that's why % we have nothing to do if \cls{beamer} is used. % \begin{macrocode} \IfClassLoadedTF { beamer } - { \bool_set_false:N \c_@@_footnote_bool } + { \bool_set_false:N \g_@@_footnote_bool } { \IfPackageLoadedTF { footnote } { \@@_error:n { footnotehyper~with~footnote~package } } { \usepackage { footnotehyper } } } - \bool_set_true:N \c_@@_footnote_bool + \bool_set_true:N \g_@@_footnote_bool } % \end{macrocode} -% The flag |\c_@@_footnote_bool| is raised and so, we will only have to test -% |\c_@@_footnote_bool| in order to know if we have to insert an environment +% The flag |\g_@@_footnote_bool| is raised and so, we will only have to test +% |\g_@@_footnote_bool| in order to know if we have to insert an environment % |{savenotes}|. % % \bigskip @@ -15004,7 +15431,7 @@ version 2005/12/01 or later. % \section{Error messages of the package} % % \begin{macrocode} -\bool_if:NTF \c_@@_messages_for_Overleaf_bool +\bool_if:NTF \g_@@_messages_for_Overleaf_bool { \str_const:Nn \c_@@_available_keys_str { } } { \str_const:Nn \c_@@_available_keys_str @@ -15078,6 +15505,15 @@ version 2005/12/01 or later. { ~Maybe~your~use~of~\token_to_str:N \Hdotsfor\ is~incorrect.} } % \end{macrocode} +% +% \begin{macrocode} +\@@_msg_new:nn { hvlines,~rounded-corners~and~corners } + { + Incompatible~options.\\ + You~should~not~use~'hvlines',~'rounded-corners'~and~'corners'~at~this~time.\\ + The~output~will~not~be~reliable. + } +% \end{macrocode} % % \begin{macrocode} \@@_msg_new:nn { negative~weight } @@ -15159,7 +15595,7 @@ version 2005/12/01 or later. The~preamble~of~your~\@@_full_name_env:\ announces~\int_use:N \g_@@_static_num_of_col_int\ columns~but~you~use~only~\int_use:N \c@jCol.\\ The~columns~you~did~not~used~won't~be~created.\\ - We~won't~have~similar~error~till~the~end~of~the~document. + You~won't~have~similar~error~till~the~end~of~the~document. } % \end{macrocode} % @@ -15546,7 +15982,7 @@ version 2005/12/01 or later. The~name~'#1'~is~already~used~for~a~\token_to_str:N \SubMatrix\ in~this~\@@_full_name_env:.\\ This~key~will~be~ignored.\\ - \bool_if:NF \c_@@_messages_for_Overleaf_bool + \bool_if:NF \g_@@_messages_for_Overleaf_bool { For~a~list~of~the~names~already~used,~type~H~. } } { @@ -15626,7 +16062,7 @@ version 2005/12/01 or later. \@@_msg_new:nn { last-col~non~empty~for~NiceMatrixOptions } { Erroneous~use.\\ - In~\NiceMatrixoptions,~you~must~use~the~key~ + In~\token_to_str:N \NiceMatrixOptions,~you~must~use~the~key~ 'last-col'~without~value.\\ However,~you~can~go~on~for~this~time~ (the~value~'\l_keys_value_tl'~will~be~ignored). @@ -15844,8 +16280,8 @@ version 2005/12/01 or later. } { The~available~keys~are~(in~alphabetic~order):~b,~B,~borders,~c,~draw,~fill,~ - hlines,~hvlines,~l,~line-width,~name,~rounded-corners,~r,~respect-arraystretch,~ - t,~T,~tikz,~transparent~and~vlines. + hlines,~hvlines,~l,~line-width,~name,~opacity,~rounded-corners,~r,~ + respect-arraystretch,~t,~T,~tikz,~transparent~and~vlines. } % \end{macrocode} % @@ -16231,7 +16667,7 @@ version 2005/12/01 or later. if~you~use~'columns-width=auto'.~If~you~don't~want~to~see~this~ message~again,~use~the~key~'allow-duplicate-names'~in~ '\token_to_str:N \NiceMatrixOptions'.\\ - \bool_if:NF \c_@@_messages_for_Overleaf_bool + \bool_if:NF \g_@@_messages_for_Overleaf_bool { For~a~list~of~the~names~already~used,~type~H~. } } { diff --git a/macros/latex/contrib/nicematrix/nicematrix-code.pdf b/macros/latex/contrib/nicematrix/nicematrix-code.pdf index bb9e3275e4..9f6fdcb2d2 100644 Binary files a/macros/latex/contrib/nicematrix/nicematrix-code.pdf and b/macros/latex/contrib/nicematrix/nicematrix-code.pdf differ diff --git a/macros/latex/contrib/nicematrix/nicematrix-french.pdf b/macros/latex/contrib/nicematrix/nicematrix-french.pdf index 8e78d18d23..ffb5945c23 100644 Binary files a/macros/latex/contrib/nicematrix/nicematrix-french.pdf and b/macros/latex/contrib/nicematrix/nicematrix-french.pdf differ diff --git a/macros/latex/contrib/nicematrix/nicematrix-french.tex b/macros/latex/contrib/nicematrix/nicematrix-french.tex index 072769dfa6..cbb86d0723 100644 --- a/macros/latex/contrib/nicematrix/nicematrix-french.tex +++ b/macros/latex/contrib/nicematrix/nicematrix-french.tex @@ -509,7 +509,8 @@ option à mettre entre chevrons est proposée par |\Block| pour spécifier du co LaTeX qui sera inséré \emph{avant} le début du mode mathématique.\footnote{Cet argument entre chevrons peut aussi être utilisé pour insérer une commande de fonte comme |\bfseries|, ce qui peut être utile dans le cas où la commande |\\| apparaît dans le - contenu du bloc.} + contenu du bloc. On peut aussi y mettre la commmande |\rotate| fournie par + \pkg{nicematrix} (cf. partie~\ref{rotate}, p.~\pageref{rotate}).} \medskip \begin{BVerbatim}[baseline=c,boxwidth=10.6cm] @@ -537,6 +538,10 @@ liste de couples \textsl{clé=valeur}. Les clés sont les suivantes : \item \index{fill (clé de \texttt{\textbackslash Block})} la clé \Definition{fill} prend en argument une couleur et remplit le bloc avec cette couleur ; +\item \index{opacity! (clé de la commande \texttt{\textbackslash Block})} +\colorbox{yellow!50}{\bfseries Nouveau 6.22}\enskip +la clé \Definition{opacity} fixe l'opacité de la couleur de remplissage donnée +par |fill| ; \item \index{draw (clé de \texttt{\textbackslash Block})} la clé \Definition{draw} prend en argument une couleur et trace le cadre avec cette couleur (la valeur par défaut de cette clé est la couleur courante @@ -549,7 +554,8 @@ contenu et trace également le cadre avec cette couleur ; les clés \Definition{hlines}, \Definition{vlines} et \Definition{hvlines} tracent les filets correspondants dans le bloc\footnote{Néanmoins, les filets ne sont pas tracés dans les sous-blocs du bloc, conformément à l'esprit de - \pkg{nicematrix}: les filets ne sont pas tracés dans les blocs (cf. + \pkg{nicematrix}: les filets ne sont pas tracés dans les blocs, sauf s'ils + possèdent la clé |transparent| (cf. section~\ref{rules} p.~\pageref{rules}).} ; \item \index{line-width (clé de \texttt{\textbackslash Block})} la clé \Definition{line-width} fixe la largeur utilisée pour tracer les @@ -642,7 +648,7 @@ Les blocs mono-colonne ont un comportement spécial. largeur de la colonne courante. Dans les colonnes à largeur fixée (|p{...}|, |b{...}|, |m{...}|, |w{...}{...}|, -|W{...}{...}|, |V| et |X|), le contenu du bloc est mis en forme comme un +|W{...}{...}|, |V| et~|X|), le contenu du bloc est mis en forme comme un paragraphe de cette largeur. \item La spécification d'alignement horizontal donnée par le type de @@ -867,23 +873,23 @@ Concernant le positionnement vertical, la commande |\Block| admet les clés \begin{itemize} \item \index{v-center (clé de \texttt{\textbackslash Block)})} -Avec la clé |v-center|, le contenu du bloc est centré verticalement. +Avec la clé \Definition{v-center}, le contenu du bloc est centré verticalement. -\item Avec la clé |t|, la ligne de base du contenu du bloc est alignée avec la +\item Avec la clé \Definition{t}, la ligne de base du contenu du bloc est alignée avec la ligne de base de la première rangée concernée par le bloc. -\item Avec la clé |b|, la ligne de base de la dernière rangée du contenu du bloc +\item Avec la clé \Definition{b}, la ligne de base de la dernière rangée du contenu du bloc (rappelons que le contenu du bloc peut comporter plusieurs rangées séparées par |\\|) est alignée avec la ligne de base de la dernière des rangées du tableau impliquées dans le bloc. -\item Avec la clé |T|, le contenu du bloc est calé vers le haut. +\item Avec la clé \Definition{T}, le contenu du bloc est calé vers le haut. \colorbox{yellow!50}{Modification 6.18}\enskip Il n'y a plus de marge verticale. Néanmoins, le contenu du bloc est (toujours) composé en interne dans une |{minipage}|, un |{tabular}| ou un |{array}|, ce qui fait qu'il y souvent déjà une marge. -\item Avec la clé |B|, le contenu du bloc est calé vers le bas. +\item Avec la clé \Definition{B}, le contenu du bloc est calé vers le bas. \end{itemize} Quand aucune clé n'est donnée, c'est la clé |v-center| qui s'applique (sauf pour @@ -1457,20 +1463,20 @@ la forme \textsl{clé=valeur}. Il y a d'abord trois clés pour spécifier les ou qui permettront d'utiliser ce nouveau type de filet. \begin{itemize} -\item la clé |command| indique le nom (sans la contre-oblique) d'une commande +\item la clé \Definition{command} indique le nom (sans la contre-oblique) d'une commande qui sera créée par \pkg{nicematrix} et que l'utilisateur pourra utiliser pour tracer des filets horizontaux (de manière similaire à |\hline|) ; -\item la clé |ccommand| indique le nom (sans la contre-oblique) d'une commande -qui sera créée par \pkg{nicematrix} et que l'utilisateur pourra utiliser pour -tracer des filets horizontaux partiels (de manière similaire à |\cline|, d'où le -nom |ccommand|) : l'argument de cette commande est une liste d'intervalles de -colonnes spécifiés par la syntaxe $i$ ou $i$-$j$ ;\footnote{Il est recommandé de - n'utiliser ces commandes qu'une seule fois par ligne car chaque utilisation - crée un espace vertical entre les rangées correspondant à la largeur totale du - trait qui sera tracé.} - -\item la clé |letter| prend en argument une lettre\footnote{Les lettres +\item la clé \Definition{ccommand} indique le nom (sans la contre-oblique) d'une +commande qui sera créée par \pkg{nicematrix} et que l'utilisateur pourra +utiliser pour tracer des filets horizontaux partiels (de manière similaire à +|\cline|, d'où le nom |ccommand|) : l'argument de cette commande est une liste +d'intervalles de colonnes spécifiés par la syntaxe $i$ ou $i$-$j$ ;\footnote{Il + est recommandé de n'utiliser ces commandes qu'une seule fois par ligne car + chaque utilisation crée un espace vertical entre les rangées correspondant à + la largeur totale du trait qui sera tracé.} + +\item la clé \Definition{letter} prend en argument une lettre\footnote{Les lettres suivantes ne sont pas autorisées : \verb+lcrpmbVX|()[]!@<>+} qui pourra être utilisée par l'utilisateur dans le préambule d'un environnement à préambule (comme |{NiceTabular}|) pour spécifier un filet vertical. @@ -1494,14 +1500,14 @@ entre les filets (comme on peut le faire avec \pkg{colortbl} par exemple). \index{multiplicity (clé de «custom-line»)} \index{color!clé de «custom-line»} \index{sep-color (clé de «custom-line»)} -\item la clé |multiplicity| indique le nombre de traits successifs qui seront -tracés : par exemple, une valeur de~$2$ va créer des filets doubles comme créés -en standard par |\hline\hline| ou bien \verb+||+ dans le préambule d'un -environnement ; +\item la clé \Definition{multiplicity} indique le nombre de traits successifs +qui seront tracés : par exemple, une valeur de~$2$ va créer des filets doubles +comme créés en standard par |\hline\hline| ou bien \verb+||+ dans le préambule +d'un environnement ; -\item la clé |color| fixe la couleur des filets ; +\item la clé \Definition{color} fixe la couleur des filets ; -\item la clé |sep-color| fixe la couleur entre deux filets consécutifs (n'a +\item la clé \Definition{sep-color} fixe la couleur entre deux filets consécutifs (n'a d'intérêt que dans le cas où la clé |multiplicity| est utilisée). \end{itemize} @@ -1544,7 +1550,7 @@ Produit C & 5 & 4 & 1 \\ \index{tikzz@tikz!clé de «custom-line»} \index{total-width (clé de «custom-line»)} -On peut utiliser la clé |tikz| (si TikZ est chargé, \pkg{nicematrix} ne +On peut utiliser la clé \Definition{tikz} (si TikZ est chargé, \pkg{nicematrix} ne chargeant par défaut que \textsc{pgf}). Dans ce cas-là, le filet est tracé directement avec TikZ en utilisant comme paramètres la valeur de la clé |tikz| qui doit être une liste de couples \textsl{clé=valeur} applicables à un chemin @@ -2288,7 +2294,10 @@ préambule) ; \item \colorbox{yellow!50}{\textbf{Nouveau 6.21}}\enskip |\rowcolors| qui prend pour arguments deux couleurs et colorie la suite du tableau avec ces deux couleurs ; \item \colorbox{yellow!50}{\textbf{Nouveau 6.21}}\enskip |\rowlistcolors| qui prend pour argument une liste de couleurs et colorie -la suite du tableau avec ces couleurs. +la suite du tableau avec ces couleurs.\footnote{Quand la commande + |\rowlistcolors| (ou la commande |\rowcolors|) est utilisée dans une case de + la colonne~$j$, le coloriage ne s'applique que les colonnes au-delà de~$j$ + (à dessein).} \end{itemize} \medskip @@ -2340,24 +2349,24 @@ Elle prend aussi en premier argument optionnel, entre crochets, une liste de couples \textsl{clé=valeur}. \begin{itemize} \item \index{nb-rows (clé de \texttt{\textbackslash RowStyle})} -La clé |nb-rows| indique le nombre de rangées consécutives concernées par +La clé \Definition{nb-rows} indique le nombre de rangées consécutives concernées par les spécifications de cette commande (une valeur |*| signifie que toutes les rangées restantes seront concernées). -\item Les clés |cell-space-top-limit|, |cell-space-bottom-limit| -et |cell-space-limits| sont disponibles avec le même effet que les clés globales -de même nom (cf. p.~\pageref{cell-space}). +\item Les clés \Definition{cell-space-top-limit}, \Definition{cell-space-bottom-limit} +et \Definition{cell-space-limits} sont disponibles avec le même effet que les +clés globales de même nom (cf. p.~\pageref{cell-space}). \item \index{rowcolor (clé de \texttt{\textbackslash RowStyle})} \index{color!clé de \texttt{\textbackslash RowStyle}} -La clé |rowcolor| fixe la couleur de fond et la clé |color| fixe la -couleur du texte.\footnote{La clé |color| utilise la commande |\color| mais +La clé \Definition{rowcolor} fixe la couleur de fond et la clé \Definition{color} +fixe la couleur du texte.\footnote{La clé |color| utilise la commande |\color| mais insère aussi une instruction |\leavevmode| devant. Cela évite un espace vertical parasite dans les cases qui correspondent à des colonnes de type |p|, |b|, |m|, |X| et |V| (qui débutent en mode vertical de LateX).} \item \index{bold (clé de \texttt{\textbackslash RowStyle})} -La clé |bold| impose des caractères gras aux éléments de la rangée, qu'ils +La clé \Definition{bold} impose des caractères gras aux éléments de la rangée, qu'ils soient en mode texte ou bien en mode mathématique. \end{itemize} @@ -3211,13 +3220,20 @@ $\begin{pmatrix} \subsection{Les labels des lignes en pointillés} -Les commandes |\Ldots|, |\Cdots|, |\Vdots|, |\Ddots|, |\Iddots| et |\Hdotsfor| -(ainsi que la commande |\line| dans le |\CodeAfter| décrite +Les commandes |\Ldots|, |\Cdots|, |\Vdots|, |\Ddots|, |\Iddots|, |\Hdotsfor| et +|\Vdotsfor| (ainsi que la commande |\line| dans le |\CodeAfter| décrite p.~\pageref{line-in-code-after}) peuvent en fait prendre deux arguments optionnels spécifiés par les caractères |_| et |^| pour des labels situés au-dessous et au-dessus de la ligne. Les arguments sont composés en mode mathématique avec |\scriptstyle|. +\smallskip +\colorbox{yellow!50}{\textbf{Nouveau 6.22}}\enskip La version 6.22 introduit un +nouveau label spécifié par le caractère~«|:|» pour un label situé sur la ligne +elle-même. Ce label est en fait composé sur un fond blanc qui est superposé sur +la ligne en pointillés (voir un exemple p.~\pageref{ex:colon}). + +\bigskip \begin{BVerbatim}[baseline=c,boxwidth=10cm] $\begin{bNiceMatrix} 1 & \hspace*{1cm} & 0 \\[8mm] @@ -3231,8 +3247,9 @@ $\begin{bNiceMatrix} 0 & & 1 \end{bNiceMatrix}$ -\medskip -\colorbox{yellow!50}{\textbf{Nouveau 6.20}}\enskip + + +\bigskip Avec la clé |xdots/horizontal-labels|, les labels restent horizontaux.\par\nobreak \smallskip @@ -3313,7 +3330,11 @@ Les clés \Definition{xdots/shorten-start} et \Definition{xdots/shorten-end} indiquent la marge qui est laissée aux deux extrémités de la ligne. La clé \Definition{xdots/shorten} fixe les deux clés simultanément. La valeur initiale de $0.3$~em (il est conseillé d'utiliser une unité de mesure dépendante de la -fonte courante). +fonte courante).\footnote{En fait, quand on utilise ces clés au niveau de + |\NiceMatrixOptions| ou bien d'un environnement, seules les extrémités des + lignes qui s'arrêtent au niveau d'un contenu non vide de case sont concernées. + Quand on les utilise sur une commande |\Cdots| (ou |\Vdots|, etc.), toutes les + extrémités sont concernées.} \medskip L'option \Definition{xdots/inter} indique la distance entre deux points. La @@ -3507,8 +3528,9 @@ peut spécifier les instructions du |code-after| à la fin de l'environnement, après le mot-clé |\CodeAfter|. Bien que ce soit un mot-clé, |\CodeAfter| accepte quand même un argument optionnel (entre crochets).\footnote{Les clés autorisées dans cet argument optionnel sont les suivantes : |delimiters/color|, |rules| - et ses sous-clés ainsi que |sub-matrix| (en lien avec la commande - |\SubMatrix|) et ses sous-clés.} + et ses sous-clés, |sub-matrix| (en lien avec la commande + |\SubMatrix|) et ses sous-clés et |xdots| (pour la commande |\line|) et ses + sous-clés.} \medskip @@ -4141,7 +4163,7 @@ les notes de pied de page). (sans aucun espace après), l'appel de note est composé en débordement vers la droite (cela peut permettre de mieux conserver l'alignement des contenus d'une colonne). Depuis la version 6.20a, ce comportement n'a lieu que le mode -l'alignement de la cellule est |c| ou |r| (alignement horizontal centré ou en +l'alignement de la case est |c| ou |r| (alignement horizontal centré ou en butée à droite). \item Si la clé |notes/para| est utilisée, les notes sont composées à la fin du @@ -4483,7 +4505,6 @@ les environnements et commandes de \pkg{nicematrix} (comme Nom & Prénom & Profession \\ Arvy & Jacques & Dentiste \\ Jalon & Amandine & Dentiste \\ - Sept & Huit & Neuf \end{NiceTabular} @@ -4654,9 +4675,10 @@ $A = \begin{pNiceMatrix}[last-row,last-col=4] \bigskip \colorbox{yellow!50}{\textbf{Nouveau 6.21}}\enskip La commande |\rotate| accepte -une option |c| entre crochets : |\rotate[c]|. Quand cette clé est utilisée, le -contenu, après rotation, est composé dans une |\vcenter|, ce qui fait que, le -plus souvent, on obtiendra un centrage vertical. +une option |c| entre crochets : |\rotate[c]| (les espaces sont supprimés après +|\rotate[c]|). Quand cette clé est utilisée, le contenu, après rotation, est +composé dans une |\vcenter|, ce qui fait que, le plus souvent, on obtiendra un +centrage vertical. \medskip @@ -4670,7 +4692,7 @@ seront peut-être pas ceux attendus. \label{small} \index{small (clé pour un environnement)} -\index{smallmatrix@\texttt{\{smallmatrix\}} (envionnement de \pkg{amsmath})} +\index{smallmatrix@\texttt{\{smallmatrix\}} (environnement de \pkg{amsmath})} Avec l'option |small|, les environnements de l'extension \pkg{nicematrix} sont @@ -5038,10 +5060,10 @@ a & a & a \end{pNiceMatrix}\] \bigskip -\colorbox{yellow!50}{\textbf{Nouveau 6.17}}\enskip Puisque ces nœuds sont des -nœuds PGF, on ne sera pas étonné d'appendre qu'ils sont tracés en utilisant un -style PGF spécifique. Ce style est nommé |nicematrix/cell-node| et sa définition -dans le fichier source |nicematrix.sty| est la suivante : +Puisque ces nœuds sont des nœuds PGF, on ne sera pas étonné d'appendre qu'ils +sont tracés en utilisant un style PGF spécifique. Ce style est nommé +|nicematrix/cell-node| et sa définition dans le fichier source |nicematrix.sty| +est la suivante : \begin{Verbatim} \pgfset @@ -5065,14 +5087,12 @@ p.~\pageref{triangular}. \subsubsection{La clé pgf-node-code} \index{pgf-node-code} - -\colorbox{yellow!50}{\textbf{Nouveau 6.17}}\enskip \textbf{Pour les utilisateurs -expérimentés}, \pkg{nicematrix} fournit la clé |pgf-node-code| qui correspond à -du code PGF qui sera exécuté à la création, par PGF, des nœuds correspondants aux -cases du tableau. Plus précisément, la valeur fournie à la clé |pgf-node-code| -sera passée en cinquième argument de la commande |\pgfnode|. Cette valeur doit -contenir au moins une instruction comme |\pgfusepath|, |\pgfusepathqstroke|, -|\pgfusepathqfill|, etc. +\textbf{Pour les utilisateurs expérimentés}, \pkg{nicematrix} fournit la clé +|pgf-node-code| qui correspond à du code PGF qui sera exécuté à la création, par +PGF, des nœuds correspondants aux cases du tableau. Plus précisément, la valeur +fournie à la clé |pgf-node-code| sera passée en cinquième argument de la +commande |\pgfnode|. Cette valeur doit contenir au moins une instruction comme +|\pgfusepath|, |\pgfusepathqstroke|, |\pgfusepathqfill|, etc. \subsubsection{Les colonnes V de varwidth} @@ -5831,6 +5851,8 @@ avec |\RequirePackage|: \RequirePackage{pgf} \documentclass{sn-jnl} \end{Verbatim} +Mais il semble que ce ne soit plus nécessaire avec les versions récentes de +\cls{sn-jnl}. \medskip L'extension \pkg{nicematrix} n'est pas parfaitement compatible avec les classes @@ -5847,7 +5869,7 @@ cf.~p.~\pageref{custom-line}. \medskip Les colonnes |d| de l'extension \pkg{dcolumn} ne sont pas prises en compte (mais -on utiliser la colonne |S| de \pkg{siunitx}). +on peut utiliser les colonnes |S| de \pkg{siunitx}). \section{Exemples} @@ -5870,7 +5892,7 @@ Pour l'exemple suivant, la bibliothèque \pkg{patterns} de TikZ doit aussi être \begin{Verbatim} \ttfamily \small -\begin{NiceTabular}{X[m]X[m]X[m]}[hvlines,cell-space-limits=3pt] +\begin{NiceTabular}{X[m]X[m]X[m]}[hvlines,cell-space-limits=3pt,rounded-corners] \Block[~emphase#tikz={pattern=grid,pattern color=lightgray}@]{} {pattern = grid,\\ pattern color = lightgray} & \Block[~emphase#tikz={pattern = north west lines,pattern color=blue}@]{} @@ -5886,7 +5908,7 @@ Pour l'exemple suivant, la bibliothèque \pkg{patterns} de TikZ doit aussi être \begin{center} \ttfamily \small -\begin{NiceTabular}{X[m]X[m]X[m]}[hvlines,cell-space-limits=3pt] +\begin{NiceTabular}{X[m]X[m]X[m]}[hvlines,cell-space-limits=3pt,rounded-corners] \Block[tikz={pattern=grid,pattern color=lightgray}]{} {pattern = grid,\\ pattern color = lightgray} & \Block[tikz={pattern = north west lines,pattern color=blue}]{} @@ -5953,7 +5975,6 @@ tous les filets sauf ceux sur les bords (qui sont, bien entendu, ajoutés par { colframe = blue!50!black , colback = white , - colupper = red!50!black , fonttitle = \bfseries , nobeforeafter , center title @@ -5994,7 +6015,6 @@ tous les filets sauf ceux sur les bords (qui sont, bien entendu, ajoutés par { colframe = blue!50!black , colback = white , - colupper = red!50!black , fonttitle = \bfseries , nobeforeafter , center title @@ -6265,36 +6285,66 @@ On peut même tracer des lignes continues.\footnote{Dans ce document, la sur la forme des pointes de flèches.} \begin{Verbatim} -\tikzset{H/.style = {solid,<->,shorten > = -1mm, shorten < = -1mm}} -\tikzset{V/.style = {solid,<->}} -\NiceMatrixOptions{xdots/horizontal-labels} +\NiceMatrixOptions{xdots={horizontal-labels,line-style = <->}} $\begin{pNiceArray}{ccc|cc}[first-row,last-col,margin] -\Hdotsfor[line-style=H]{3}^{3} & \Hdotsfor[line-style=H]{2}^{2} \\ -2 & 1 & 1 & 1 & 1 & \hspace*{4mm}\Vdotsfor[line-style=V]{3}^{3}\\ +\Hdotsfor{3}^{3} & \Hdotsfor{2}^{2} \\ +2 & 1 & 1 & 1 & 1 & \Vdotsfor{3}^{3}\\ 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 & 1 \\ \Hline -1 & 1 & 1 & 1 & 1 & \Vdotsfor[line-style=V]{2}^{2}\\ +1 & 1 & 1 & 1 & 1 & \Vdotsfor{2}^{2}\\ 1 & 1 & 1 & 1 & 1 \\ \end{pNiceArray}$ \end{Verbatim} \begin{center} -\tikzset{H/.style = {solid,<->,shorten > = -1mm, shorten < = -1mm}} -\tikzset{V/.style = {solid,<->}} -\NiceMatrixOptions{xdots/horizontal-labels} +\NiceMatrixOptions{xdots={horizontal-labels,line-style = <->}} $\begin{pNiceArray}{ccc|cc}[first-row,last-col,margin] -\Hdotsfor[line-style=H]{3}^{3} & \Hdotsfor[line-style=H]{2}^{2} \\ -2 & 1 & 1 & 1 & 1 & \hspace*{4mm}\Vdotsfor[line-style=V]{3}^{3}\\ +\Hdotsfor{3}^{3} & \Hdotsfor{2}^{2} \\ +2 & 1 & 1 & 1 & 1 & \Vdotsfor{3}^{3}\\ 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 & 1 \\ \Hline -1 & 1 & 1 & 1 & 1 & \Vdotsfor[line-style=V]{2}^{2}\\ +1 & 1 & 1 & 1 & 1 & \Vdotsfor{2}^{2}\\ 1 & 1 & 1 & 1 & 1 \\ \end{pNiceArray}$ \end{center} +\interitem +\label{ex:colon} +Si on veut mettre les labels sur les flèches, il convient d'utiliser le +caractère spécial~«|:|» : + +\begin{Verbatim} +\NiceMatrixOptions{xdots={horizontal-labels,line-style = <->}} +$\begin{pNiceArray}{ccc|cc}[first-row,last-col,margin] +\Hdotsfor{3}:{3} & \Hdotsfor{2}:{2} \\ +2 & 1 & 1 & 1 & 1 & \Vdotsfor{3}:{3}\\ +1 & 1 & 1 & 1 & 1 \\ +1 & 1 & 1 & 1 & 1 \\ +\Hline +1 & 1 & 1 & 1 & 1 & \Vdotsfor{2}:{2}\\ +1 & 1 & 1 & 1 & 1 \\ +\end{pNiceArray}$ +\end{Verbatim} + + +\begin{center} +\NiceMatrixOptions{xdots={horizontal-labels,line-style = <->}} +$\begin{pNiceArray}{ccc|cc}[first-row,last-col,margin] +\Hdotsfor{3}:{3} & \Hdotsfor{2}:{2} \\ +2 & 1 & 1 & 1 & 1 & \Vdotsfor{3}:{3}\\ +1 & 1 & 1 & 1 & 1 \\ +1 & 1 & 1 & 1 & 1 \\ +\Hline +1 & 1 & 1 & 1 & 1 & \Vdotsfor{2}:{2}\\ +1 & 1 & 1 & 1 & 1 \\ +\end{pNiceArray}$ +\end{center} + + + \subsection{Lignes en tiretés} \label{tiretes} @@ -6678,7 +6728,7 @@ composantes de la matrice.\footnote{Pour la commande |\cline|, voir la remarque \vspace{1cm} Il est possible de colorier une rangée avec |\rowcolor| dans le |\CodeBefore| (ou avec |\rowcolor| dans une case de la rangée si on utilise la clé -|color-inside| − même si \pkg{colortbl} n'est pas chargé). +|color-inside|). \index{color-inside|textit} diff --git a/macros/latex/contrib/nicematrix/nicematrix.ins b/macros/latex/contrib/nicematrix/nicematrix.ins index 838315cbb2..171d3f7449 100644 --- a/macros/latex/contrib/nicematrix/nicematrix.ins +++ b/macros/latex/contrib/nicematrix/nicematrix.ins @@ -38,7 +38,7 @@ LaTeX version 2005/12/01 or later. \Msg{*} \Msg{* \space\space nicematrix.sty} \Msg{*} -\Msg{* To produce the documentation run the file nicematrix.dtx} +\Msg{* To produce the documentation run the file nicematrix.tex} \Msg{* through XeLaTeX.} \Msg{*} \Msg{* Happy TeXing!} diff --git a/macros/latex/contrib/nicematrix/nicematrix.pdf b/macros/latex/contrib/nicematrix/nicematrix.pdf index d25ed70564..9bfc22dfcd 100644 Binary files a/macros/latex/contrib/nicematrix/nicematrix.pdf and b/macros/latex/contrib/nicematrix/nicematrix.pdf differ diff --git a/macros/latex/contrib/nicematrix/nicematrix.tex b/macros/latex/contrib/nicematrix/nicematrix.tex index 91758773dd..77c4e8d9f9 100644 --- a/macros/latex/contrib/nicematrix/nicematrix.tex +++ b/macros/latex/contrib/nicematrix/nicematrix.tex @@ -435,8 +435,8 @@ In the environments of \pkg{nicematrix}, it's possible to use the command |\Block| in order to place an element in the center of a rectangle of merged cells of the array.\footnote{The spaces after a command |\Block| are deleted.} -The command |\Block| must be used in the upper leftmost cell of the array with -two arguments. +The command |\Block| must be used in the upper leftmost cell of the cells of the +block with two mandatory arguments. \begin{itemize} \item The first argument is the size of the block with the syntax @@ -483,7 +483,9 @@ That's why the command |\Block| provides an option between angle brackets to specify some TeX code which will be inserted before the beginning of the math mode.\footnote{This argument between angular brackets may also be used to insert a command of font such as |\bfseries| when the command |\\| is used in -the content of the block.} +the content of the block. It's also possible to put in that optional argument +the command |\rotate| provided by \pkg{nicematrix} (cf. part~\ref{rotate}, +p.~\pageref{rotate}).} \medskip \begin{BVerbatim}[baseline=c,boxwidth=10.6cm] @@ -515,6 +517,10 @@ follows: \item \index{fill (key of \texttt{\textbackslash Block})} the key \Definition{fill} takes in as value a color and fills the block with that color; +\item \index{opacity (key of \texttt{\textbackslash Block})} +\colorbox{yellow!50}{\bfseries New 6.22}\enskip the key +\Definition{opacity} sets the opacity of +the filling color specified by |fill|; \item \index{draw (key of \texttt{\textbackslash Block})} the key \Definition{draw} takes in as value a color and strokes the frame of the block with that color (the default value of that key is the @@ -529,7 +535,8 @@ color; the keys \Definition{hlines}, \Definition{vlines} and \Definition{hvlines} draw all the corresponding rules in the block;\footnote{However, the rules are not drawn in the sub-blocks of the -block, as always with \pkg{nicematrix}: the rules are not drawn in the blocks +block, as always with \pkg{nicematrix}: the rules are not drawn in the blocks, +except when they have the key |transparent| (cf. section~\ref{rules} p.~\pageref{rules}).} \item \index{line-width (key of \texttt{\textbackslash Block})} the key \Definition{line-width} is the width of the rules (is relevant @@ -842,24 +849,24 @@ is used for the horizontal alignement.}, \begin{itemize} \item \index{v-center (key of \texttt{\textbackslash Block})} -With the key |v-center|, the content of the block is vertically centered. -\item With the key |t|, the baseline of the content of the block is aligned -With the basline of the first row concerned by the block). -\item with the key |b|, the baseline of the last row of the content of the +With the key \Definition{v-center}, the content of the block is vertically centered. +\item With the key \Definition{t}, the baseline of the content of the block is aligned +with the baseline of the first row concerned by the block. +\item with the key \Definition{b}, the baseline of the last row of the content of the block (we recall that the content of a block may contains several lines separated by |\\|) is aligned with the baseline of the last of the rows of the array involved in the block. -\item With the key |T|, the content of the block is set upwards. +\item With the key \Definition{T}, the content of the block is set upwards. \colorbox{yellow!50}{\textbf{Modification 6.18}}\enskip No vertical margin is added. However, the contents of the block is (always) composed by \pkg{nicematrix} in a |{minipage}|, a |{tabular}| or an |{array}| and, hence, there will still remain a margin (in most cases). -\item With the key |B|, the content of the block is set downwards. +\item With the key \Definition{B}, the content of the block is set downwards. \end{itemize} -When no key is given, the key |v-center| applies (excepted in the mono-row blocks). +When no key is given, the key |v-center| applies (except in the mono-row blocks). @@ -967,7 +974,7 @@ text & text \\ \index{Lines in the tabulars|see{Rules}} The usual techniques for the rules may be used in the environments of -\pkg{nicematrix} (excepted |\vline|). However, there is some small differences +\pkg{nicematrix} (except |\vline|). However, there is some small differences with the classical environments. \bigskip @@ -1826,7 +1833,7 @@ h & i & j \\ \bigskip \item The command \Definition{\textbackslash arraycolor} takes in as mandatory -argument a color and color the whole tabular with that color (excepted the +argument a color and color the whole tabular with that color (except the potential exterior rows and columns: cf.~p.~\pageref{exterior}). It's only a particular case of |\rectanglecolor|. @@ -2227,7 +2234,10 @@ preamble of the array); \item \colorbox{yellow!50}{\textbf{New 6.21}}\enskip |\rowcolors| which takes in as arguments two colors and color the rest of the tabular with those colors; \item \colorbox{yellow!50}{\textbf{New 6.21}}\enskip |\rowlistcolors| which takes in as argument a color and color the rest of -the tabular with the colors of that list of colors. +the tabular with the colors of that list of colors.\footnote{When the command + |\rowlistcolors| (or the command |\rowcolors| is used in a cell of the + column~$j$ of the array, the command applies only on the columns above~$j$ (by +design).} \end{itemize} \smallskip @@ -2278,23 +2288,23 @@ will be applied to each cell on the rest of the current row. That command also takes in as optional argument (between square brackets) a list of \textsl{key=value} pairs. \begin{itemize} -\item \index{nb-rows (key of \texttt{\textbackslash RowStyle})} The key |nb-rows| sets +\item \index{nb-rows (key of \texttt{\textbackslash RowStyle})} The key \Definition{nb-rows} sets the number of rows to which the specifications of the current command will apply (with the special value |*|, it will apply to all the following rows). -\item The keys |cell-space-top-limit|, |cell-space-bottom-limit| and -|cell-space-limits| are available with the same meaning that the corresponding -global keys (cf. p.~\pageref{cell-space}). +\item The keys \Definition{cell-space-top-limit}, \Definition{cell-space-bottom-limit} and +\Definition{cell-space-limits} are available with the same meaning that the +corresponding global keys (cf. p.~\pageref{cell-space}). \item \index{rowcolor (key of \texttt{\textbackslash RowStyle})} \index{color!key of \texttt{\textbackslash RowStyle}} -The key |rowcolor| sets -the color of the background and the key |color| sets the -color of the text.\footnote{The key |color| uses the command +The key \Definition{rowcolor} sets the color of the background and the key +\Definition{color} sets the color of the text.\footnote{The key |color| uses the command |\color| but inserts also an instruction |\leavevmode| before. This instruction prevents a extra vertical space in the cells which belong to columns of type |p|, |b|, |m|, |X| and |V| (which start in vertical mode of LaTeX).} -\item \index{bold (key of \texttt{\textbackslash RowStyle})} The key |bold| -enforces bold characters for the cells of the row, both in math and text mode. +\item \index{bold (key of \texttt{\textbackslash RowStyle})} The key +\Definition{bold} enforces bold characters for the cells of the row, both in +math and text mode. \end{itemize} \medskip @@ -2350,7 +2360,7 @@ Rio & Tokyo & Oslo \bigskip \index{columns-width} In the environments of \pkg{nicematrix}, it's also possible to fix the \emph{minimal} -width of all the columns (excepted the potential exterior columns: cf. p.~\pageref{exterior}) directly +width of all the columns (except the potential exterior columns: cf. p.~\pageref{exterior}) directly with the key |columns-width|. \medskip @@ -2745,7 +2755,7 @@ customized rules created by the key |custom-line| (cf.~p.~\pageref{custom-line}). \item A specification of color present in |code-for-first-row| also applies to -a dotted line drawn in that exterior ``first row'' (excepted if a value has +a dotted line drawn in that exterior ``first row'' (except if a value has been given to |xdots/color|). Idem for the other exterior rows and columns. \item Logically, the potential option |columns-width| (described @@ -3135,12 +3145,18 @@ $\begin{pmatrix} \subsection{The labels of the dotted lines} -The commands |\Ldots|, |\Cdots|, |\Vdots|, |\Ddots|, |\Iddots| and |\Hdotsfor| -(and the command |\line| in the |\CodeAfter| which is described -p.~\pageref{line-in-code-after}) accept two optional arguments specified -by the tokens |_| and |^| for labels positionned below and above the line. The +The commands |\Ldots|, |\Cdots|, |\Vdots|, |\Ddots|, |\Iddots|, |\Hdotsfor| and +|\Vdotsfor| (and the command |\line| in the |\CodeAfter| which is described +p.~\pageref{line-in-code-after}) accept two optional arguments specified by the +tokens |_| and |^| for labels positionned below and above the line. The arguments are composed in math mode with |\scriptstyle|. +\colorbox{yellow!50}{\textbf{New 6.22}}\enskip The version 6.22 introduces a new +label, specified by the token ``|:|'' for a label placed on the line. The label +is composed on a white background which is put on the line previously drawn (see +example on p.~\pageref{ex:colon}). + +\bigskip \begin{BVerbatim}[baseline=c,boxwidth=10cm] $\begin{bNiceMatrix} 1 & \hspace*{1cm} & 0 \\[8mm] @@ -3156,7 +3172,6 @@ $\begin{bNiceMatrix} \bigskip -\colorbox{yellow!50}{\textbf{New 6.20}}\enskip With the key |xdots/horizontal-labels|, the labels stay horizontal.\par\nobreak % \medskip @@ -3232,7 +3247,13 @@ is 0.53~pt. The keys \Definition{xdots/shorten-start} and \Definition{xdots/shorten-end} fix the margin at the extremities of the line. The key |xdots/shorten| fixes both parameters. The initial value is 0.3~em (it is recommanded to use a unit of -length dependent of the current font). +length dependent of the current font).\footnote{In fact, when + |xdots/shorten|, |xdots/shorten-start| and |xdots/shorten-end| are used in + |\NiceMatrixOptions| or at the level of an environment (such as + |{pNiceMatrix}|), those keys only apply to the extremeties of dotted lines + corresponding to a non-empty content of a cell. When they are used for a command + such as |\Cdots| (and, in that case, their names are |shorten|, + |shorten-start| and |shorten-end|), they apply to all the extremities.} \bigskip The option \Definition{xdots/inter} fixes the length between the dots. The @@ -3427,8 +3448,9 @@ possible to give the instructions of the |code-after| at the end of the environment, after the keyword |\CodeAfter|. Although |\CodeAfter| is a keyword, it takes in an optional argument (between square brackets).\footnote{Here are the keys accepted in that argument: -|delimiters/color|, |rules| and its sub-keys and |sub-matrix| (linked to the -command |\SubMatrix|) and its sub-keys.} +|delimiters/color|, |rules| and its sub-keys, |sub-matrix| (linked to the +command |\SubMatrix|) and its sub-keys and |xdots| (for the command |\line|) and +its sub-keys.} \medskip @@ -3927,7 +3949,7 @@ environment (typically the environment |{table}|). \smallskip With the key |caption|, the caption, when it is long, is wrapped at the width of -the tabular (excepted the potential exterior columns specified by |first-col| +the tabular (except the potential exterior columns specified by |first-col| and |last-col|: cf.~\ref{exterior}, p.~\pageref{exterior}), without the use of the package \pkg{threeparttable} or the package \pkg{floatrow}. @@ -3988,7 +4010,7 @@ perfectly compatible with \pkg{hyperref}. The package \pkg{nicematrix} also provides a command |\tabularnote| which gives the ability to specify notes that will be composed at the end of the array with -a width of line equal to the width of the array (excepted the potential exterior +a width of line equal to the width of the array (except the potential exterior columns specified by |first-col| and |last-col|: cf.~\ref{exterior}, p.~\pageref{exterior}). With no surprise, that command is available only in the environments |{NiceTabular}|, |{NiceTabular*}| and |{NiceTabularX}|. @@ -4557,18 +4579,16 @@ $A = \begin{pNiceMatrix}[last-row=4,last-col=4] \end{varwidth} \bigskip -\colorbox{yellow!50}{\textbf{New 6.21}}\enskip The command |\tabular| has a key -|c|: |\tabular[c]|. When that key is used, the content is composed in a -|\vcenter| and, therefore, in most cases, we will have a vertical alignment. - - +\colorbox{yellow!50}{\textbf{New 6.21}}\enskip The command |\rotate| has a key +|c|: |\rotate[c]| (spaces are deleted after |\rotate[c]|). When that key is +used, the content is composed in a |\vcenter| and, therefore, in most cases, we +will have a vertical alignment. \bigskip Caution: the command |\rotate| is designed to be used in a |\Block| or in columns of type |l|, |r|, |c|, |w| ou |W|; if it is used in other column types (such as |p{...}|), the result will maybe differ from what is expected. - \subsection{The option small} \label{small} @@ -4640,8 +4660,8 @@ value of these counters which are used internally by \pkg{nicematrix}. In the |\CodeBefore| (cf. p. \pageref{code-before}) and in the |\CodeAfter| (cf. p. \pageref{code-after}), |iRow| represents the total number of rows -(excepted the potential exterior rows) and |jCol| represents the total number -of columns (excepted the potential exterior columns). +(except the potential exterior rows) and |jCol| represents the total number +of columns (except the potential exterior columns). \medskip \begin{BVerbatim}[baseline=c,boxwidth=10.6cm] @@ -4911,7 +4931,7 @@ $\begin{pNiceMatrix} \end{pNiceMatrix}$ \medskip -The nodes of the last column (excepted the potential ``last column'' specified +The nodes of the last column (except the potential ``last column'' specified by |last-col|\footnote{For the exterior columns, cf. part~\ref{exterior}, p.~\pageref{exterior}.}) may also be indicated by $i$-|last|. Similarly, the nodes of the last row may be indicated by |last|-$j$. @@ -4936,10 +4956,9 @@ a & a & a \bigskip -\colorbox{yellow!50}{\textbf{New 6.17}}\enskip Since those nodes are PGF -nodes, one won't be surprised to learn that they are drawn by using a specific -PGF style. That style is called |nicematrix/cell-node| and its definition in -the source file |nicematrix.sty| is as follows: +Since those nodes are PGF nodes, one won't be surprised to learn that they are +drawn by using a specific PGF style. That style is called |nicematrix/cell-node| +and its definition in the source file |nicematrix.sty| is as follows: \begin{Verbatim} \pgfset @@ -4964,13 +4983,13 @@ For an example of utilisation, see part~\ref{triangular}, p.~\pageref{triangular \index{pgf-node-code} -\colorbox{yellow!50}{\textbf{New 6.17}}\enskip \textbf{For the experienced -users}, \pkg{nicematrix} provides the key |pgf-node-code| which corresponds to -some PGF node that will be executed at the creation, by PGF, of the nodes -corresponding to the cells of the array. More pricisely, the value given to -the key |pgf-node-code| will be passed in the fifth argument of the command -|\pgfnode|. That value should contain at least an instruction such as -|\pgfusepath|, |\pgfusepathqstroke|, |\pgfusepathqfill|, etc. +\textbf{For the experienced users}, \pkg{nicematrix} provides the key +|pgf-node-code| which corresponds to some PGF node that will be executed at the +creation, by PGF, of the nodes corresponding to the cells of the array. More +pricisely, the value given to the key |pgf-node-code| will be passed in the +fifth argument of the command |\pgfnode|. That value should contain at least an +instruction such as |\pgfusepath|, |\pgfusepathqstroke|, |\pgfusepathqfill|, +etc. \subsubsection{The columns V of varwidth} @@ -5717,6 +5736,9 @@ be loaded before the |\documentclass| with |\RequirePackage|: \documentclass{sn-jnl} \end{Verbatim} +However, it seems that this is no longer mandatory with the recent versions of +\cls{sn-jnl}. + \bigskip The package \pkg{nicematrix} is not fully compatible with the packages and classes of \LuaTeX-ja: the detection of the empty corners (cf. % p.~\pageref{corners}) @@ -5754,7 +5776,7 @@ For the following example, we also need the Tikz library |patterns|. \begin{Verbatim} \ttfamily \small -\begin{NiceTabular}{X[m]X[m]X[m]}[hvlines,cell-space-limits=3pt] +\begin{NiceTabular}{X[m]X[m]X[m]}[hvlines,cell-space-limits=3pt,rounded-corners] \Block[~emphase#tikz={pattern=grid,pattern color=lightgray}@]{} {pattern = grid,\\ pattern color = lightgray} & \Block[~emphase#tikz={pattern = north west lines,pattern color=blue}@]{} @@ -5770,7 +5792,7 @@ For the following example, we also need the Tikz library |patterns|. \begin{center} \ttfamily \small -\begin{NiceTabular}{X[m]X[m]X[m]}[hvlines,cell-space-limits=3pt] +\begin{NiceTabular}{X[m]X[m]X[m]}[hvlines,cell-space-limits=3pt,rounded-corners] \Block[tikz={pattern=grid,pattern color=lightgray}]{} {pattern = grid,\\ pattern color = lightgray} & \Block[tikz={pattern = north west lines,pattern color=blue}]{} @@ -5826,7 +5848,7 @@ seven & eight & nine Here is an example of use of |{NiceTabular}| within a command |\tcbox| of \pkg{tcolorbox}. We have used the key |hvlines-except-borders| in order all -the rules excepted on the borders (which are, of course, added by \pkg{tcolorbox}) +the rules except on the borders (which are, of course, added by \pkg{tcolorbox}) \medskip \begin{BVerbatim} @@ -5834,7 +5856,6 @@ the rules excepted on the borders (which are, of course, added by \pkg{tcolorbox { colframe = blue!50!black , colback = white , - colupper = red!50!black , fonttitle = \bfseries , nobeforeafter , center title @@ -5875,7 +5896,6 @@ the rules excepted on the borders (which are, of course, added by \pkg{tcolorbox { colframe = blue!50!black , colback = white , - colupper = red!50!black , fonttitle = \bfseries , nobeforeafter , center title @@ -5905,34 +5925,6 @@ the rules excepted on the borders (which are, of course, added by \pkg{tcolorbox \end{center} - -\vspace{1cm} -That example shows the use of \pkg{nicematrix} in conjunction with -\pkg{tcolorbox}. If one wishes a tabular with an exterior frame with rounded -corners, it's not necessary to use \pkg{tcolorbox}: it's possible to use the -command |\Block| with the key |rounded-corners|. - -\medskip -\begin{BVerbatim}[baseline=c,boxwidth=10.5cm] -\begin{NiceTabular}{rcl}[hvlines-except-borders] -\Block[draw,transparent,~emphase#rounded-corners@]{*-*}{} - One & Two & Three \\ - Men & Mice & Lions \\ - Upper & Middle & Lower -\end{NiceTabular} -\end{BVerbatim} -\begin{NiceTabular}{rcl}[hvlines-except-borders] -\Block[draw,transparent,rounded-corners]{*-*}{} - One & Two & Three \\ - Men & Mice & Lions \\ - Upper & Middle & Lower -\end{NiceTabular} - -\medskip -We have used the key |transparent| to have the rules specified by -|hvlines-except-borders| drawn in the blocks (by default, the rules are not -drawn in the blocks). - \subsection{Notes in the tabulars} \index{nota@\textbf{Notes in the tabulars}|textit} @@ -6168,36 +6160,65 @@ In fact, it's even possible to draw solid lines with the commands |\Cdots|, has been loaded, which impacts the shape of the arrow tips.} \begin{Verbatim} -\tikzset{H/.style = {solid,<->,shorten > = -1mm, shorten < = -1mm}} -\tikzset{V/.style = {solid,<->}} -\NiceMatrixOptions{xdots/horizontal-labels} +\NiceMatrixOptions{xdots={horizontal-labels,line-style = <->}} $\begin{pNiceArray}{ccc|cc}[first-row,last-col,margin] -\Hdotsfor[line-style=H]{3}^{3} & \Hdotsfor[line-style=H]{2}^{2} \\ -2 & 1 & 1 & 1 & 1 & \hspace*{4mm}\Vdotsfor[line-style=V]{3}^{3}\\ +\Hdotsfor{3}^{3} & \Hdotsfor{2}^{2} \\ +2 & 1 & 1 & 1 & 1 & \Vdotsfor{3}^{3}\\ 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 & 1 \\ \Hline -1 & 1 & 1 & 1 & 1 & \Vdotsfor[line-style=V]{2}^{2}\\ +1 & 1 & 1 & 1 & 1 & \Vdotsfor{2}^{2}\\ 1 & 1 & 1 & 1 & 1 \\ \end{pNiceArray}$ \end{Verbatim} \begin{center} -\tikzset{H/.style = {solid,<->,shorten > = -1mm, shorten < = -1mm}} -\tikzset{V/.style = {solid,<->}} -\NiceMatrixOptions{xdots/horizontal-labels} +\NiceMatrixOptions{xdots={horizontal-labels,line-style = <->}} $\begin{pNiceArray}{ccc|cc}[first-row,last-col,margin] -\Hdotsfor[line-style=H]{3}^{3} & \Hdotsfor[line-style=H]{2}^{2} \\ -2 & 1 & 1 & 1 & 1 & \hspace*{4mm}\Vdotsfor[line-style=V]{3}^{3}\\ +\Hdotsfor{3}^{3} & \Hdotsfor{2}^{2} \\ +2 & 1 & 1 & 1 & 1 & \Vdotsfor{3}^{3}\\ 1 & 1 & 1 & 1 & 1 \\ 1 & 1 & 1 & 1 & 1 \\ \Hline -1 & 1 & 1 & 1 & 1 & \Vdotsfor[line-style=V]{2}^{2}\\ +1 & 1 & 1 & 1 & 1 & \Vdotsfor{2}^{2}\\ 1 & 1 & 1 & 1 & 1 \\ \end{pNiceArray}$ \end{center} +\interitem +\label{ex:colon} +If you want the lable \emph{on the line}, you should use the special token~``|:|'': + +\begin{Verbatim} +\NiceMatrixOptions{xdots={horizontal-labels,line-style = <->}} +$\begin{pNiceArray}{ccc|cc}[first-row,last-col,margin] +\Hdotsfor{3}:{3} & \Hdotsfor{2}:{2} \\ +2 & 1 & 1 & 1 & 1 & \Vdotsfor{3}:{3}\\ +1 & 1 & 1 & 1 & 1 \\ +1 & 1 & 1 & 1 & 1 \\ +\Hline +1 & 1 & 1 & 1 & 1 & \Vdotsfor{2}:{2}\\ +1 & 1 & 1 & 1 & 1 \\ +\end{pNiceArray}$ +\end{Verbatim} + + +\begin{center} +\NiceMatrixOptions{xdots={horizontal-labels,line-style = <->}} +$\begin{pNiceArray}{ccc|cc}[first-row,last-col,margin] +\Hdotsfor{3}:{3} & \Hdotsfor{2}:{2} \\ +2 & 1 & 1 & 1 & 1 & \Vdotsfor{3}:{3}\\ +1 & 1 & 1 & 1 & 1 \\ +1 & 1 & 1 & 1 & 1 \\ +\Hline +1 & 1 & 1 & 1 & 1 & \Vdotsfor{2}:{2}\\ +1 & 1 & 1 & 1 & 1 \\ +\end{pNiceArray}$ +\end{center} + + + \subsection{Dashed rules} \label{dashed} @@ -6903,6 +6924,14 @@ The successive versions of the file |nicematrix.sty| provided by TeXLive are ava \nolinkurl{https:www.tug.org/svn/texlive/trunk/Master/texmf-dist/tex/latex/nicematrix/nicematrix.sty} } +\subsection*{Changes between version 6.21 and 6.22} + +Key |opacity| for the command |\Block|. + +It's now possible to put a label on a ``continuous dotted line'' with the +specifier ``|:|''. + + \subsection*{Changes between version 6.20a and 6.21} Key |c| for the command |\tabularnote|. diff --git a/macros/latex/contrib/panneauxroute/README.md b/macros/latex/contrib/panneauxroute/README.md new file mode 100644 index 0000000000..32d6f73e73 --- /dev/null +++ b/macros/latex/contrib/panneauxroute/README.md @@ -0,0 +1,10 @@ +PanneauxRoute is a package to display french road signs. +---------------------------------------------------------------------------------------------------- +PanneauxRoute est un package pour afficher des panneaux de signalisation routière (format vectoriel). +----------------------------------------------------------------------------------------------------- +Author.......: Cédric Pierquet +email........: cpierquet@outlook.fr +Licence......: Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txt +Sources......: https://www.geoinformations.developpement-durable.gouv.fr/panneaux-routiers-au-format-svg-et-png-par-a2688.html +.............: http://sig974.free.fr/?p=1520 +Licence img..: CC BY-SA 3.0 diff --git a/macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.pdf b/macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.pdf new file mode 100644 index 0000000000..9234ec3596 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.pdf differ diff --git a/macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.tex b/macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.tex new file mode 100644 index 0000000000..ae8de67450 --- /dev/null +++ b/macros/latex/contrib/panneauxroute/doc/PanneauxRoute-doc.tex @@ -0,0 +1,689 @@ +% !TeX TXS-program:compile = txs:///arara +% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} +% arara: pdflatex: {shell: yes, synctex: no, interaction: batchmode} if found('log', '(undefined references|Please rerun|Rerun to get)') + +\documentclass[french,11pt,a4paper]{article} +\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc} +\usepackage{tgpagella} +\usepackage[scale=0.975]{cabin} +\usepackage[scale=0.975]{inconsolata} +\usepackage{PanneauxRoute} +\usepackage{soul} +\usepackage{codehigh} +\usepackage{fontawesome5} +\usepackage{multicol} +\usepackage{tabularray} +\DefTblrTemplate{contfoot-text}{normal}{\footnotesize \sffamily Suite page suivante} +\SetTblrTemplate{contfoot-text}{normal} +\usepackage{fancyvrb} +\usepackage{fancyhdr} +\fancyhf{} +\renewcommand{\headrulewidth}{0pt} +\lfoot{\sffamily\small [PanneauxRoute]} +\cfoot{\sffamily\small - \thepage{} -} +\rfoot{\hyperlink{matoc}{\small\faArrowAltCircleUp[regular]}} +\usepackage{hologo} +\providecommand\tikzlogo{Ti\textit{k}Z} +\providecommand\TeXLive{\TeX{}Live\xspace} +\providecommand\PSTricks{\textsf{PSTricks}\xspace} +\let\pstricks\PSTricks +\let\TikZ\tikzlogo + +\usepackage{hyperref} +\urlstyle{same} +\hypersetup{pdfborder=0 0 0} +\usepackage[margin=1.5cm]{geometry} +\setlength{\parindent}{0pt} + +\def\TPversion{0.1.0} +\def\TPdate{14 août 2023} +\usepackage{tcolorbox} + + +\sethlcolor{lightgray!25} +\NewDocumentCommand\MontreCode{ m }{% + \hl{\vphantom{\texttt{pf}}\texttt{#1}}% +} + +\usepackage{babel} + +\NewDocumentCommand\PanneauTableau{ O{height=1cm} m }{% + $\vcenter{\hbox{\AffPanneau[#1]{#2}}}$% +} + +\begin{document} + +\pagestyle{fancy} + +\thispagestyle{empty} + +\begin{center} + \begin{minipage}{0.75\linewidth} + \begin{tcolorbox}[colframe=yellow,colback=yellow!15] + \begin{center} + \begin{tabular}{c} + {\Huge \texttt{PanneauxRoute}}\\ + \\ + {\LARGE Des panneaux de signalisation} \\ + {\LARGE routière, au format vectoriel .} \\ + \end{tabular} + + \medskip + + {\small \texttt{Version \TPversion{} -- \TPdate}} + \end{center} + \end{tcolorbox} +\end{minipage} +\end{center} + +\begin{center} + \begin{tabular}{c} + \texttt{Cédric Pierquet}\\ + {\ttfamily c pierquet -- at -- outlook . fr}\\ + \texttt{\url{https://github.com/cpierquet/PanneauxRoute}} +\end{tabular} +\end{center} + +\hrule + +\phantomsection + +\hypertarget{matoc}{} + +\tableofcontents + +\vspace*{5mm} + +\hrule + +\vspace*{5mm} + +\vfill + +\hfill +\prPassNivVap[height=4cm]~~\rotatebox{15}{\prInterdTournG[height=3cm]}~~\rotatebox{-25}{\prImpasse[height=3cm]} +\hfill~ + +\medskip + +\hfill +\prDebAutor[scale=0.25] +\hfill~ + +\vfill~ + +\pagebreak + +\section{Le package PanneauxRoute} + +\subsection{Idée} + +L'idée est de proposer des panneaux de signalisation routière pour des documents \TeX. + +\smallskip + +Les panneaux sont au format \MontreCode{pdf}, obtenu à l'aide de fichiers \MontreCode{svg}, donc au format vectoriel, avec comme sources : + +\medskip + +\begin{itemize} + \item \og Annexe de l’Arrêté interministériel du 24 novembre 1967 \fg{} ; \hfill\href{https://equipementsdelaroute.cerema.fr/version-consolidee-de-l-arrete-du-24-novembre-1967-a537.html}{[lien]} + \item Le travail de Bertrand Bouteilles, sur le site de geoinformations.\hfill\href{https://www.geoinformations.developpement-durable.gouv.fr/panneaux-routiers-au-format-svg-et-png-par-a2688.html}{[lien]} + \item les fichiers \MontreCode{svg} de base sont proposés sous licence CC BY-SA 3.0.\hfill\href{http://sig974.free.fr/?p=1520}{[lien]} +\end{itemize} + +\subsection{Historique} + +\verb|v0.1.0|~:~~~~Version initiale + +\subsection{Chargement} + +Le package se charge dans le préambule, via \MontreCode{\textbackslash usepackage\{PanneauxRoute\}}, et seul \MontreCode{graphicx} est chargé. + +\begin{codehigh}[language=latex/latex3,style/main=cyan!5,style/code=cyan!5] +\usepackage{PanneauxRoute} +\end{codehigh} + +\subsection{Commandes et utilisation} + +Chaque panneau (disponible) est disponible au format \MontreCode{pdf} (vectoriel, de fond transparent et provenant de fichiers \MontreCode{svg}) peut-être inséré de deux manières différentes : + +\begin{itemize} + \item grâce à la commande \MontreCode{\textbackslash AffPanneau} et le code (officiel) du panneau (voir tableaux) ; + \item grâce à une commande \textit{alias}, sous la forme \MontreCode{\textbackslash pr}. +\end{itemize} + +\begin{codehigh}[language=latex/latex3,style/main=cyan!5,style/code=cyan!5] +\AffPanneau[options graphicx]{} +\pr[options graphicx] +\end{codehigh} + +\begin{demohigh}[language=latex/latex3,style/main=cyan!5,style/code=cyan!5,style/demo=cyan!5] +\AffPanneau{A3b} ou \prChausRetG +\end{demohigh} + +Les deux commandes permettent d'insérer un panneau avec une hauteur de 1.15~cm, mais la taille du panneau peut-être modifiée grâce à un argument optionnel, et entre \MontreCode{[...]}, compatible avec les options de \MontreCode{\textbackslash includegraphics} (comme \MontreCode{scale}, \MontreCode{height} ou \MontreCode{width}). + +\medskip + +Par défaut (dû à \MontreCode{\textbackslash includegraphics}) les \textit{images} sont placées sur la ligne de base, mais avec \MontreCode{\textbackslash raisebox} ou \MontreCode{\textbackslash vcenter}, on peut décaler le panneau verticalement. + +\begin{demohigh}[language=latex/latex3,style/main=cyan!5,style/code=cyan!5,style/demo=cyan!5] +\raisebox{-0.2\height}{\AffPanneau[height=2ex]{B2b}} donne pareil que \raisebox{-0.2\height}{\prInterdTournD[height=2ex]} +\end{demohigh} + +\medskip + +Pour les panneaux de (début/fin de) limitation de vitesse, la commande associée nécessite un argument obligatoire, et entre \MontreCode{\{...\}}, avec comme possibilités \MontreCode{15/30/50/70/90/110/130} : + +\begin{demohigh}[language=latex/latex3,style/main=cyan!5,style/code=cyan!5,style/demo=cyan!5] +\prLimVites{15}\prLimVites{30}\prLimVites{50}\prLimVites{70} +\prLimVites{90}\prLimVites{110}\prLimVites{130} +\end{demohigh} + +\begin{demohigh}[language=latex/latex3,style/main=cyan!5,style/code=cyan!5,style/demo=cyan!5] +\prFinLimVit{15}\prFinLimVit{30}\prFinLimVit{50}\prFinLimVit{70} +\prFinLimVit{90}\prFinLimVit{110}\prFinLimVit{130} +\end{demohigh} + +\pagebreak + +\section{Tableaux récapitulatifs des panneaux disponibles} + +\subsection{Panneaux de Danger} + +\begin{longtblr}[label=none,entry=none]{width=0.95\linewidth,hlines,vlines,colspec={Q[12.5mm,m,c]Q[m,c]X[l,m]Q[m,c,35mm]},row{1}={cyan!5,font=\Large\sffamily},row{2-Z}={font=\sffamily},cell{2-Z}{Z}={font=\footnotesize}} + Type & Panneau & Signification & Alias \\ + A1a & \PanneauTableau{A1a} & Virage à droite & \fakeverb{\prVirDroit} \\ + A1b & \PanneauTableau{A1b} & Virage à gauche & \fakeverb{\prVirGauche}\\ + A1c & \PanneauTableau{A1c} & Succession de virages dont le premier est à droite & \fakeverb{\prVirsDroit} \\ + A1d & \PanneauTableau{A1d} & Succession de virages dont le premier est à gauche & \fakeverb{\prVirsGauche} \\ + A2a & \PanneauTableau{A2a} & Cassis ou dos-d'âne & \fakeverb{\prDosAne} \\ + A2b & \PanneauTableau{A2b} & Ralentisseur de type dos-d'âne & \fakeverb{\prRalDosAne} \\ + A3 & \PanneauTableau{A3} & Chaussée rétrécie & \fakeverb{\prChausRet} \\ + A3a & \PanneauTableau{A3a} & Chaussée rétrécie par la droite & \fakeverb{\prChausRetD} \\ + A3b & \PanneauTableau{A3b} & Chaussée rétrécie par la gauche & \fakeverb{\prChausRetG} \\ + A4 & \PanneauTableau{A4} & Chaussée particulièrement glissante & \fakeverb{\prChaussGliss} \\ + A6 & \PanneauTableau{A6} & Pont mobile & \fakeverb{\prPontMob} \\ + A7 & \PanneauTableau{A7} & Passage à niveau muni de barrières à fonctionnement manuel [\ldots] & \fakeverb{\prPassNiv} \\ + A8 & \PanneauTableau{A8} & Passage à niveau sans barrières ni demi-barrières & \fakeverb{\prPassNivVap} \\ + A9 & \PanneauTableau{A9} & Panneau traversée de voies de tramway & \fakeverb{\prPassTram} \\ + A13a & \PanneauTableau{A13a} & Endroit fréquenté par les enfants & \fakeverb{\prEnfants} \\ + A13b & \PanneauTableau{A13b} & Passage pour piéton & \fakeverb{\prPietons} \\ + A14 & \PanneauTableau{A14} & Autres dangers & \fakeverb{\prDanger} \\ + A15a1 & \PanneauTableau{A15a1} & Passage d'animaux domestiques & \fakeverb{\prAnimaux} \\ + A15a2 & \PanneauTableau{A15a1} & Passage d'animaux domestiques \\ + A15b & \PanneauTableau{A15b} & Passage d'animaux sauvages & \fakeverb{\prAnimauxSauv} \\ + A15c & \PanneauTableau{A15c} & Passage de cavaliers & \fakeverb{\prCavaliers} \\ + A16 & \PanneauTableau{A16} & Descente dangereuse & \fakeverb{\prDescente} \\ + A17 & \PanneauTableau{A17} & Annonce de feux tricolores & \fakeverb{\prFeux} \\ + A18 & \PanneauTableau{A18} & Circulation dans les deux sens & \fakeverb{\prDeuxSens} \\ + A19 & \PanneauTableau{A19} & Risque de chute de pierres ou de présence sur la route [\ldots] & \fakeverb{\prChute} \\ + A20 & \PanneauTableau{A20} & Débouché sur un quai ou une berge & \fakeverb{\prQuai} \\ + A21 & \PanneauTableau{A21} & Débouché de cyclistes venant de droite ou de gauche & \fakeverb{\prVelos} \\ + A23 & \PanneauTableau{A23} & Traversée d'une aire de danger aérien & \fakeverb{\prAvions} \\ + A24 & \PanneauTableau{A24} & Vent latéral & \fakeverb{\prVent} +\end{longtblr} + +\pagebreak + +\subsection{Panneaux d'Interdiction et de Priorité} + +\begin{longtblr}[label=none,entry=none]{width=0.95\linewidth,hlines,vlines,colspec={Q[12.5mm,m,c]Q[m,c]X[l,m]Q[m,c,35mm]},row{1}={cyan!5,font=\Large\sffamily},row{2-Z}={font=\sffamily},cell{2-Z}{Z}={font=\footnotesize}} + Type & Panneau & Signification & Alias \\ + AB1 & \PanneauTableau{AB1} & Intersection où le conducteur est tenu de céder le passage [\ldots] & \fakeverb{\prIntersect} \\ + AB2 & \PanneauTableau{AB2} & Intersection avec une route dont les usagers doivent céder le passage[\ldots] & \fakeverb{\prIntersectPrio} \\ + AB3a & \PanneauTableau{AB3a} & Cédez le passage à l'intersection & \fakeverb{\prCedez} \\ + AB3b & \PanneauTableau{AB3b} & Cédez le passage à l'intersection & \fakeverb{\prCedezInter} \\ + AB4 & \PanneauTableau{AB4} & Arrêt à l'intersection dans les conditions définies [\ldots] & \fakeverb{\prStop} \\ + AB5 & \PanneauTableau{AB5} & Arrêt à l'intersection & \fakeverb{\prArretInter} \\ + AB6 & \PanneauTableau{AB6} & Indication du caractère prioritaire d'une route & \fakeverb{\prRoutePrio} \\ + AB7 & \PanneauTableau{AB7} & Fin du caractère prioritaire d'une route & \fakeverb{\prFinRoutePrio} \\ + AB25 & \PanneauTableau{AB25} & Carrefour à sens giratoire & \fakeverb{\prRondPoint} \\ +\end{longtblr} + +\pagebreak + +\subsection{Panneaux d'Interdiction} + +\begin{longtblr}[label=none,entry=none]{width=0.95\linewidth,hlines,vlines,colspec={Q[12.5mm,m,c]Q[m,c]X[l,m]Q[m,c,35mm]},row{1}={cyan!5,font=\Large\sffamily},row{2-Z}={font=\sffamily},cell{2-Z}{Z}={font=\footnotesize}} + Type & Panneau & Signification & Alias \\ + B0 & \PanneauTableau{B0} & Circulation interdite à tout véhicule dans les deux sens & \fakeverb{\prCircInterd} \\ + B1 & \PanneauTableau{B1} & Sens interdit à tout véhicule & \fakeverb{\prSensInterdit} \\ + %B1j & \PanneauTableau{B1j} & Répétition d'interdiction d'accès à contresens de bretelles [\ldots] \\ + B2a & \PanneauTableau{B2a} & Interdiction de tourner à gauche à la prochaine intersection & \fakeverb{\prInterdTournG} \\ + B2b & \PanneauTableau{B2b} & Interdiction de tourner à droite à la prochaine intersection & \fakeverb{\prInterdTournD} \\ + B2c & \PanneauTableau{B2c} & Interdiction de faire demi-tour sur la route suivie jusqu'à la prochaine intersection & \fakeverb{\prInterdDemiTour} \\ + B3 & \PanneauTableau{B31} & Interdiction de dépasser tous les véhicules à moteur autres que ceux à deux roues sans side-car & \fakeverb{\prInterdDepass} \\ + B3a & \PanneauTableau{B3a} & Interdiction aux véhicules automobiles, véhicules articulés, trains doubles ou [\ldots] & \fakeverb{\prInterdVehic} \\ + B4 & \PanneauTableau{B4} & Arrêt au poste de douane & \fakeverb{\prHalteDouane} \\ + B5a & \PanneauTableau{B5a} & Arrêt au poste de gendarmerie & \fakeverb{\prHalteGendarm} \\ + B5b & \PanneauTableau{B5b} & Arrêt au poste de police & \fakeverb{\prHaltePolice} \\ + B5c & \PanneauTableau{B5c} & Arrêt au poste de péage & \fakeverb{\prHaltePeage} \\ + B6a1 & \PanneauTableau{B6a1} & Stationnement interdit & \fakeverb{\prStationInterd} \\ + B6a2 & \PanneauTableau{B6a2} & Stationnement interdit du 1er au 15 du mois & \fakeverb{\prStationInterdQA} \\ + B6a3 & \PanneauTableau{B6a3} & Stationnement interdit du 16 à la fin du mois & \fakeverb{\prStationInterdQB} \\ + B6d & \PanneauTableau{B6d} & Arrêt et stationnement interdits & \fakeverb{\prArStatInterd} \\ + B7a & \PanneauTableau{B7a} & Accès interdit aux véhicules à moteur à l'exception des cyclomoteurs & \fakeverb{\prInterdMotSaufCyc} \\ + B7b & \PanneauTableau{B7b} & Accès interdit à tous les véhicules à moteur & \fakeverb{\prInterdMot} \\ + B8 & \PanneauTableau{B8} & Accès interdit aux véhicules affectés au transport de marchandises & \fakeverb{\prInterdMarchand} \\ + B9a & \PanneauTableau{B9a} & Accès interdit aux piétons & \fakeverb{\prInterdPietons} \\ + B9b & \PanneauTableau{B9b} & Accès interdit aux cycles & \fakeverb{\prInterdCycles} \\ + B9c & \PanneauTableau{B9c} & Accès interdit aux véhicules à traction animale & \fakeverb{\prInterdTracAnim} \\ + B9d & \PanneauTableau{B9d} & Accès interdit aux véhicules agricoles à moteur & \fakeverb{\prInterdAgricMot} \\ + B9e & \PanneauTableau{B9e} & Accès interdit aux voitures à bras à l'exclusion de celles visées [\ldots] & \fakeverb{\prInterdBras} \\ + B9f & \PanneauTableau{B9f} & Accès interdit aux véhicules de transport en commun de personnes & \fakeverb{\prInterdTranspComm} \\ + B9g & \PanneauTableau{B9g} & Accès interdit aux cyclomoteurs & \fakeverb{\prInterdCyclomot} \\ + B9h & \PanneauTableau{B9h} & Accès interdit aux motocyclettes et motocyclettes légères [\ldots] & \fakeverb{\prInterdCycloMoto} \\ + B9i & \PanneauTableau{B9i} & Accès interdit aux véhicules tractant une caravane ou une remorque de plus de 250 kg [\ldots] & \fakeverb{\prInterdCaravanes} \\ + B10a & \PanneauTableau{B10a} & Accès interdit aux véhicules, véhicules articulés, trains doubles [\ldots] & \fakeverb{\prInterdLong} \\ + B11 & \PanneauTableau{B11} & Accès interdit aux véhicules dont la largeur, chargement compris, est supérieure [\ldots] & \fakeverb{\prInterdLarg} \\ + B12 & \PanneauTableau{B12} & Accès interdit aux véhicules dont la hauteur, chargement compris, est supérieure [\ldots] & \fakeverb{\prInterdHaut} \\ + B13 & \PanneauTableau{B13} & Accès interdit aux véhicules, véhicules articulés, trains doubles ou ensemble de véhicules [\ldots] & \fakeverb{\prInterdPoids} \\ + B13a & \PanneauTableau{B13a} & Accès interdit aux véhicules pesant sur un essieu plus que le nombre indiqué & \fakeverb{\prInterdPoidsEssieu} \\ + B14\_x & Limite de vitesse & \PanneauTableau{B14_15}\PanneauTableau{B14_30}\PanneauTableau{B14_50}\PanneauTableau{B14_70}\PanneauTableau{B14_90}\PanneauTableau{B14_110}\PanneauTableau{B14_130} & \fakeverb{\prLimVites{x}}\\ + B15 & \PanneauTableau{B15} & Cédez le passage à la circulation venant en sens inverse & \fakeverb{\prCedezInv} \\ + B16 & \PanneauTableau{B16} & Signaux sonores interdits & \fakeverb{\prInterdSons} \\ + B17 & \PanneauTableau{B17} & Interdiction aux véhicules de circuler sans maintenir entre eux un intervalle [\ldots] & \fakeverb{\prDistance} \\ + B18a & \PanneauTableau{B18a} & Accès interdit aux véhicules transportant des marchandises explosives ou facilement [\ldots] & \fakeverb{\prExplos} \\ + B18b & \PanneauTableau{B18b} & Accès interdit aux véhicules transportant des marchandises susceptibles de polluer les eaux [\ldots] & \fakeverb{\prPollu} \\ + B18c & \PanneauTableau{B18c} & Accès interdit aux véhicules transportant des marchandises dangereuses définies par l'arrêté [\ldots] & \fakeverb{\prDangereuses} \\ + B19 & \PanneauTableau{B19} & Autres interdictions dont la nature est indiquée par une inscription sur le panneau \\ +\end{longtblr} + +\pagebreak + +\subsection{Panneaux d'Obligation} + +\begin{longtblr}[label=none,entry=none]{width=0.95\linewidth,hlines,vlines,colspec={Q[12.5mm,m,c]Q[m,c]X[l,m]Q[m,c,35mm]},row{1}={cyan!5,font=\Large\sffamily},row{2-Z}={font=\sffamily},cell{2-Z}{Z}={font=\footnotesize}} + Type & Panneau & Signification & Alias \\ + B21-1 & \PanneauTableau{B21-1} & Obligation de tourner à droite avant le panneau & \fakeverb{\prObliAvDroite} \\ + B21-2 & \PanneauTableau{B21-2} & Obligation de tourner à gauche avant le panneau & \fakeverb{\prObliAvGauche} \\ + B21a1 & \PanneauTableau{B21a1} & Contournement obligatoire par la droite & \fakeverb{\prContournDroite} \\ + B21a2 & \PanneauTableau{B21a2} & Contournement obligatoire par la gauche & \fakeverb{\prContournGauche} \\ + B21b & \PanneauTableau{B21b} & Direction obligatoire à la prochaine intersection : tout droit & \fakeverb{\prToutDroit} \\ + B21c1 & \PanneauTableau{B21c1} & Direction obligatoire à la prochaine intersection : à droite & \fakeverb{\prObliDroite} \\ + B21c2 & \PanneauTableau{B21c2} & Direction obligatoire à la prochaine intersection : à gauche & \fakeverb{\prObliGauche} \\ + B21d1 & \PanneauTableau{B21d1} & Directions obligatoires à la prochaine intersection : tout droit ou à droite & \fakeverb{\prObliToutDroite} \\ + B21d2 & \PanneauTableau{B21d2} & Directions obligatoires à la prochaine intersection : tout droit ou à gauche & \fakeverb{\prObliToutGauche} \\ + B21e & \PanneauTableau{B21e} & Directions obligatoires à la prochaine intersection : à droite ou à gauche & \fakeverb{\prObliDroiteGauche} \\ + B22a & \PanneauTableau{B22a} & Piste ou bande obligatoire pour les cycles sans side-car & \fakeverb{\prObliCycles} \\ + B22b & \PanneauTableau{B22b} & Chemin obligatoire pour piétons & \fakeverb{\prObliPietons} \\ + B22c & \PanneauTableau{B22c} & Chemin obligatoire pour cavaliers & \fakeverb{\prObliCavaliers} \\ + B25 & \PanneauTableau{B25} & Vitesse minimale obligatoire & \fakeverb{\prObliVitesse} \\ + B26 & \PanneauTableau{B26} & Chaînes à neige obligatoires sur au moins deux roues motrices & \fakeverb{\prObliChaines} \\ + B27a & \PanneauTableau{B27a} & Voie réservée aux véhicules routiers de transports en commun des lignes régulières dûment [\ldots] & \fakeverb{\prObliBus} \\ + B27b & \PanneauTableau{B27b} & Voie réservée aux tramways & \fakeverb{\prObliTrams} \\ + B29 & \PanneauTableau{B29} & Autres obligations dont la nature est mentionnée par une inscription sur le panneau \\ +\end{longtblr} + +\pagebreak + +\subsection{Panneaux de fin d'Interdiction} + +\begin{longtblr}[label=none,entry=none]{width=0.95\linewidth,hlines,vlines,colspec={Q[12.5mm,m,c]Q[m,c]X[l,m]Q[m,c,35mm]},row{1}={cyan!5,font=\Large\sffamily},row{2-Z}={font=\sffamily},cell{2-Z}{Z}={font=\footnotesize}} + Type & Panneau & Signification & Alias \\ + B31 & \PanneauTableau{B31} & Fin de toutes les interdictions précédemment signalées[\ldots] & \fakeverb{\prFinInterd} \\ + B33\_x & Fin de Limite de vitesse & \PanneauTableau{B33_15}\PanneauTableau{B33_30}\PanneauTableau{B33_50}\PanneauTableau{B33_70}\PanneauTableau{B33_90}\PanneauTableau{B33_110}\PanneauTableau{B33_130} & \fakeverb{\prFinLimVit{x}} \\ + B34 & \PanneauTableau{B34} & Fin d’interdiction de dépasser notifiée par le panneau B3 & \fakeverb{\prFinIntDepass} \\ + B34a & \PanneauTableau{B34a} & Fin d’interdiction de dépasser notifiée par le panneau B3a & \fakeverb{\prFinIntDepassCam} \\ + B35 & \PanneauTableau{B35} & Fin d'interdiction de l'usage de l'avertisseur sonore & \fakeverb{\prFinIntSons} \\ + B39 & \PanneauTableau{B39} & Fin d'interdiction dont la nature est indiquée sur le panneau \\ +\end{longtblr} + +\pagebreak + +\subsection{Panneaux de fin d'Obligation} + +\begin{longtblr}[label=none,entry=none]{width=0.95\linewidth,hlines,vlines,colspec={Q[12.5mm,m,c]Q[m,c]X[l,m]Q[m,c,35mm]},row{1}={cyan!5,font=\Large\sffamily},row{2-Z}={font=\sffamily},cell{2-Z}{Z}={font=\footnotesize}} + Type & Panneau & Signification & Alias \\ + B40 & \PanneauTableau{B40} & Fin de piste ou bande obligatoire pour cycles & \fakeverb{\prFinPisteOblCycl} \\ + B41 & \PanneauTableau{B41} & Fin de chemin obligatoire pour piétons & \fakeverb{\prFinChemPiet} \\ + B42 & \PanneauTableau{B42} & Fin de chemin obligatoire pour cavaliers & \fakeverb{\prFinChemCav} \\ + B43 & \PanneauTableau{B43} & Fin de vitesse minimale obligatoire & \fakeverb{\prFinVitObli} \\ + B44 & \PanneauTableau{B44} & Fin d'obligation de l'usage des chaînes à neige & \fakeverb{\prFinChaines} \\ + B45a & \PanneauTableau{B45a} & Fin de voie réservée aux véhicules routiers de transports en commun des lignes régulières [\ldots] & \fakeverb{\prFinVoieBus} \\ + B49 & \PanneauTableau{B49} & Fin d'obligation dont la nature est mentionnée par une inscription sur le panneau \\ +\end{longtblr} + +\subsection{Panneaux d'Indication} + +\begin{longtblr}[label=none,entry=none]{width=0.95\linewidth,hlines,vlines,colspec={Q[12.5mm,m,c]Q[m,c]X[l,m]Q[m,c,35mm]},row{1}={cyan!5,font=\Large\sffamily},row{2-Z}={font=\sffamily},cell{2-Z}{Z}={font=\footnotesize}} + Type & Panneau & Signification & Alias \\ + C1a & \PanneauTableau{C1a} & Lieu aménagé pour le stationnement & \fakeverb{\prParking} \\ + C1b & \PanneauTableau{C1b} & Lieu aménagé pour le stationnement gratuit à durée limitée avec contrôle par un disque & \fakeverb{\prParkDisq} \\ + C1c & \PanneauTableau{C1c} & Lieu aménagé pour le stationnement payant & \fakeverb{\prParkPay} \\ + C3 & \PanneauTableau{C3} & Risque d’incendie & \fakeverb{\prIncendie} \\ + C44 & \PanneauTableau{C4a} & Vitesse conseillée & \fakeverb{\prVitConseil} \\ + C4b & \PanneauTableau{C4b} & Fin de vitesse conseillée & \fakeverb{\prFinVitConseil} \\ + C5 & \PanneauTableau{C5} & Station de taxis & \fakeverb{\prTaxis} \\ + C6 & \PanneauTableau{B49} & Arrêt d’autobus & \fakeverb{\prArretBus} \\ + C8 & \PanneauTableau{C8} & Emplacement d'arrêt d'urgence & \fakeverb{\prArretUrg} \\ + %C9 & \PanneauTableau{C9} & Station d'autopartage \\ + C12 & \PanneauTableau{C12} & Circulation à sens unique & \fakeverb{\prCircSensUniq} \\ + C13a & \PanneauTableau{C13a} & Impasse & \fakeverb{\prImpasse} \\ + C13b & \PanneauTableau{C13b} & Présignalisation d’une impasse & \fakeverb{\prPreImpasse} \\ + %C13c & \PanneauTableau{C13c} & Impasse comportant une issue pour les piétons \\ + %C13d & \PanneauTableau{C13d} & Impasse comportant une issue pour les piétons et les cyclistes \\ + C18 & \PanneauTableau{C18} & Priorité par rapport à la circulation venant en sens inverse & \fakeverb{\prPriorSensInv}\\ + C20a & \PanneauTableau{C20a} & Passage pour piétons & \fakeverb{\prPassPietons} \\ + %C20b & \PanneauTableau{C20b} & Traversée de voie de véhicules routiers des services réguliers de transport en commun \\ + C20c & \PanneauTableau{C20c} & Traversée de voies de tramways & \fakeverb{\prTravTrams} \\ + C23 & \PanneauTableau{C23} & Stationnement réglementé pour les caravanes et les autocaravanes & \fakeverb{\prStatCarav} \\ + C24a1 & \PanneauTableau{C24a1} & Voies affectées & \fakeverb{\prVoiesAffA} \\ + C24a4 & \PanneauTableau{C24a4} & Voies affectées & \fakeverb{\prVoiesAffB} \\ + C24b1 & \PanneauTableau{C24b1} & Voies affectées & \fakeverb{\prVoiesAffC} \\ + C24b2 & \PanneauTableau{C24b2} & Voies affectées & \fakeverb{\prVoiesAffD} \\ + C24c1 & \PanneauTableau{C24c1} & Voies affectées & \fakeverb{\prVoiesAffE} \\ + C24c2 & \PanneauTableau{C24c2} & Voies affectées & \fakeverb{\prVoiesAffF} \\ + C25a & \PanneauTableau{C25a} & Indication aux frontières des limites de vitesse sur le territoire français & \fakeverb{\prVitFront} \\ + C25b & \PanneauTableau{C25b} & Rappel des limites de vitesse sur autoroute & \fakeverb{\prVitAutor} \\ + C26a & \PanneauTableau{C26a} & Voie de détresse à droite & \fakeverb{\prDetresseD} \\ + C26b & \PanneauTableau{C26b} & Voie de détresse à gauche & \fakeverb{\prDetresseG} \\ + C27 & \PanneauTableau{C27} & Surélévation de chaussée & \fakeverb{\prChausseSur} \\ + C28a & \PanneauTableau{C28a} & Réduction du nombre de voies sur une route à chaussées séparées ou sur un créneau [\ldots] & \fakeverb{\prReducVoieA} \\ + C28b & \PanneauTableau{C28b} & Réduction du nombre de voies sur une route à chaussées séparées ou sur un créneau [\ldots]& \fakeverb{\prReducVoieB} \\ + C29b & \PanneauTableau{C29b} & Créneau de dépassement à trois voies affectées "deux voies dans un sens et une voie dans l’autre" & \fakeverb{\prCreneauDepas} \\ + C30 & \PanneauTableau{C30} & Fin d'un créneau de dépassement à trois voies affectées & \fakeverb{\prFinCreneauDepas} \\ + C50 & \PanneauTableau{C50} & Indications diverses \\ + %C51a & \PanneauTableau{C51a} & Présignalisation du début d'une section à vitesse régulée \\ + %C51b & \PanneauTableau{C51b} & Fin de section à vitesse régulée \\ + C62 & \PanneauTableau{B49} & Présignalisation d'une borne de retrait de ticket de péage & \fakeverb{\prTickPeage} \\ + C64a & \PanneauTableau{C64a} & Paiement auprès d'un péagiste & \fakeverb{\prPaiemPeage} \\ + C64b & \PanneauTableau{C64b} & Paiement automatique par CB & \fakeverb{\prPaiemCB} \\ + C64c & \PanneauTableau{C64c} & Paiement automatique par pièces de monnaie & \fakeverb{\prPaiemPieces} \\ + C64d1 & \PanneauTableau{C64d1} & Paiement automatique par pièces et billets & \fakeverb{\prPaiemPiecBil} \\ + C64d2 & \PanneauTableau{C64d2} & Paiement automatique par Télépéage & \fakeverb{\prPaiemTelepeage} \\ + % C64d & \PanneauTableau{C64d} & Paiement automatique par abonnement « télépéage » \\ + C107 & \PanneauTableau{C107} & Route à accès réglementé & \fakeverb{\prRouteRegl} \\ + C108 & \PanneauTableau{C108} & Fin de route à accès réglementé & \fakeverb{\prFinRouteRegl} \\ + C111 & \PanneauTableau{C111} & Entrée d'un tunnel & \fakeverb{\prEntrTunnel} \\ + C112 & \PanneauTableau{C112} & Sortie de tunnel & \fakeverb{\prSortieTunnel} \\ + C113 & \PanneauTableau{C113} & Piste ou bande cyclable conseillée et réservée aux cycles à deux ou trois roues & \fakeverb{\prPisteCycl} \\ + C114 & \PanneauTableau{C114} & Fin d'une piste ou d'une bande cyclable conseillée et réservée aux cycles à deux ou trois & \fakeverb{\prFinPisteCycl} \\ + C115 & \PanneauTableau{C115} & Voie verte & \fakeverb{\prVoieVerte} \\ + C116 & \PanneauTableau{C116} & Fin de voie verte & \fakeverb{\prFinVoieVerte} \\ + C207 & \PanneauTableau{C207} & Début d’une section d’autoroute & \fakeverb{\prDebAutor} \\ + C208 & \PanneauTableau{C208} & Fin d’une section d’autoroute & \fakeverb{\prFinAutor} \\ +\end{longtblr} + +\subsection{Panneaux de Signalisation des Services} + +\begin{longtblr}[label=none,entry=none]{width=0.95\linewidth,hlines,vlines,colspec={Q[12.5mm,m,c]Q[m,c]X[l,m]Q[m,c,35mm]},row{1}={cyan!5,font=\Large\sffamily},row{2-Z}={font=\sffamily},cell{2-Z}{Z}={font=\footnotesize}} + Type & Panneau & Signification & Alias \\ + CE1 & \PanneauTableau{CE1} & Poste de secours & \fakeverb{\prPosteSecours} \\ + CE2a & \PanneauTableau{CE2a} & Poste d'appel d'urgence & \fakeverb{\prPosteSecUrg} \\ + CE2b & \PanneauTableau{CE2b} & Cabine téléphonique publique & \fakeverb{\prCabineTel} \\ + CE3a & \PanneauTableau{CE3a} & Informations relatives aux services ou activités touristiques & \fakeverb{\prInfos} \\ + %CE3b & \PanneauTableau{CE3b} & Panneau d’information service faisant partie du relais d’information service \\ + CE4a & \PanneauTableau{CE4a} & Terrain de camping pour tentes & \fakeverb{\prCampingT} \\ + CE4b & \PanneauTableau{CE4b} & Terrain de camping pour caravanes et autocaravanes & \fakeverb{\prCampingC} \\ + CE4c & \PanneauTableau{CE4c} & Terrain de camping pour tentes, caravanes et autocaravanes & \fakeverb{\prCampingTC} \\ + CE5a & \PanneauTableau{CE5a} & Auberge de jeunesse & \fakeverb{\prAubergJeun} \\ + CE5b & \PanneauTableau{CE5b} & Chambre d'hôtes ou gîte & \fakeverb{\prGite} \\ + CE6a & \PanneauTableau{CE6a} & Point de départ d’un itinéraire pédestre & \fakeverb{\prItinPedest} \\ + CE6b & \PanneauTableau{CE6b} & Point de départ d'un circuit de ski de fond & \fakeverb{\prItinSkiFond} \\ + CE7 & \PanneauTableau{CE7} & Emplacement pour pique-nique & \fakeverb{\prPicNic} \\ + CE8 & \PanneauTableau{CE8} & Gare auto / train & \fakeverb{\prGareAutoTrain} \\ + CE9 & \PanneauTableau{CE9} & Parc de stationnement sous vidéoprotection & \fakeverb{\prParkVideo} \\ + CE10 & \PanneauTableau{CE10} & Embarcadère & \fakeverb{\prEmbarcad} \\ + CE12 & \PanneauTableau{CE12} & Toilettes ouvertes au public & \fakeverb{\prToilettes} \\ + CE14 & \PanneauTableau{CE14} & Installations accessibles aux personnes handicapées à mobilité réduite & \fakeverb{\prAccesHandic} \\ + CE15a & \PanneauTableau{CE15a} & Poste de distribution de carburant ouvert 7 jours sur 7 et 24 heures sur 24 & \fakeverb{\prEssence} \\ + CE15c & \PanneauTableau{CE15c} & Poste de distribution de carburant ouvert 7 jours sur 7 et 24 heures sur 24 [\ldots] & \fakeverb{\prEssenceGPL} \\ + %CE15e & \PanneauTableau{CE15e} & Marque du poste de distribution de carburant ouvert 7 jours sur 7 et 24 heures sur 24 \\ + %CE15f & \PanneauTableau{CE15f} & Marque du poste de distribution de carburant ouvert 7 jours sur 7 et 24 heures sur 24 [\ldots] \\ + %CE15g & \PanneauTableau{CE15g} & Poste de distribution de carburant ouvert 7 jours sur 7 et 24 heures sur 24 [\ldots] \\ + %CE15h & \PanneauTableau{CE15h} & Poste de distribution de carburant ouvert 7 jours sur 7 et 24 heures sur 24 [\ldots] \\ + %CE15i & \PanneauTableau{CE15i} & Poste de recharge de véhicules électriques ouvert 7 jours sur 7 et 24 heures sur 24 [\ldots] \\ + %CE15j & \PanneauTableau{CE15j} & Poste de recharge de véhicules électriques ouvert 7 jours sur 7 et 24 heures sur 24 [\ldots] \\ + CE16 & \PanneauTableau{CE16} & Restaurant ouvert 7 jours sur 7 & \fakeverb{\prRestau} \\ + CE17 & \PanneauTableau{CE17} & Hôtel ou motel ouvert 7 jours sur 7 & \fakeverb{\prHotel} \\ + CE18 & \PanneauTableau{CE18} & Débit de boissons ou établissement proposant des collations sommaires ouvert 7 jours sur 7 & \fakeverb{\prBoissons} \\ + CE19 & \PanneauTableau{CE19} & Emplacement de mise à l’eau d’embarcations légères & \fakeverb{\prEmbarcLeg} \\ + CE20a & \PanneauTableau{CE20a} & Gare de téléphérique & \fakeverb{\prTelepher} \\ + CE20b & \PanneauTableau{CE20b} & Point de départ d'un télésiège ou d'une télécabine & \fakeverb{\prTelecabin} \\ + CE21 & \PanneauTableau{CE21} & Point de vue & \fakeverb{\prPointVue} \\ + CE22 & \PanneauTableau{CE22} & Fréquence d’émission d’une station de radiodiffusion dédiée aux informations [\ldots] & \fakeverb{\prRadio} \\ + CE23 & \PanneauTableau{CE23} & Jeux d'enfants & \fakeverb{\prJeuxEnfants} \\ + CE24 & \PanneauTableau{CE24} & Station de vidange pour caravanes, auto-caravanes et cars & \fakeverb{\prVidange} \\ + CE25 & \PanneauTableau{CE25} & Distributeur de billets de banque & \fakeverb{\prDistribBill} \\ + CE26 & \PanneauTableau{CE26} & Station de gonflage, hors station service, dont l’usage est gratuit & \fakeverb{\prGonflage} \\ + CE27 & \PanneauTableau{CE27} & Point de détente & \fakeverb{\prDetente} \\ + CE28 & \PanneauTableau{CE28} & Poste de dépannage & \fakeverb{\prPosteDepann} \\ + CE29 & \PanneauTableau{CE29} & Moyen de lutte contre l'incendie & \fakeverb{\prLutteIncendie} \\ + CE30a & \PanneauTableau{CE30a} & Issue de secours vers la droite & \fakeverb{\prIssueSecD} \\ + CE30b & \PanneauTableau{CE30b} & Issue de secours vers la gauche & \fakeverb{\prIssueSecG} \\ + CE50 & \PanneauTableau{CE50} & Installations ou services divers \\ + %CE51 & \PanneauTableau{CE51} & Point du réseau de distribution "écotaxe" (taxe nationale sur les véhicules [\ldots] \\ + %CE52 & \PanneauTableau{CE52} & Lieu aménagé pour la pratique du covoiturage \\ + %CE100 & \PanneauTableau{CE100} & Indication de l’enseigne de la ou des sociétés commerciales offrant un [\ldots] \\ +\end{longtblr} + +\section{Aliases, de hauteur 2.5ex} + +\begin{multicols}{3} + \raisebox{-0.2\height}{\prVirDroit[height=2.5ex]} : \verb+\prVirDroit+ \\ + \raisebox{-0.2\height}{\prVirGauche[height=2.5ex]} : \verb+\prVirGauche+ \\ + \raisebox{-0.2\height}{\prVirsDroit[height=2.5ex]} : \verb+\prVirsDroit+ \\ + \raisebox{-0.2\height}{\prVirsGauche[height=2.5ex]} : \verb+\prVirsGauche+ \\ + \raisebox{-0.2\height}{\prDosAne[height=2.5ex]} : \verb+\prDosAne+ \\ + \raisebox{-0.2\height}{\prRalDosAne[height=2.5ex]} : \verb+\prRalDosAne+ \\ + \raisebox{-0.2\height}{\prChausRet[height=2.5ex]} : \verb+\prChausRet+ \\ + \raisebox{-0.2\height}{\prChausRetD[height=2.5ex]} : \verb+\prChausRetD+ \\ + \raisebox{-0.2\height}{\prChausRetG[height=2.5ex]} : \verb+\prChausRetG+ \\ + \raisebox{-0.2\height}{\prChaussGliss[height=2.5ex]} : \verb+\prChaussGliss+ \\ + \raisebox{-0.2\height}{\prPontMob[height=2.5ex]} : \verb+\prPontMob+ \\ + \raisebox{-0.2\height}{\prPassNiv[height=2.5ex]} : \verb+\prPassNiv+ \\ + \raisebox{-0.2\height}{\prPassNivVap[height=2.5ex]} : \verb+\prPassNivVap+ \\ + \raisebox{-0.2\height}{\prPassTram[height=2.5ex]} : \verb+\prPassTram+ \\ + \raisebox{-0.2\height}{\prEnfants[height=2.5ex]} : \verb+\prEnfants+ \\ + \raisebox{-0.2\height}{\prPietons[height=2.5ex]} : \verb+\prPietons+ \\ + \raisebox{-0.2\height}{\prDanger[height=2.5ex]} : \verb+\prDanger+ \\ + \raisebox{-0.2\height}{\prAnimaux[height=2.5ex]} : \verb+\prAnimaux+ \\ + \raisebox{-0.2\height}{\prAnimauxSauv[height=2.5ex]} : \verb+\prAnimauxSauv+ \\ + \raisebox{-0.2\height}{\prCavaliers[height=2.5ex]} : \verb+\prCavaliers+ \\ + \raisebox{-0.2\height}{\prDescente[height=2.5ex]} : \verb+\prDescente+ \\ + \raisebox{-0.2\height}{\prFeux[height=2.5ex]} : \verb+\prFeux+ \\ + \raisebox{-0.2\height}{\prDeuxSens[height=2.5ex]} : \verb+\prDeuxSens+ \\ + \raisebox{-0.2\height}{\prChute[height=2.5ex]} : \verb+\prChute+ \\ + \raisebox{-0.2\height}{\prQuai[height=2.5ex]} : \verb+\prQuai+ \\ + \raisebox{-0.2\height}{\prVelos[height=2.5ex]} : \verb+\prVelos+ \\ + \raisebox{-0.2\height}{\prAvions[height=2.5ex]} : \verb+\prAvions+ \\ + \raisebox{-0.2\height}{\prVent[height=2.5ex]} : \verb+\prVent+ +\end{multicols} + +\begin{multicols}{3} + \raisebox{-0.2\height}{\prIntersect[height=2.5ex]} : \verb+\prIntersect+ \\ + \raisebox{-0.2\height}{\prIntersectPrio[height=2.5ex]} : \verb+\prIntersectPrio+ \\ + \raisebox{-0.2\height}{\prCedez[height=2.5ex]} : \verb+\prCedez+ \\ + \raisebox{-0.2\height}{\prCedezInter[height=2.5ex]} : \verb+\prCedezInter+ \\ + \raisebox{-0.2\height}{\prStop[height=2.5ex]} : \verb+\prStop+ \\ + \raisebox{-0.2\height}{\prArretInter[height=2.5ex]} : \verb+\prArretInter+ \\ + \raisebox{-0.2\height}{\prRoutePrio[height=2.5ex]} : \verb+\prRoutePrio+ \\ + \raisebox{-0.2\height}{\prFinRoutePrio[height=2.5ex]} : \verb+\prFinRoutePrio+ \\ + \raisebox{-0.2\height}{\prRondPoint[height=2.5ex]} : \verb+\prRondPoint+ +\end{multicols} + +\begin{multicols}{3} + \raisebox{-0.2\height}{\prCircInterd[height=2.5ex]} : \verb+\prCircInterd+ \\ + \raisebox{-0.2\height}{\prSensInterdit[height=2.5ex]} : \verb+\prSensInterdit+ \\ + \raisebox{-0.2\height}{\prInterdTournG[height=2.5ex]} : \verb+\prInterdTournG+ \\ + \raisebox{-0.2\height}{\prInterdTournD[height=2.5ex]} : \verb+\prInterdTournD+ \\ + \raisebox{-0.2\height}{\prInterdDemiTour[height=2.5ex]} : \verb+\prInterdDemiTour+ \\ + \raisebox{-0.2\height}{\prInterdDepass[height=2.5ex]} : \verb+\prInterdDepass+ \\ + \raisebox{-0.2\height}{\prInterdVehic[height=2.5ex]} : \verb+\prInterdVehic+ \\ + \raisebox{-0.2\height}{\prHalteDouane[height=2.5ex]} : \verb+\prHalteDouane+ \\ + \raisebox{-0.2\height}{\prHalteGendarm[height=2.5ex]} : \verb+\prHalteGendarm+ \\ + \raisebox{-0.2\height}{\prHaltePolice[height=2.5ex]} : \verb+\prHaltePolice+ \\ + \raisebox{-0.2\height}{\prHaltePeage[height=2.5ex]} : \verb+\prHaltePeage+ \\ + \raisebox{-0.2\height}{\prStationInterd[height=2.5ex]} : \verb+\prStationInterd+ \\ + \raisebox{-0.2\height}{\prStationInterdQA[height=2.5ex]} : \verb+\prStationInterdQA+ \\ + \raisebox{-0.2\height}{\prStationInterdQB[height=2.5ex]} : \verb+\prStationInterdQB+ \\ + \raisebox{-0.2\height}{\prArStatInterd[height=2.5ex]} : \verb+\prArStatInterd+ \\ + \raisebox{-0.2\height}{\prInterdMotSaufCyc[height=2.5ex]} : \verb+\prInterdMotSaufCyc+ \\ + \raisebox{-0.2\height}{\prInterdMot[height=2.5ex]} : \verb+\prInterdMot+ \\ + \raisebox{-0.2\height}{\prInterdMarchand[height=2.5ex]} : \verb+\prInterdMarchand+ \\ + \raisebox{-0.2\height}{\prInterdPietons[height=2.5ex]} : \verb+\prInterdPietons+ \\ + \raisebox{-0.2\height}{\prInterdCycles[height=2.5ex]} : \verb+\prInterdCycles+ \\ + \raisebox{-0.2\height}{\prInterdTracAnim[height=2.5ex]} : \verb+\prInterdTracAnim+ \\ + \raisebox{-0.2\height}{\prInterdAgricMot[height=2.5ex]} : \verb+\prInterdAgricMot+ \\ + \raisebox{-0.2\height}{\prInterdBras[height=2.5ex]} : \verb+\prInterdBras+ \\ + \raisebox{-0.2\height}{\prInterdTranspComm[height=2.5ex]} : \verb+\prInterdTranspComm+ \\ + \raisebox{-0.2\height}{\prInterdCyclomot[height=2.5ex]} : \verb+\prInterdCyclomot+ \\ + \raisebox{-0.2\height}{\prInterdCycloMoto[height=2.5ex]} : \verb+\prInterdCycloMoto+ \\ + \raisebox{-0.2\height}{\prInterdCaravanes[height=2.5ex]} : \verb+\prInterdCaravanes+ \\ + \raisebox{-0.2\height}{\prInterdLong[height=2.5ex]} : \verb+\prInterdLong+ \\ + \raisebox{-0.2\height}{\prInterdLarg[height=2.5ex]} : \verb+\prInterdLarg+ \\ + \raisebox{-0.2\height}{\prInterdHaut[height=2.5ex]} : \verb+\prInterdHaut+ \\ + \raisebox{-0.2\height}{\prInterdPoids[height=2.5ex]} : \verb+\prInterdPoids+ \\ + \raisebox{-0.2\height}{\prInterdPoidsEssieu[height=2.5ex]} : \verb+\prInterdPoidsEssieu+ \\ + \raisebox{-0.2\height}{\prLimVites[height=2.5ex]{15}} : \verb+\prLimVites{15}+ \\ + \raisebox{-0.2\height}{\prLimVites[height=2.5ex]{30}} : \verb+\prLimVites{30}+ \\ + \raisebox{-0.2\height}{\prLimVites[height=2.5ex]{50}} : \verb+\prLimVites{50}+ \\ + \raisebox{-0.2\height}{\prLimVites[height=2.5ex]{70}} : \verb+\prLimVites{70}+ \\ + \raisebox{-0.2\height}{\prLimVites[height=2.5ex]{90}} : \verb+\prLimVites{90}+ \\ + \raisebox{-0.2\height}{\prLimVites[height=2.5ex]{110}} : \verb+\prLimVites{110}+ \\ + \raisebox{-0.2\height}{\prLimVites[height=2.5ex]{130}} : \verb+\prLimVites{130}+ \\ + \raisebox{-0.2\height}{\prCedezInv[height=2.5ex]} : \verb+\prCedezInv+ \\ + \raisebox{-0.2\height}{\prInterdSons[height=2.5ex]} : \verb+\prInterdSons+ \\ + \raisebox{-0.2\height}{\prDistance[height=2.5ex]} : \verb+\prDistance+ \\ + \raisebox{-0.2\height}{\prExplos[height=2.5ex]} : \verb+\prExplos+ \\ + \raisebox{-0.2\height}{\prPollu[height=2.5ex]} : \verb+\prPollu+ \\ + \raisebox{-0.2\height}{\prDangereuses[height=2.5ex]} : \verb+\prDangereuses+ \\ + \raisebox{-0.2\height}{\prObliDroite[height=2.5ex]} : \verb+\prObliDroite+ \\ + \raisebox{-0.2\height}{\prObliGauche[height=2.5ex]} : \verb+\prObliGauche+ \\ + \raisebox{-0.2\height}{\prContournDroite[height=2.5ex]} : \verb+\prContournDroite+ \\ + \raisebox{-0.2\height}{\prContournGauche[height=2.5ex]} : \verb+\prContournGauche+ \\ + \raisebox{-0.2\height}{\prToutDroit[height=2.5ex]} : \verb+\prToutDroit+ \\ + \raisebox{-0.2\height}{\prObliDroite[height=2.5ex]} : \verb+\prObliDroite+ \\ + \raisebox{-0.2\height}{\prObliGauche[height=2.5ex]} : \verb+\prObliGauche+ \\ + \raisebox{-0.2\height}{\prObliToutDroite[height=2.5ex]} : \verb+\prObliToutDroite+ \\ + \raisebox{-0.2\height}{\prObliToutGauche[height=2.5ex]} : \verb+\prObliToutGauche+ \\ + \raisebox{-0.2\height}{\prObliDroiteGauche[height=2.5ex]} : \verb+\prObliDroiteGauche+ \\ + \raisebox{-0.2\height}{\prObliCycles[height=2.5ex]} : \verb+\prObliCycles+ \\ + \raisebox{-0.2\height}{\prObliPietons[height=2.5ex]} : \verb+\prObliPietons+ \\ + \raisebox{-0.2\height}{\prObliCavaliers[height=2.5ex]} : \verb+\prObliCavaliers+ \\ + \raisebox{-0.2\height}{\prObliVitesse[height=2.5ex]} : \verb+\prObliVitesse+ \\ + \raisebox{-0.2\height}{\prObliChaines[height=2.5ex]} : \verb+\prObliChaines+ \\ + \raisebox{-0.2\height}{\prObliBus[height=2.5ex]} : \verb+\prObliBus+ \\ + \raisebox{-0.2\height}{\prObliTrams[height=2.5ex]} : \verb+\prObliTrams+ +\end{multicols} + +\begin{multicols}{3} + \raisebox{-0.2\height}{\prFinInterd[height=2.5ex]} : \verb+\prFinInterd+ \\ + \raisebox{-0.2\height}{\prFinLimVit[height=2.5ex]{15}} : \verb+\prFinLimVit{15}+ \\ + \raisebox{-0.2\height}{\prFinLimVit[height=2.5ex]{30}} : \verb+\prFinLimVit{30}+ \\ + \raisebox{-0.2\height}{\prFinLimVit[height=2.5ex]{50}} : \verb+\prFinLimVit{50}+ \\ + \raisebox{-0.2\height}{\prFinLimVit[height=2.5ex]{70}} : \verb+\prFinLimVit{70}+ \\ + \raisebox{-0.2\height}{\prFinLimVit[height=2.5ex]{90}} : \verb+\prFinLimVit{90}+ \\ + \raisebox{-0.2\height}{\prFinLimVit[height=2.5ex]{110}} : \verb+\prFinLimVit{110}+ \\ + \raisebox{-0.2\height}{\prFinLimVit[height=2.5ex]{130}} : \verb+\prFinLimVit{130}+ \\ + \raisebox{-0.2\height}{\prFinIntDepass[height=2.5ex]} : \verb+\prFinIntDepass+ \\ + \raisebox{-0.2\height}{\prFinIntDepassCam[height=2.5ex]} : \verb+\prFinIntDepassCam+ \\ + \raisebox{-0.2\height}{\prFinIntSons[height=2.5ex]} : \verb+\prFinIntSons+ \\ +\end{multicols} + +\begin{multicols}{3} + \raisebox{-0.2\height}{\prFinPisteCycl[height=2.5ex]} : \verb+\prFinPisteCycl+ \\ + \raisebox{-0.2\height}{\prFinChemPiet[height=2.5ex]} : \verb+\prFinChemPiet+ \\ + \raisebox{-0.2\height}{\prFinChemCav[height=2.5ex]} : \verb+\prFinChemCav+ \\ + \raisebox{-0.2\height}{\prFinVitObli[height=2.5ex]} : \verb+\prFinVitObli+ \\ + \raisebox{-0.2\height}{\prFinChaines[height=2.5ex]} : \verb+\prFinChaines+ \\ + \raisebox{-0.2\height}{\prFinVoieBus[height=2.5ex]} : \verb+\prFinVoieBus+ +\end{multicols} + +\begin{multicols}{3} + \raisebox{-0.2\height}{\prParking[height=2.5ex]} : \verb+\prParking+ \\ + \raisebox{-0.2\height}{\prParkDisq[height=2.5ex]} : \verb+\prParkDisq+ \\ + \raisebox{-0.2\height}{\prParkPay[height=2.5ex]} : \verb+\prParkPay+ \\ + \raisebox{-0.2\height}{\prIncendie[height=2.5ex]} : \verb+\prIncendie+ \\ + \raisebox{-0.2\height}{\prVitConseil[height=2.5ex]} : \verb+\prVitConseil+ \\ + \raisebox{-0.2\height}{\prFinVitConseil[height=2.5ex]} : \verb+\prFinVitConseil+ \\ + \raisebox{-0.2\height}{\prTaxis[height=2.5ex]} : \verb+\prTaxis+ \\ + \raisebox{-0.2\height}{\prArretBus[height=2.5ex]} : \verb+\prArretBus+ \\ + \raisebox{-0.2\height}{\prArretUrg[height=2.5ex]} : \verb+\prArretUrg+ \\ + \raisebox{-0.2\height}{\prCircSensUniq[height=2.5ex]} : \verb+\prCircSensUniq+ \\ + \raisebox{-0.2\height}{\prImpasse[height=2.5ex]} : \verb+\prImpasse+ \\ + \raisebox{-0.2\height}{\prPreImpasse[height=2.5ex]} : \verb+\prPreImpasse+ \\ + \raisebox{-0.2\height}{\prPriorSensInv[height=2.5ex]} : \verb+\\prPriorSensInv+ \\ + \raisebox{-0.2\height}{\prPassPietons[height=2.5ex]} : \verb+\prPassPietons+ \\ + \raisebox{-0.2\height}{\prTravTrams[height=2.5ex]} : \verb+\prTravTrams+ \\ + \raisebox{-0.2\height}{\prStatCarav[height=2.5ex]} : \verb+\prStatCarav+ \\ + \raisebox{-0.2\height}{\prVoiesAffA[height=2.5ex]} : \verb+\prVoiesAffA+ \\ + \raisebox{-0.2\height}{\prVoiesAffB[height=2.5ex]} : \verb+\prVoiesAffB+ \\ + \raisebox{-0.2\height}{\prVoiesAffC[height=2.5ex]} : \verb+\prVoiesAffC+ \\ + \raisebox{-0.2\height}{\prVoiesAffD[height=2.5ex]} : \verb+\prVoiesAffD+ \\ + \raisebox{-0.2\height}{\prVoiesAffE[height=2.5ex]} : \verb+\prVoiesAffE+ \\ + \raisebox{-0.2\height}{\prVoiesAffF[height=2.5ex]} : \verb+\prVoiesAffF+ \\ + \raisebox{-0.2\height}{\prVitFront[height=2.5ex]} : \verb+\prVitFront+ \\ + \raisebox{-0.2\height}{\prVitAutor[height=2.5ex]} : \verb+\prVitAutor+ \\ + \raisebox{-0.2\height}{\prDetresseD[height=2.5ex]} : \verb+\prDetresseD+ \\ + \raisebox{-0.2\height}{\prDetresseG[height=2.5ex]} : \verb+\prDetresseG+ \\ + \raisebox{-0.2\height}{\prChausseSur[height=2.5ex]} : \verb+\prChausseSur+ \\ + \raisebox{-0.2\height}{\prReducVoieA[height=2.5ex]} : \verb+\prReducVoieA+ \\ + \raisebox{-0.2\height}{\prReducVoieB[height=2.5ex]} : \verb+\prReducVoieB+ \\ + \raisebox{-0.2\height}{\prCreneauDepas[height=2.5ex]} : \verb+\prCreneauDepas+ \\ + \raisebox{-0.2\height}{\prFinCreneauDepas[height=2.5ex]} : \verb+\prFinCreneauDepas+ +\end{multicols} + +\begin{multicols}{3} + \raisebox{-0.2\height}{\prTickPeage[height=2.5ex]} : \verb+\prTickPeage+ \\ + \raisebox{-0.2\height}{\prPaiemPeage[height=2.5ex]} : \verb+\prPaiemPeage+ \\ + \raisebox{-0.2\height}{\prPaiemCB[height=2.5ex]} : \verb+\prPaiemCB+ \\ + \raisebox{-0.2\height}{\prPaiemPieces[height=2.5ex]} : \verb+\prPaiemPieces+ \\ + \raisebox{-0.2\height}{\prPaiemPiecBil[height=2.5ex]} : \verb+\prPaiemPiecBil+ \\ + \raisebox{-0.2\height}{\prPaiemTelepeage[height=2.5ex]} : \verb+\prPaiemTelepeage+ \\ + \raisebox{-0.2\height}{\prRouteRegl[height=2.5ex]} : \verb+\prRouteRegl+ \\ + \raisebox{-0.2\height}{\prFinRouteRegl[height=2.5ex]} : \verb+\prFinRouteRegl+ \\ + \raisebox{-0.2\height}{\prEntrTunnel[height=2.5ex]} : \verb+\prEntrTunnel+ \\ + \raisebox{-0.2\height}{\prSortieTunnel[height=2.5ex]} : \verb+\prSortieTunnel+ \\ + \raisebox{-0.2\height}{\prPisteCycl[height=2.5ex]} : \verb+\prPisteCycl+ \\ + \raisebox{-0.2\height}{\prFinPisteCycl[height=2.5ex]} : \verb+\prFinPisteCycl+ \\ + \raisebox{-0.2\height}{\prVoieVerte[height=2.5ex]} : \verb+\prVoieVerte+ \\ + \raisebox{-0.2\height}{\prFinVoieVerte[height=2.5ex]} : \verb+\prFinVoieVerte+ \\ + \raisebox{-0.2\height}{\prDebAutor[height=2.5ex]} : \verb+\prDebAutor+ \\ + \raisebox{-0.2\height}{\prFinAutor[height=2.5ex]} : \verb+\prFinAutor+ +\end{multicols} + +\begin{multicols}{3} + \raisebox{-0.2\height}{\prPosteSecours[height=2.5ex]} : \verb+\prPosteSecours+ \\ + \raisebox{-0.2\height}{\prPosteSecUrg[height=2.5ex]} : \verb+\prPosteSecUrg+ \\ + \raisebox{-0.2\height}{\prCabineTel[height=2.5ex]} : \verb+\prCabineTel+ \\ + \raisebox{-0.2\height}{\prInfos[height=2.5ex]} : \verb+\prInfos+ \\ + \raisebox{-0.2\height}{\prCampingT[height=2.5ex]} : \verb+\prCampingT+ \\ + \raisebox{-0.2\height}{\prCampingC[height=2.5ex]} : \verb+\prCampingC+ \\ + \raisebox{-0.2\height}{\prCampingTC[height=2.5ex]} : \verb+\prCampingTC+ \\ + \raisebox{-0.2\height}{\prAubergJeun[height=2.5ex]} : \verb+\prAubergJeun+ \\ + \raisebox{-0.2\height}{\prGite[height=2.5ex]} : \verb+\prGite+ \\ + \raisebox{-0.2\height}{\prItinPedest[height=2.5ex]} : \verb+\prItinPedest+ \\ + \raisebox{-0.2\height}{\prItinSkiFond[height=2.5ex]} : \verb+\prItinSkiFond+ \\ + \raisebox{-0.2\height}{\prPicNic[height=2.5ex]} : \verb+\prPicNic+ \\ + \raisebox{-0.2\height}{\prGareAutoTrain[height=2.5ex]} : \verb+\prGareAutoTrain+ \\ + \raisebox{-0.2\height}{\prParkVideo[height=2.5ex]} : \verb+\prParkVideo+ \\ + \raisebox{-0.2\height}{\prEmbarcad[height=2.5ex]} : \verb+\prEmbarcad+ \\ + \raisebox{-0.2\height}{\prToilettes[height=2.5ex]} : \verb+\prToilettes+ \\ + \raisebox{-0.2\height}{\prAccesHandic[height=2.5ex]} : \verb+\prAccesHandic+ \\ + \raisebox{-0.2\height}{\prEssence[height=2.5ex]} : \verb+\prEssence+ \\ + \raisebox{-0.2\height}{\prEssenceGPL[height=2.5ex]} : \verb+\prEssenceGPL+ \\ + \raisebox{-0.2\height}{\prRestau[height=2.5ex]} : \verb+\prRestau+ \\ + \raisebox{-0.2\height}{\prHotel[height=2.5ex]} : \verb+\prHotel+ \\ + \raisebox{-0.2\height}{\prBoissons[height=2.5ex]} : \verb+\prBoissons+ \\ + \raisebox{-0.2\height}{\prEmbarcLeg[height=2.5ex]} : \verb+\prEmbarcLeg+ \\ + \raisebox{-0.2\height}{\prTelepher[height=2.5ex]} : \verb+\prTelepher+ \\ + \raisebox{-0.2\height}{\prTelecabin[height=2.5ex]} : \verb+\prTelecabin+ \\ + \raisebox{-0.2\height}{\prPointVue[height=2.5ex]} : \verb+\prPointVue+ \\ + \raisebox{-0.2\height}{\prRadio[height=2.5ex]} : \verb+\prRadio+ \\ + \raisebox{-0.2\height}{\prJeuxEnfants[height=2.5ex]} : \verb+\prJeuxEnfants+ \\ + \raisebox{-0.2\height}{\prVidange[height=2.5ex]} : \verb+\prVidange+ \\ + \raisebox{-0.2\height}{\prDistribBill[height=2.5ex]} : \verb+\prDistribBill+ \\ + \raisebox{-0.2\height}{\prGonflage[height=2.5ex]} : \verb+\prGonflage+ \\ + \raisebox{-0.2\height}{\prDetente[height=2.5ex]} : \verb+\prDetente+ \\ + \raisebox{-0.2\height}{\prPosteDepann[height=2.5ex]} : \verb+\prPosteDepann+ \\ + \raisebox{-0.2\height}{\prLutteIncendie[height=2.5ex]} : \verb+\prLutteIncendie+ \\ + \raisebox{-0.2\height}{\prIssueSecD[height=2.5ex]} : \verb+\prIssueSecD+ \\ + \raisebox{-0.2\height}{\prIssueSecG[height=2.5ex]} : \verb+\prIssueSecG+ +\end{multicols} + +\end{document} \ No newline at end of file diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13a.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13a.pdf new file mode 100644 index 0000000000..8e151d383e Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13b.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13b.pdf new file mode 100644 index 0000000000..a321f11611 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA13b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA14.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA14.pdf new file mode 100644 index 0000000000..b854ea305d Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA14.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a1.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a1.pdf new file mode 100644 index 0000000000..03199cc41a Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a2.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a2.pdf new file mode 100644 index 0000000000..a25bdb9f52 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15a2.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15b.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15b.pdf new file mode 100644 index 0000000000..c68db05cc2 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15c.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15c.pdf new file mode 100644 index 0000000000..db126defd4 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA15c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA16.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA16.pdf new file mode 100644 index 0000000000..83397100e8 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA16.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA17.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA17.pdf new file mode 100644 index 0000000000..90f64df30d Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA17.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA18.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA18.pdf new file mode 100644 index 0000000000..2f24974fed Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA18.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA19.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA19.pdf new file mode 100644 index 0000000000..6d45da0319 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA19.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1a.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1a.pdf new file mode 100644 index 0000000000..6b835869e6 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1b.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1b.pdf new file mode 100644 index 0000000000..762cbb7c0d Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1c.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1c.pdf new file mode 100644 index 0000000000..9dde0db353 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1d.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1d.pdf new file mode 100644 index 0000000000..a059949dd8 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA1d.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA20.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA20.pdf new file mode 100644 index 0000000000..20eb69e542 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA20.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA21.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA21.pdf new file mode 100644 index 0000000000..c610cb0dc6 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA21.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA23.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA23.pdf new file mode 100644 index 0000000000..87640bad33 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA23.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA24.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA24.pdf new file mode 100644 index 0000000000..59ca7e725a Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA24.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2a.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2a.pdf new file mode 100644 index 0000000000..db79542a81 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2b.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2b.pdf new file mode 100644 index 0000000000..3378740865 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA2b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3.pdf new file mode 100644 index 0000000000..51ac174408 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3a.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3a.pdf new file mode 100644 index 0000000000..27774df940 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3b.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3b.pdf new file mode 100644 index 0000000000..b52659b09a Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA3b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA4.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA4.pdf new file mode 100644 index 0000000000..12062a5f29 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA4.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA6.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA6.pdf new file mode 100644 index 0000000000..a599c391d9 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA6.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA7.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA7.pdf new file mode 100644 index 0000000000..63fdb705dc Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA7.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA8.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA8.pdf new file mode 100644 index 0000000000..da9d1dc613 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA8.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA9.pdf b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA9.pdf new file mode 100644 index 0000000000..4285dd069e Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Danger/PanneauRouteA9.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC107.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC107.pdf new file mode 100644 index 0000000000..08c41e1e45 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC107.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC108.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC108.pdf new file mode 100644 index 0000000000..efe3017671 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC108.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC111.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC111.pdf new file mode 100644 index 0000000000..ba4a5e6d6f Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC111.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC112.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC112.pdf new file mode 100644 index 0000000000..e6e585de01 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC112.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC113.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC113.pdf new file mode 100644 index 0000000000..9acf9a4cad Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC113.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC114.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC114.pdf new file mode 100644 index 0000000000..bd5537eb83 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC114.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC115.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC115.pdf new file mode 100644 index 0000000000..f477188539 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC115.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC116.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC116.pdf new file mode 100644 index 0000000000..bb73cdc922 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC116.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC12.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC12.pdf new file mode 100644 index 0000000000..ace75288f8 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC12.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13a.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13a.pdf new file mode 100644 index 0000000000..09d190c783 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13b.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13b.pdf new file mode 100644 index 0000000000..a70efd43fa Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC13b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_1.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_1.pdf new file mode 100644 index 0000000000..7b2fa46a3c Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_2.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_2.pdf new file mode 100644 index 0000000000..f923c5198b Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC14_2.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC18.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC18.pdf new file mode 100644 index 0000000000..495567875e Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC18.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1a.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1a.pdf new file mode 100644 index 0000000000..1878c3b4e3 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1b.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1b.pdf new file mode 100644 index 0000000000..e719d9669d Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1c.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1c.pdf new file mode 100644 index 0000000000..c70cde1fe3 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC1c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC207.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC207.pdf new file mode 100644 index 0000000000..0b99523c9c Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC207.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC208.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC208.pdf new file mode 100644 index 0000000000..bd03931ed3 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC208.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20a.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20a.pdf new file mode 100644 index 0000000000..8c3fbf6d49 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20c.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20c.pdf new file mode 100644 index 0000000000..4daae236a9 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC20c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC23.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC23.pdf new file mode 100644 index 0000000000..2e1c9ce1a2 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC23.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a1.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a1.pdf new file mode 100644 index 0000000000..a6080963e7 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a4.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a4.pdf new file mode 100644 index 0000000000..f5962ddb21 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24a4.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b1.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b1.pdf new file mode 100644 index 0000000000..9ab21e1710 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b2.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b2.pdf new file mode 100644 index 0000000000..451d3b05e0 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24b2.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c1.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c1.pdf new file mode 100644 index 0000000000..2a713d0602 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c2.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c2.pdf new file mode 100644 index 0000000000..6492822b97 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC24c2.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25a.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25a.pdf new file mode 100644 index 0000000000..dd887d7fff Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25b.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25b.pdf new file mode 100644 index 0000000000..54dd9b92ad Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC25b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26a.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26a.pdf new file mode 100644 index 0000000000..4c1f5d05ce Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26b.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26b.pdf new file mode 100644 index 0000000000..e56ad5eb10 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC26b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC27.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC27.pdf new file mode 100644 index 0000000000..c978130cb5 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC27.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28a.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28a.pdf new file mode 100644 index 0000000000..9462b4c2e3 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28b.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28b.pdf new file mode 100644 index 0000000000..374cf59716 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC28b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29a.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29a.pdf new file mode 100644 index 0000000000..7731474eb2 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29b.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29b.pdf new file mode 100644 index 0000000000..15a38e4c88 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC29b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC3.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC3.pdf new file mode 100644 index 0000000000..905d032d60 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC3.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC30.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC30.pdf new file mode 100644 index 0000000000..114d53e06b Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC30.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4a.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4a.pdf new file mode 100644 index 0000000000..35f65f5eb1 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4b.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4b.pdf new file mode 100644 index 0000000000..9f43936317 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC4b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC5.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC5.pdf new file mode 100644 index 0000000000..d2d579b845 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC5.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC50.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC50.pdf new file mode 100644 index 0000000000..3cf51a02c1 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC50.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC6.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC6.pdf new file mode 100644 index 0000000000..88ac189cb5 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC6.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC62.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC62.pdf new file mode 100644 index 0000000000..38dfb4905a Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC62.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64a.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64a.pdf new file mode 100644 index 0000000000..79ebca0d19 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64b.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64b.pdf new file mode 100644 index 0000000000..9a34544f5c Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64c.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64c.pdf new file mode 100644 index 0000000000..7baa95d808 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d1.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d1.pdf new file mode 100644 index 0000000000..930bc880cd Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d2.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d2.pdf new file mode 100644 index 0000000000..c605533aa2 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC64d2.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC8.pdf b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC8.pdf new file mode 100644 index 0000000000..802a5678a8 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Indication/PanneauRouteC8.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB0.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB0.pdf new file mode 100644 index 0000000000..211d8fea2c Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB0.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB1.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB1.pdf new file mode 100644 index 0000000000..cdb6300368 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB10a.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB10a.pdf new file mode 100644 index 0000000000..58c180aab6 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB10a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB11.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB11.pdf new file mode 100644 index 0000000000..fd62ffbdf6 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB11.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB12.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB12.pdf new file mode 100644 index 0000000000..2f7d62d3ad Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB12.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13.pdf new file mode 100644 index 0000000000..ee31883021 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13a.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13a.pdf new file mode 100644 index 0000000000..35a24a1edb Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB13a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_110.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_110.pdf new file mode 100644 index 0000000000..f4ced24149 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_110.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_130.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_130.pdf new file mode 100644 index 0000000000..28a146e5c2 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_130.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_15.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_15.pdf new file mode 100644 index 0000000000..bc9b6e7e9d Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_15.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_30.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_30.pdf new file mode 100644 index 0000000000..58c8a132b2 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_30.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_50.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_50.pdf new file mode 100644 index 0000000000..c85eb06539 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_50.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_70.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_70.pdf new file mode 100644 index 0000000000..562ef27ce7 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_70.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_90.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_90.pdf new file mode 100644 index 0000000000..3776f04182 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB14_90.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB15.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB15.pdf new file mode 100644 index 0000000000..2114eeaed3 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB15.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB16.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB16.pdf new file mode 100644 index 0000000000..0bf59e9715 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB16.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB17.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB17.pdf new file mode 100644 index 0000000000..373118598a Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB17.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18a.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18a.pdf new file mode 100644 index 0000000000..b69ed5d119 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18b.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18b.pdf new file mode 100644 index 0000000000..e0724dcd56 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18c.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18c.pdf new file mode 100644 index 0000000000..cbe96581b4 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB18c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB19.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB19.pdf new file mode 100644 index 0000000000..99398cc337 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB19.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2a.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2a.pdf new file mode 100644 index 0000000000..76cfbd6e8c Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2b.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2b.pdf new file mode 100644 index 0000000000..d61b6a589b Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2c.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2c.pdf new file mode 100644 index 0000000000..78f7b57824 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB2c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3.pdf new file mode 100644 index 0000000000..96b023afbd Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB31.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB31.pdf new file mode 100644 index 0000000000..683ec52238 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB31.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_110.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_110.pdf new file mode 100644 index 0000000000..6da3781893 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_110.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_130.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_130.pdf new file mode 100644 index 0000000000..25ce0d0f0c Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_130.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_15.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_15.pdf new file mode 100644 index 0000000000..dc2450bd7b Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_15.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_30.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_30.pdf new file mode 100644 index 0000000000..cb74c2abba Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_30.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_50.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_50.pdf new file mode 100644 index 0000000000..3d10b9921e Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_50.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_70.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_70.pdf new file mode 100644 index 0000000000..69615f7303 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_70.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_90.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_90.pdf new file mode 100644 index 0000000000..f6c29ffc84 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB33_90.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34.pdf new file mode 100644 index 0000000000..fc7b3f7b58 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34a.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34a.pdf new file mode 100644 index 0000000000..5a81ce0807 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB34a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB35.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB35.pdf new file mode 100644 index 0000000000..b3700170a6 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB35.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB39.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB39.pdf new file mode 100644 index 0000000000..edf1f5b4f3 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB39.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3a.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3a.pdf new file mode 100644 index 0000000000..f001fb869a Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB3a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB4.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB4.pdf new file mode 100644 index 0000000000..f8edc0f6e2 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB4.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5a.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5a.pdf new file mode 100644 index 0000000000..3b7a2d9d86 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5b.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5b.pdf new file mode 100644 index 0000000000..788f1b1fbd Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5c.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5c.pdf new file mode 100644 index 0000000000..6a260ae5a7 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB5c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a1.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a1.pdf new file mode 100644 index 0000000000..3e3c108d20 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a2.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a2.pdf new file mode 100644 index 0000000000..e343e719ae Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a2.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a3.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a3.pdf new file mode 100644 index 0000000000..c8f6d1005e Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6a3.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6d.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6d.pdf new file mode 100644 index 0000000000..ab05fe1628 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB6d.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7a.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7a.pdf new file mode 100644 index 0000000000..6c5689535d Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7b.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7b.pdf new file mode 100644 index 0000000000..d90b523601 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB7b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB8.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB8.pdf new file mode 100644 index 0000000000..0d0729eb2e Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB8.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9a.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9a.pdf new file mode 100644 index 0000000000..ddb7f8cdf6 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9b.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9b.pdf new file mode 100644 index 0000000000..6b0cedd1d9 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9c.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9c.pdf new file mode 100644 index 0000000000..329cc9741e Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9d.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9d.pdf new file mode 100644 index 0000000000..581cb411b5 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9d.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9e.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9e.pdf new file mode 100644 index 0000000000..654b46988f Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9e.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9f.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9f.pdf new file mode 100644 index 0000000000..025f7180d4 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9f.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9g.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9g.pdf new file mode 100644 index 0000000000..daeafa6e98 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9g.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9h.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9h.pdf new file mode 100644 index 0000000000..55792ae44a Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9h.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9i.pdf b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9i.pdf new file mode 100644 index 0000000000..6d325a7607 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Interdiction/PanneauRouteB9i.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB1.pdf b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB1.pdf new file mode 100644 index 0000000000..8f56c18fb8 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB2.pdf b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB2.pdf new file mode 100644 index 0000000000..3d5ddbee12 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB2.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB25.pdf b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB25.pdf new file mode 100644 index 0000000000..46bf1752ab Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB25.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3a.pdf b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3a.pdf new file mode 100644 index 0000000000..d19af15df9 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3b.pdf b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3b.pdf new file mode 100644 index 0000000000..615ae1f21e Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB3b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB4.pdf b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB4.pdf new file mode 100644 index 0000000000..a39ae1a79e Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB4.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB5.pdf b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB5.pdf new file mode 100644 index 0000000000..74111dde53 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB5.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB6.pdf b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB6.pdf new file mode 100644 index 0000000000..4978b6fdf7 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB6.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB7.pdf b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB7.pdf new file mode 100644 index 0000000000..a1c89b7c38 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/IntersectionPriorite/PanneauRouteAB7.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-1.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-1.pdf new file mode 100644 index 0000000000..e87280e678 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-2.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-2.pdf new file mode 100644 index 0000000000..9efe15a119 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21-2.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a1.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a1.pdf new file mode 100644 index 0000000000..ce5162a3ac Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a2.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a2.pdf new file mode 100644 index 0000000000..22433150d3 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21a2.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21b.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21b.pdf new file mode 100644 index 0000000000..293a33e6ba Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c1.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c1.pdf new file mode 100644 index 0000000000..e9edc1a363 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c2.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c2.pdf new file mode 100644 index 0000000000..2f73fed73c Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21c2.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d1.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d1.pdf new file mode 100644 index 0000000000..30fc1574f7 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d2.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d2.pdf new file mode 100644 index 0000000000..a446737f0d Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21d2.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21e.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21e.pdf new file mode 100644 index 0000000000..3284c70af9 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB21e.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22a.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22a.pdf new file mode 100644 index 0000000000..94729e6d93 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22b.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22b.pdf new file mode 100644 index 0000000000..bae943870f Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22c.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22c.pdf new file mode 100644 index 0000000000..32bc92e577 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB22c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB25.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB25.pdf new file mode 100644 index 0000000000..aa7d83f7b6 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB25.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB26.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB26.pdf new file mode 100644 index 0000000000..4cb051c4a2 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB26.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27a.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27a.pdf new file mode 100644 index 0000000000..e4d3006b73 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27b.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27b.pdf new file mode 100644 index 0000000000..d60d0fee60 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB27b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB29.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB29.pdf new file mode 100644 index 0000000000..c835c2ef57 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB29.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB40.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB40.pdf new file mode 100644 index 0000000000..82ed982c17 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB40.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB41.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB41.pdf new file mode 100644 index 0000000000..dcc11270d5 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB41.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB42.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB42.pdf new file mode 100644 index 0000000000..499c650517 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB42.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB43.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB43.pdf new file mode 100644 index 0000000000..d6a9bc9cd2 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB43.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB44.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB44.pdf new file mode 100644 index 0000000000..70b218d82c Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB44.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB45a.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB45a.pdf new file mode 100644 index 0000000000..58f0d23b3d Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB45a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB49.pdf b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB49.pdf new file mode 100644 index 0000000000..016aa2324a Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Obligation/PanneauRouteB49.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/PanneauxRoute.sty b/macros/latex/contrib/panneauxroute/tex/PanneauxRoute.sty new file mode 100644 index 0000000000..d94943962b --- /dev/null +++ b/macros/latex/contrib/panneauxroute/tex/PanneauxRoute.sty @@ -0,0 +1,216 @@ +% Author.........: C. Pierquet +% licence........: Released under the LaTeX Project Public License v1.3c or later, see http://www.latex-project.org/lppl.txtf +% Sources........: https://www.geoinformations.developpement-durable.gouv.fr/panneaux-routiers-au-format-svg-et-png-par-a2688.html +% : https://equipementsdelaroute.cerema.fr/version-consolidee-de-l-arrete-du-24-novembre-1967-a537.html +% : Licence CC BY-SA 3.0 for svg source (http://sig974.free.fr/?p=1520) + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{PanneauxRoute}[2023/08/14 v0.1.0 Panneaux de signalisation fr] +% 0.1.0 Version initiale + +%------Packages utiles +\RequirePackage{graphicx} + +%-----Commande générique +\NewDocumentCommand\AffPanneau{ O{height=1.15cm} m }{% + \IfFileExists{PanneauRoute#2.pdf}{\includegraphics[#1]{PanneauRoute#2.pdf}}{}% +} + +%----Aliases +\NewDocumentCommand\prVirDroit{ O{height=1.15cm} }{\AffPanneau[#1]{A1a}} +\NewDocumentCommand\prVirGauche{ O{height=1.15cm} }{\AffPanneau[#1]{A1b}} +\NewDocumentCommand\prVirsDroit{ O{height=1.15cm} }{\AffPanneau[#1]{A1c}} +\NewDocumentCommand\prVirsGauche{ O{height=1.15cm} }{\AffPanneau[#1]{A1d}} +\NewDocumentCommand\prDosAne{ O{height=1.15cm} }{\AffPanneau[#1]{A2a}} +\NewDocumentCommand\prRalDosAne{ O{height=1.15cm} }{\AffPanneau[#1]{A2b}} +\NewDocumentCommand\prChausRet{ O{height=1.15cm} }{\AffPanneau[#1]{A3}} +\NewDocumentCommand\prChausRetD{ O{height=1.15cm} }{\AffPanneau[#1]{A3a}} +\NewDocumentCommand\prChausRetG{ O{height=1.15cm} }{\AffPanneau[#1]{A3b}} +\NewDocumentCommand\prChaussGliss{ O{height=1.15cm} }{\AffPanneau[#1]{A4}} +\NewDocumentCommand\prPontMob{ O{height=1.15cm} }{\AffPanneau[#1]{A6}} +\NewDocumentCommand\prPassNiv{ O{height=1.15cm} }{\AffPanneau[#1]{A7}} +\NewDocumentCommand\prPassNivVap{ O{height=1.15cm} }{\AffPanneau[#1]{A8}} +\NewDocumentCommand\prPassTram{ O{height=1.15cm} }{\AffPanneau[#1]{A9}} +\NewDocumentCommand\prEnfants{ O{height=1.15cm} }{\AffPanneau[#1]{A13a}} +\NewDocumentCommand\prPietons{ O{height=1.15cm} }{\AffPanneau[#1]{A13b}} +\NewDocumentCommand\prDanger{ O{height=1.15cm} }{\AffPanneau[#1]{A14}} +\NewDocumentCommand\prAnimaux{ O{height=1.15cm} }{\AffPanneau[#1]{A15a1}} +\NewDocumentCommand\prAnimauxSauv{ O{height=1.15cm} }{\AffPanneau[#1]{A15b}} +\NewDocumentCommand\prCavaliers{ O{height=1.15cm} }{\AffPanneau[#1]{A15c}} +\NewDocumentCommand\prDescente{ O{height=1.15cm} }{\AffPanneau[#1]{A16}} +\NewDocumentCommand\prFeux{ O{height=1.15cm} }{\AffPanneau[#1]{A17}} +\NewDocumentCommand\prDeuxSens{ O{height=1.15cm} }{\AffPanneau[#1]{A18}} +\NewDocumentCommand\prChute{ O{height=1.15cm} }{\AffPanneau[#1]{A19}} +\NewDocumentCommand\prQuai{ O{height=1.15cm} }{\AffPanneau[#1]{A20}} +\NewDocumentCommand\prVelos{ O{height=1.15cm} }{\AffPanneau[#1]{A21}} +\NewDocumentCommand\prAvions{ O{height=1.15cm} }{\AffPanneau[#1]{A23}} +\NewDocumentCommand\prVent{ O{height=1.15cm} }{\AffPanneau[#1]{A24}} + +\NewDocumentCommand\prIntersect{ O{height=1.15cm} }{\AffPanneau[#1]{AB1}} +\NewDocumentCommand\prIntersectPrio{ O{height=1.15cm} }{\AffPanneau[#1]{AB2}} +\NewDocumentCommand\prCedez{ O{height=1.15cm} }{\AffPanneau[#1]{AB3a}} +\NewDocumentCommand\prCedezInter{ O{height=1.15cm} }{\AffPanneau[#1]{AB3b}} +\NewDocumentCommand\prStop{ O{height=1.15cm} }{\AffPanneau[#1]{AB4}} +\NewDocumentCommand\prArretInter{ O{height=1.15cm} }{\AffPanneau[#1]{AB5}} +\NewDocumentCommand\prRoutePrio{ O{height=1.15cm} }{\AffPanneau[#1]{AB6}} +\NewDocumentCommand\prFinRoutePrio{ O{height=1.15cm} }{\AffPanneau[#1]{AB7}} +\NewDocumentCommand\prRondPoint{ O{height=1.15cm} }{\AffPanneau[#1]{AB25}} + +\NewDocumentCommand\prCircInterd{ O{height=1.15cm} }{\AffPanneau[#1]{B0}} +\NewDocumentCommand\prSensInterdit{ O{height=1.15cm} }{\AffPanneau[#1]{B1}} +\NewDocumentCommand\prInterdTournG{ O{height=1.15cm} }{\AffPanneau[#1]{B2a}} +\NewDocumentCommand\prInterdTournD{ O{height=1.15cm} }{\AffPanneau[#1]{B2b}} +\NewDocumentCommand\prInterdDemiTour{ O{height=1.15cm} }{\AffPanneau[#1]{B2c}} +\NewDocumentCommand\prInterdDepass{ O{height=1.15cm} }{\AffPanneau[#1]{B31}} +\NewDocumentCommand\prInterdVehic{ O{height=1.15cm} }{\AffPanneau[#1]{B3a}} +\NewDocumentCommand\prHalteDouane{ O{height=1.15cm} }{\AffPanneau[#1]{B4}} +\NewDocumentCommand\prHalteGendarm{ O{height=1.15cm} }{\AffPanneau[#1]{B5a}} +\NewDocumentCommand\prHaltePolice{ O{height=1.15cm} }{\AffPanneau[#1]{B5b}} +\NewDocumentCommand\prHaltePeage{ O{height=1.15cm} }{\AffPanneau[#1]{B5c}} +\NewDocumentCommand\prStationInterd{ O{height=1.15cm} }{\AffPanneau[#1]{B6a1}} +\NewDocumentCommand\prStationInterdQA{ O{height=1.15cm} }{\AffPanneau[#1]{B6a2}} +\NewDocumentCommand\prStationInterdQB{ O{height=1.15cm} }{\AffPanneau[#1]{B6a3}} +\NewDocumentCommand\prArStatInterd{ O{height=1.15cm} }{\AffPanneau[#1]{B6d}} +\NewDocumentCommand\prInterdMotSaufCyc{ O{height=1.15cm} }{\AffPanneau[#1]{B7a}} +\NewDocumentCommand\prInterdMot{ O{height=1.15cm} }{\AffPanneau[#1]{B7b}} +\NewDocumentCommand\prInterdMarchand{ O{height=1.15cm} }{\AffPanneau[#1]{B8}} +\NewDocumentCommand\prInterdPietons{ O{height=1.15cm} }{\AffPanneau[#1]{B9a}} +\NewDocumentCommand\prInterdCycles{ O{height=1.15cm} }{\AffPanneau[#1]{B9b}} +\NewDocumentCommand\prInterdTracAnim{ O{height=1.15cm} }{\AffPanneau[#1]{B9c}} +\NewDocumentCommand\prInterdAgricMot{ O{height=1.15cm} }{\AffPanneau[#1]{B9d}} +\NewDocumentCommand\prInterdBras{ O{height=1.15cm} }{\AffPanneau[#1]{B9e}} +\NewDocumentCommand\prInterdTranspComm{ O{height=1.15cm} }{\AffPanneau[#1]{B9f}} +\NewDocumentCommand\prInterdCyclomot{ O{height=1.15cm} }{\AffPanneau[#1]{B9g}} +\NewDocumentCommand\prInterdCycloMoto{ O{height=1.15cm} }{\AffPanneau[#1]{B9h}} +\NewDocumentCommand\prInterdCaravanes{ O{height=1.15cm} }{\AffPanneau[#1]{B9i}} +\NewDocumentCommand\prInterdLong{ O{height=1.15cm} }{\AffPanneau[#1]{B10a}} +\NewDocumentCommand\prInterdLarg{ O{height=1.15cm} }{\AffPanneau[#1]{B11}} +\NewDocumentCommand\prInterdHaut{ O{height=1.15cm} }{\AffPanneau[#1]{B12}} +\NewDocumentCommand\prInterdPoids{ O{height=1.15cm} }{\AffPanneau[#1]{B13}} +\NewDocumentCommand\prInterdPoidsEssieu{ O{height=1.15cm} }{\AffPanneau[#1]{B13a}} +\NewDocumentCommand\prLimVites{ O{height=1.15cm} m }{\AffPanneau[#1]{B14_#2}} +\NewDocumentCommand\prCedezInv{ O{height=1.15cm} }{\AffPanneau[#1]{B15}} +\NewDocumentCommand\prInterdSons{ O{height=1.15cm} }{\AffPanneau[#1]{B16}} +\NewDocumentCommand\prDistance{ O{height=1.15cm} }{\AffPanneau[#1]{B17}} +\NewDocumentCommand\prExplos{ O{height=1.15cm} }{\AffPanneau[#1]{B18a}} +\NewDocumentCommand\prPollu{ O{height=1.15cm} }{\AffPanneau[#1]{B18b}} +\NewDocumentCommand\prDangereuses{ O{height=1.15cm} }{\AffPanneau[#1]{B18c}} + +\NewDocumentCommand\prObliAvDroite{ O{height=1.15cm} }{\AffPanneau[#1]{B21-1}} +\NewDocumentCommand\prObliAvGauche{ O{height=1.15cm} }{\AffPanneau[#1]{B21-2}} +\NewDocumentCommand\prContournDroite{ O{height=1.15cm} }{\AffPanneau[#1]{B21a1}} +\NewDocumentCommand\prContournGauche{ O{height=1.15cm} }{\AffPanneau[#1]{B21a2}} +\NewDocumentCommand\prToutDroit{ O{height=1.15cm} }{\AffPanneau[#1]{B21b}} +\NewDocumentCommand\prObliDroite{ O{height=1.15cm} }{\AffPanneau[#1]{B21c1}} +\NewDocumentCommand\prObliGauche{ O{height=1.15cm} }{\AffPanneau[#1]{B21c2}} +\NewDocumentCommand\prObliToutDroite{ O{height=1.15cm} }{\AffPanneau[#1]{B21d1}} +\NewDocumentCommand\prObliToutGauche{ O{height=1.15cm} }{\AffPanneau[#1]{B21d2}} +\NewDocumentCommand\prObliDroiteGauche{ O{height=1.15cm} }{\AffPanneau[#1]{B21e}} +\NewDocumentCommand\prObliCycles{ O{height=1.15cm} }{\AffPanneau[#1]{B22a}} +\NewDocumentCommand\prObliPietons{ O{height=1.15cm} }{\AffPanneau[#1]{B22b}} +\NewDocumentCommand\prObliCavaliers{ O{height=1.15cm} }{\AffPanneau[#1]{B22c}} +\NewDocumentCommand\prObliVitesse{ O{height=1.15cm} }{\AffPanneau[#1]{B25}} +\NewDocumentCommand\prObliChaines{ O{height=1.15cm} }{\AffPanneau[#1]{B26}} +\NewDocumentCommand\prObliBus{ O{height=1.15cm} }{\AffPanneau[#1]{B27a}} +\NewDocumentCommand\prObliTrams{ O{height=1.15cm} }{\AffPanneau[#1]{B27b}} + +\NewDocumentCommand\prFinInterd{ O{height=1.15cm} }{\AffPanneau[#1]{B31}} +\NewDocumentCommand\prFinLimVit{ O{height=1.15cm} m }{\AffPanneau[#1]{B33_#2}} +\NewDocumentCommand\prFinIntDepass{ O{height=1.15cm} }{\AffPanneau[#1]{B34}} +\NewDocumentCommand\prFinIntDepassCam{ O{height=1.15cm} }{\AffPanneau[#1]{B34a}} +\NewDocumentCommand\prFinIntSons{ O{height=1.15cm} }{\AffPanneau[#1]{B35}} + +\NewDocumentCommand\prFinPisteOblCycl{ O{height=1.15cm} }{\AffPanneau[#1]{B40}} +\NewDocumentCommand\prFinChemPiet{ O{height=1.15cm} }{\AffPanneau[#1]{B41}} +\NewDocumentCommand\prFinChemCav{ O{height=1.15cm} }{\AffPanneau[#1]{B42}} +\NewDocumentCommand\prFinVitObli{ O{height=1.15cm} }{\AffPanneau[#1]{B43}} +\NewDocumentCommand\prFinChaines{ O{height=1.15cm} }{\AffPanneau[#1]{B44}} +\NewDocumentCommand\prFinVoieBus{ O{height=1.15cm} }{\AffPanneau[#1]{B45a}} + +\NewDocumentCommand\prParking{ O{height=1.15cm} }{\AffPanneau[#1]{C1a}} +\NewDocumentCommand\prParkDisq{ O{height=1.15cm} }{\AffPanneau[#1]{C1b}} +\NewDocumentCommand\prParkPay{ O{height=1.15cm} }{\AffPanneau[#1]{C1c}} +\NewDocumentCommand\prIncendie{ O{height=1.15cm} }{\AffPanneau[#1]{C3}} +\NewDocumentCommand\prVitConseil{ O{height=1.15cm} }{\AffPanneau[#1]{C4a}} +\NewDocumentCommand\prFinVitConseil{ O{height=1.15cm} }{\AffPanneau[#1]{C4b}} +\NewDocumentCommand\prTaxis{ O{height=1.15cm} }{\AffPanneau[#1]{C5}} +\NewDocumentCommand\prArretBus{ O{height=1.15cm} }{\AffPanneau[#1]{B49}} +\NewDocumentCommand\prArretUrg{ O{height=1.15cm} }{\AffPanneau[#1]{C8}} +\NewDocumentCommand\prCircSensUniq{ O{height=1.15cm} }{\AffPanneau[#1]{C12}} +\NewDocumentCommand\prImpasse{ O{height=1.15cm} }{\AffPanneau[#1]{C13a}} +\NewDocumentCommand\prPreImpasse{ O{height=1.15cm} }{\AffPanneau[#1]{C13b}} +\NewDocumentCommand\prPriorSensInv{ O{height=1.15cm} }{\AffPanneau[#1]{C18}} +\NewDocumentCommand\prPassPietons{ O{height=1.15cm} }{\AffPanneau[#1]{C20a}} +\NewDocumentCommand\prTravTrams{ O{height=1.15cm} }{\AffPanneau[#1]{C20c}} +\NewDocumentCommand\prStatCarav{ O{height=1.15cm} }{\AffPanneau[#1]{C23}} +\NewDocumentCommand\prVoiesAffA{ O{height=1.15cm} }{\AffPanneau[#1]{C24a1}} +\NewDocumentCommand\prVoiesAffB{ O{height=1.15cm} }{\AffPanneau[#1]{C24a4}} +\NewDocumentCommand\prVoiesAffC{ O{height=1.15cm} }{\AffPanneau[#1]{C24b1}} +\NewDocumentCommand\prVoiesAffD{ O{height=1.15cm} }{\AffPanneau[#1]{C24b2}} +\NewDocumentCommand\prVoiesAffE{ O{height=1.15cm} }{\AffPanneau[#1]{C24c1}} +\NewDocumentCommand\prVoiesAffF{ O{height=1.15cm} }{\AffPanneau[#1]{C24c2}} +\NewDocumentCommand\prVitFront{ O{height=1.15cm} }{\AffPanneau[#1]{C25a}} +\NewDocumentCommand\prVitAutor{ O{height=1.15cm} }{\AffPanneau[#1]{C25b}} +\NewDocumentCommand\prDetresseD{ O{height=1.15cm} }{\AffPanneau[#1]{C26a}} +\NewDocumentCommand\prDetresseG{ O{height=1.15cm} }{\AffPanneau[#1]{C26b}} +\NewDocumentCommand\prChausseSur{ O{height=1.15cm} }{\AffPanneau[#1]{C27}} +\NewDocumentCommand\prReducVoieA{ O{height=1.15cm} }{\AffPanneau[#1]{C28a}} +\NewDocumentCommand\prReducVoieB{ O{height=1.15cm} }{\AffPanneau[#1]{C28b}} +\NewDocumentCommand\prCreneauDepas{ O{height=1.15cm} }{\AffPanneau[#1]{C29b}} +\NewDocumentCommand\prFinCreneauDepas{ O{height=1.15cm} }{\AffPanneau[#1]{C30}} + +\NewDocumentCommand\prTickPeage{ O{height=1.15cm} }{\AffPanneau[#1]{B49}} +\NewDocumentCommand\prPaiemPeage{ O{height=1.15cm} }{\AffPanneau[#1]{C64a}} +\NewDocumentCommand\prPaiemCB{ O{height=1.15cm} }{\AffPanneau[#1]{C64b}} +\NewDocumentCommand\prPaiemPieces{ O{height=1.15cm} }{\AffPanneau[#1]{C64c}} +\NewDocumentCommand\prPaiemPiecBil{ O{height=1.15cm} }{\AffPanneau[#1]{C64d1}} +\NewDocumentCommand\prPaiemTelepeage{ O{height=1.15cm} }{\AffPanneau[#1]{C64d2}} +\NewDocumentCommand\prRouteRegl{ O{height=1.15cm} }{\AffPanneau[#1]{C107}} +\NewDocumentCommand\prFinRouteRegl{ O{height=1.15cm} }{\AffPanneau[#1]{C108}} +\NewDocumentCommand\prEntrTunnel{ O{height=1.15cm} }{\AffPanneau[#1]{C111}} +\NewDocumentCommand\prSortieTunnel{ O{height=1.15cm} }{\AffPanneau[#1]{C112}} +\NewDocumentCommand\prPisteCycl{ O{height=1.15cm} }{\AffPanneau[#1]{C113}} +\NewDocumentCommand\prFinPisteCycl{ O{height=1.15cm} }{\AffPanneau[#1]{C114}} +\NewDocumentCommand\prVoieVerte{ O{height=1.15cm} }{\AffPanneau[#1]{C115}} +\NewDocumentCommand\prFinVoieVerte{ O{height=1.15cm} }{\AffPanneau[#1]{C116}} +\NewDocumentCommand\prDebAutor{ O{height=1.15cm} }{\AffPanneau[#1]{C207}} +\NewDocumentCommand\prFinAutor{ O{height=1.15cm} }{\AffPanneau[#1]{C208}} + +\NewDocumentCommand\prPosteSecours{ O{height=1.15cm} }{\AffPanneau[#1]{CE1}} +\NewDocumentCommand\prPosteSecUrg{ O{height=1.15cm} }{\AffPanneau[#1]{CE2a}} +\NewDocumentCommand\prCabineTel{ O{height=1.15cm} }{\AffPanneau[#1]{CE2b}} +\NewDocumentCommand\prInfos{ O{height=1.15cm} }{\AffPanneau[#1]{CE3a}} +\NewDocumentCommand\prCampingT{ O{height=1.15cm} }{\AffPanneau[#1]{CE4a}} +\NewDocumentCommand\prCampingC{ O{height=1.15cm} }{\AffPanneau[#1]{CE4b}} +\NewDocumentCommand\prCampingTC{ O{height=1.15cm} }{\AffPanneau[#1]{CE4c}} +\NewDocumentCommand\prAubergJeun{ O{height=1.15cm} }{\AffPanneau[#1]{CE5a}} +\NewDocumentCommand\prGite{ O{height=1.15cm} }{\AffPanneau[#1]{CE5b}} +\NewDocumentCommand\prItinPedest{ O{height=1.15cm} }{\AffPanneau[#1]{CE6a}} +\NewDocumentCommand\prItinSkiFond{ O{height=1.15cm} }{\AffPanneau[#1]{CE6b}} +\NewDocumentCommand\prPicNic{ O{height=1.15cm} }{\AffPanneau[#1]{CE7}} +\NewDocumentCommand\prGareAutoTrain{ O{height=1.15cm} }{\AffPanneau[#1]{CE8}} +\NewDocumentCommand\prParkVideo{ O{height=1.15cm} }{\AffPanneau[#1]{CE9}} +\NewDocumentCommand\prEmbarcad{ O{height=1.15cm} }{\AffPanneau[#1]{CE10}} +\NewDocumentCommand\prToilettes{ O{height=1.15cm} }{\AffPanneau[#1]{CE12}} +\NewDocumentCommand\prAccesHandic{ O{height=1.15cm} }{\AffPanneau[#1]{CE14}} +\NewDocumentCommand\prEssence{ O{height=1.15cm} }{\AffPanneau[#1]{CE15a}} +\NewDocumentCommand\prEssenceGPL{ O{height=1.15cm} }{\AffPanneau[#1]{CE15c}} +\NewDocumentCommand\prRestau{ O{height=1.15cm} }{\AffPanneau[#1]{CE16}} +\NewDocumentCommand\prHotel{ O{height=1.15cm} }{\AffPanneau[#1]{CE17}} +\NewDocumentCommand\prBoissons{ O{height=1.15cm} }{\AffPanneau[#1]{CE18}} +\NewDocumentCommand\prEmbarcLeg{ O{height=1.15cm} }{\AffPanneau[#1]{CE19}} +\NewDocumentCommand\prTelepher{ O{height=1.15cm} }{\AffPanneau[#1]{CE20a}} +\NewDocumentCommand\prTelecabin{ O{height=1.15cm} }{\AffPanneau[#1]{CE20b}} +\NewDocumentCommand\prPointVue{ O{height=1.15cm} }{\AffPanneau[#1]{CE21}} +\NewDocumentCommand\prRadio{ O{height=1.15cm} }{\AffPanneau[#1]{CE22}} +\NewDocumentCommand\prJeuxEnfants{ O{height=1.15cm} }{\AffPanneau[#1]{CE23}} +\NewDocumentCommand\prVidange{ O{height=1.15cm} }{\AffPanneau[#1]{CE24}} +\NewDocumentCommand\prDistribBill{ O{height=1.15cm} }{\AffPanneau[#1]{CE25}} +\NewDocumentCommand\prGonflage{ O{height=1.15cm} }{\AffPanneau[#1]{CE26}} +\NewDocumentCommand\prDetente{ O{height=1.15cm} }{\AffPanneau[#1]{CE27}} +\NewDocumentCommand\prPosteDepann{ O{height=1.15cm} }{\AffPanneau[#1]{CE28}} +\NewDocumentCommand\prLutteIncendie{ O{height=1.15cm} }{\AffPanneau[#1]{CE29}} +\NewDocumentCommand\prIssueSecD{ O{height=1.15cm} }{\AffPanneau[#1]{CE30a}} +\NewDocumentCommand\prIssueSecG{ O{height=1.15cm} }{\AffPanneau[#1]{CE30b}} + +\endinput \ No newline at end of file diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE1.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE1.pdf new file mode 100644 index 0000000000..7c7bb5115c Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE1.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE10.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE10.pdf new file mode 100644 index 0000000000..c35266798e Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE10.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE12.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE12.pdf new file mode 100644 index 0000000000..10140972d8 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE12.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE14.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE14.pdf new file mode 100644 index 0000000000..3b9f43ea99 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE14.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15a.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15a.pdf new file mode 100644 index 0000000000..9bac127512 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15c.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15c.pdf new file mode 100644 index 0000000000..63ff2daba8 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE15c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE16.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE16.pdf new file mode 100644 index 0000000000..acd7f34833 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE16.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE17.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE17.pdf new file mode 100644 index 0000000000..84c7d0037b Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE17.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE18.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE18.pdf new file mode 100644 index 0000000000..7700e0fb78 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE18.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE19.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE19.pdf new file mode 100644 index 0000000000..b474163a57 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE19.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20a.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20a.pdf new file mode 100644 index 0000000000..9a071baa4a Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20b.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20b.pdf new file mode 100644 index 0000000000..dde5d9d938 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE20b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE21.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE21.pdf new file mode 100644 index 0000000000..031988f278 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE21.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE22.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE22.pdf new file mode 100644 index 0000000000..1a242e42e5 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE22.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE23.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE23.pdf new file mode 100644 index 0000000000..8bad81a89a Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE23.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE24.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE24.pdf new file mode 100644 index 0000000000..d33aff160d Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE24.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE25.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE25.pdf new file mode 100644 index 0000000000..28c50798ac Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE25.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE26.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE26.pdf new file mode 100644 index 0000000000..0a90b28a7c Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE26.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE27.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE27.pdf new file mode 100644 index 0000000000..96a9b487c0 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE27.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE28.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE28.pdf new file mode 100644 index 0000000000..50f2936de6 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE28.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE29.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE29.pdf new file mode 100644 index 0000000000..3b3cd88e7d Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE29.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2a.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2a.pdf new file mode 100644 index 0000000000..7b62579c50 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2b.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2b.pdf new file mode 100644 index 0000000000..596754b012 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE2b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30a.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30a.pdf new file mode 100644 index 0000000000..86794c1f36 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30b.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30b.pdf new file mode 100644 index 0000000000..bd344793e6 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE30b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE3a.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE3a.pdf new file mode 100644 index 0000000000..d73799c2ad Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE3a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4a.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4a.pdf new file mode 100644 index 0000000000..0bc772dd09 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4b.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4b.pdf new file mode 100644 index 0000000000..4af21d43a8 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4c.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4c.pdf new file mode 100644 index 0000000000..06cb5601ad Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE4c.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE50.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE50.pdf new file mode 100644 index 0000000000..d54dab5807 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE50.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5a.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5a.pdf new file mode 100644 index 0000000000..6250e9a3f3 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5b.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5b.pdf new file mode 100644 index 0000000000..62d8e3c7db Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE5b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6a.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6a.pdf new file mode 100644 index 0000000000..d98df54549 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6a.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6b.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6b.pdf new file mode 100644 index 0000000000..50a48a72f3 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE6b.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE7.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE7.pdf new file mode 100644 index 0000000000..7f7274f575 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE7.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE8.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE8.pdf new file mode 100644 index 0000000000..364fb5982c Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE8.pdf differ diff --git a/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE9.pdf b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE9.pdf new file mode 100644 index 0000000000..16a8f835f5 Binary files /dev/null and b/macros/latex/contrib/panneauxroute/tex/Services/PanneauRouteCE9.pdf differ diff --git a/macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf b/macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf index fe2337ad5b..3b1cda34d7 100644 Binary files a/macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf and b/macros/latex/contrib/profcollege/doc/ProfCollege-doc.pdf differ diff --git a/macros/latex/contrib/profcollege/latex/PfCCalculatrice.tex b/macros/latex/contrib/profcollege/latex/PfCCalculatrice.tex index 79ffe0f582..8a7efd3342 100644 --- a/macros/latex/contrib/profcollege/latex/PfCCalculatrice.tex +++ b/macros/latex/contrib/profcollege/latex/PfCCalculatrice.tex @@ -111,20 +111,21 @@ % #1 Calcul %2 r\'eponse \ifluatex \mplibnumbersystem{double} - \mplibforcehmode% - \begin{mplibcode}% - input PfCCalculatrice; - LargeurEcran:=\useKV[ClesCalculatrice]{Largeur}; - boolean Calcul; - Calcul=\useKV[ClesCalculatrice]{Calcul}; - LCD(#1)(#2)(#3); - \end{mplibcode} + \mplibforcehmode% + \begin{mplibcode}% + input PfCCalculatrice; + LargeurEcran:=\useKV[ClesCalculatrice]{Largeur}; + boolean Calcul; + Calcul=\useKV[ClesCalculatrice]{Calcul}; + LCD(#1)(#2)(#3); + \end{mplibcode} + \mplibnumbersystem{scaled} \else - \begin{mpost}[mpsettings={input PfCCalculatrice;LargeurEcran:=\useKV[ClesCalculatrice]{Largeur};}] - LCD(#1)(#2)(#3); - \end{mpost} + \begin{mpost}[mpsettings={input PfCCalculatrice;LargeurEcran:=\useKV[ClesCalculatrice]{Largeur};}] + LCD(#1)(#2)(#3); + \end{mpost} \fi -} +}% \setKVdefault[ClesCalculatrice]{Ecran=false,NbLignes=0,BL=0.775,Largeur=120,Calcul=false} diff --git a/macros/latex/contrib/profcollege/latex/PfCCalculsCroises.tex b/macros/latex/contrib/profcollege/latex/PfCCalculsCroises.tex index da114a33f2..a29f47f9af 100644 --- a/macros/latex/contrib/profcollege/latex/PfCCalculsCroises.tex +++ b/macros/latex/contrib/profcollege/latex/PfCCalculsCroises.tex @@ -1,19 +1,22 @@ %%% % Calculs Croises %%% -\setKVdefault[CalculsCroises]{Largeur=20pt,Solution=false,Inverse=false,Creation=false,Graines=false,Vide=false,Couleur=LightGray,Negatifs=false,Aide=false} +\setKVdefault[CalculsCroises]{Largeur=20pt,Solution=false,Inverse=false,Creation=false,Graines=false,Vide=false,Couleur=LightGray,Negatifs=false,Aide=false,CouleurS=blue} \defKV[CalculsCroises]{Graine=\setKV[CalculsCroises]{Graines}}% \defKV[CalculsCroises]{ListeNombres=\setKV[CalculsCroises]{Aide}}% \newlength\PfCCalculsCroises% +\newcounter{CCRetiensAide}% + \NewDocumentCommand\CalculsCroises{o m}{% \useKVdefault[CalculsCroises]% \savecomparemode% \comparestrict% \setKV[CalculsCroises]{#1}% \colorlet{PfCCouleurCC}{\useKV[CalculsCroises]{Couleur}}% + \colorlet{PfCCouleurCCS}{\useKV[CalculsCroises]{CouleurS}}% \setlength{\PfCCalculsCroises}{\useKV[CalculsCroises]{Largeur}+\tabcolsep}% - \ifboolKV[CalculsCroises]{Inverse}{\setKV[CalculsCroises]{Solution}}{}% + \ifboolKV[CalculsCroises]{Inverse}{\setKV[CalculsCroises]{Solution}\colorlet{PfCCouleurCCS}{black}}{}% \ifboolKV[CalculsCroises]{Creation}{% \ifboolKV[CalculsCroises]{Graines}{\PfCGraineAlea{\useKV[CalculsCroises]{Graine}}}{}% \ifboolKV[CalculsCroises]{Negatifs}{% @@ -24,70 +27,145 @@ \MelangeListe{\PfCCCFoo}{9}% \setsepchar{,}% \readlist*\PfCListeCCNb{\faa}% - \readlist*\PfCListeCCOp{#2}% + \readlist*\PfCListeCCOpRetiens{#2}% + \xdef\PfCFoo{}% + \xintFor* ##1 in{\xintSeq{1}{3}}\do{% + \xintifForLast{\xdef\PfCFoo{\PfCFoo,\PfCListeCCNb[##1],\PfCListeCCOpRetiens[##1],\PfCListeCCOpRetiens[\fpeval{##1+1}],\PfCListeCCOpRetiens[\fpeval{##1+2}]}}{\xdef\PfCFoo{\PfCFoo,\PfCListeCCNb[##1],\PfCListeCCOpRetiens[##1]}}% + }% + \xintFor* ##1 in{\xintSeq{4}{6}}\do{% + \xintifForLast{\xdef\PfCFoo{\PfCFoo,\PfCListeCCNb[##1],\PfCListeCCOpRetiens[\fpeval{##1+2}],\PfCListeCCOpRetiens[\fpeval{##1+3}],\PfCListeCCOpRetiens[\fpeval{##1+4}]}}{\xdef\PfCFoo{\PfCFoo,\PfCListeCCNb[##1],\PfCListeCCOpRetiens[\fpeval{##1+2}]}}% + }% + \xintFor* ##1 in{\xintSeq{7}{9}}\do{% + \xintifForLast{\xdef\PfCFoo{\PfCFoo,\PfCListeCCNb[##1]}}{\xdef\PfCFoo{\PfCFoo, \PfCListeCCNb[##1],\PfCListeCCOpRetiens[\fpeval{##1+4}]}}% + }% + \setsepchar{,}\ignoreemptyitems% + \readlist*\PfCListeCCOp{\PfCFoo}% + \reademptyitems \xdef\PfCCCfoo{\useKV[CalculsCroises]{ListeNombres}}% \readlist*\PfCListeCCAide{\PfCCCfoo}% - \begin{NiceTabular}{*{6}{m{\useKV[CalculsCroises]{Largeur}}}} - \rule{0pt}{\PfCCalculsCroises}\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCNb[1]}}{% - \ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCNb[1]==\PfCListeCCAide[##1]}{\num{\PfCListeCCNb[1]}}{}% - }% + }{% + \ifboolKV[CalculsCroises]{Vide}{}{% + \readlist*\PfCListeCCOp{#2}% + \xdef\PfCCCfoo{\useKV[CalculsCroises]{ListeNombres}}% + \readlist*\PfCListeCCAide{\PfCCCfoo}% + }% + }% + % On affiche + \begin{NiceTabular}{*{6}{m{\useKV[CalculsCroises]{Largeur}}}} + \ifboolKV[CalculsCroises]{Vide}{% + \rule{0pt}{\PfCCalculsCroises}\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{}\\ + \rule{0pt}{\PfCCalculsCroises}\Block{}{}&\Block[fill=black]{}{}&\Block{}{}&\Block[fill=black]{}{}&\Block{}{}\\ + \rule{0pt}{\PfCCalculsCroises}\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{}\\ + \rule{0pt}{\PfCCalculsCroises}\Block{}{}&\Block[fill=black]{}{}&\Block{}{}&\Block[fill=black]{}{}&\Block{}{}\\ + \rule{0pt}{\PfCCalculsCroises}\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{}\\ + \rule{0pt}{\PfCCalculsCroises}\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{}&&\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{}&&\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{}\\ + }{% + \rule{0pt}{\PfCCalculsCroises}\Block{}{% + \ifboolKV[CalculsCroises]{Aide}{% + \setcounter{CCRetiensAide}{0}% + \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% + \xintifboolexpr{\PfCListeCCOp[1]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[1]}}{\stepcounter{CCRetiensAide}}% + }% + \xintifboolexpr{\theCCRetiensAide==\PfCListeCCAidelen}{\ifboolKV[CalculsCroises]{Solution}{\color{PfCCouleurCCS}\num{\PfCListeCCOp[1]}}{}}{}% + }{\ifboolKV[CalculsCroises]{Solution}{% + \color{PfCCouleurCCS}\num{\PfCListeCCOp[1]}% }{}% - }}&\StrCompare{\PfCListeCCOp[1]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[1]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCNb[2]}}{% - \ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCNb[2]==\PfCListeCCAide[##1]}{\num{\PfCListeCCNb[2]}}{}% - }% + }% + }&\StrCompare{\PfCListeCCOp[2]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[2]$}}&\Block{}{% + \ifboolKV[CalculsCroises]{Aide}{% + \setcounter{CCRetiensAide}{0}% + \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% + \xintifboolexpr{\PfCListeCCOp[3]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[3]}}{\stepcounter{CCRetiensAide}}% + }% + \xintifboolexpr{\theCCRetiensAide==\PfCListeCCAidelen}{\ifboolKV[CalculsCroises]{Solution}{\color{PfCCouleurCCS}\num{\PfCListeCCOp[3]}}{}}{}% + }{\ifboolKV[CalculsCroises]{Solution}{% + \color{PfCCouleurCCS}\num{\PfCListeCCOp[3]}% }{}% - }}&\StrCompare{\PfCListeCCOp[2]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[2]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCNb[3]}}{% - \ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCNb[3]==\PfCListeCCAide[##1]}{\num{\PfCListeCCNb[3]}}{}% - }% + }% + }&\StrCompare{\PfCListeCCOp[4]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[4]$}}&\Block{}{% + \ifboolKV[CalculsCroises]{Aide}{% + \setcounter{CCRetiensAide}{0} + \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% + \xintifboolexpr{\PfCListeCCOp[5]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[5]}}{\stepcounter{CCRetiensAide}}% + }% + \xintifboolexpr{\theCCRetiensAide==\PfCListeCCAidelen}{\ifboolKV[CalculsCroises]{Solution}{\color{PfCCouleurCCS}\num{\PfCListeCCOp[5]}}{}}{}% + }{\ifboolKV[CalculsCroises]{Solution}{% + \color{PfCCouleurCCS}\num{\PfCListeCCOp[5]}% }{}% - }}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCNb[1]\PfCListeCCOp[1]\PfCListeCCNb[2]\PfCListeCCOp[2]\PfCListeCCNb[3]}}}}\\ - \rule{0pt}{\PfCCalculsCroises}\StrCompare{\PfCListeCCOp[3]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[3]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[4]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[4]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[5]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[5]$}}\\ - \rule{0pt}{\PfCCalculsCroises}\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCNb[4]}}{% + }% + }&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[1]\PfCListeCCOp[2]\PfCListeCCOp[3]\PfCListeCCOp[4]\PfCListeCCOp[5]}}}}\\ + \rule{0pt}{\PfCCalculsCroises}\StrCompare{\PfCListeCCOp[6]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[6]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[7]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[7]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[8]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[8]$}}\\ + \rule{0pt}{\PfCCalculsCroises}\Block{}{% + \setcounter{CCRetiensAide}{0}% \ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCNb[4]==\PfCListeCCAide[##1]}{\num{\PfCListeCCNb[4]}}{}% - }% + \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% + \xintifboolexpr{\PfCListeCCOp[9]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[9]}}{\stepcounter{CCRetiensAide}}% + }% + \xintifboolexpr{\theCCRetiensAide==\PfCListeCCAidelen}{\ifboolKV[CalculsCroises]{Solution}{\color{PfCCouleurCCS}\num{\PfCListeCCOp[9]}}{}}{}% + }{\ifboolKV[CalculsCroises]{Solution}{% + \color{PfCCouleurCCS}\num{\PfCListeCCOp[9]}% }{}% - }}&\StrCompare{\PfCListeCCOp[6]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[6]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCNb[5]}}{% - \ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCNb[5]==\PfCListeCCAide[##1]}{\num{\PfCListeCCNb[5]}}{}% - }% + }% + }&\StrCompare{\PfCListeCCOp[10]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[10]$}}&\Block{}{% + \ifboolKV[CalculsCroises]{Aide}{% + \setcounter{CCRetiensAide}{0}% + \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% + \xintifboolexpr{\PfCListeCCOp[11]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[11]}}{\stepcounter{CCRetiensAide}}% + }% + \xintifboolexpr{\theCCRetiensAide==\PfCListeCCAidelen}{\ifboolKV[CalculsCroises]{Solution}{\color{PfCCouleurCCS}\num{\PfCListeCCOp[11]}}{}}{}% + }{\ifboolKV[CalculsCroises]{Solution}{% + \color{PfCCouleurCCS}\num{\PfCListeCCOp[11]}% }{}% - }}&\StrCompare{\PfCListeCCOp[7]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[7]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCNb[6]}}{% - \ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCNb[6]==\PfCListeCCAide[##1]}{\num{\PfCListeCCNb[6]}}{}% - }% + }% + }&\StrCompare{\PfCListeCCOp[12]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[12]$}}&\Block{}{% + \ifboolKV[CalculsCroises]{Aide}{% + \setcounter{CCRetiensAide}{0}% + \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% + \xintifboolexpr{\PfCListeCCOp[13]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[13]}}{\stepcounter{CCRetiensAide}}% + }% + \xintifboolexpr{\theCCRetiensAide==\PfCListeCCAidelen}{\ifboolKV[CalculsCroises]{Solution}{\color{PfCCouleurCCS}\num{\PfCListeCCOp[13]}}{}}{}% + }{\ifboolKV[CalculsCroises]{Solution}{% + \color{PfCCouleurCCS}\num{\PfCListeCCOp[13]}% }{}% - }}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCNb[4]\PfCListeCCOp[6]\PfCListeCCNb[5]\PfCListeCCOp[7]\PfCListeCCNb[6]}}}}\\ - \rule{0pt}{\PfCCalculsCroises}\StrCompare{\PfCListeCCOp[8]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[8]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[9]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[9]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[10]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[10]$}}\\ - \rule{0pt}{\PfCCalculsCroises}\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCNb[7]}}{% + }% + }&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[9]\PfCListeCCOp[10]\PfCListeCCOp[11]\PfCListeCCOp[12]\PfCListeCCOp[13]}}}}\\ + \rule{0pt}{\PfCCalculsCroises}\StrCompare{\PfCListeCCOp[14]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[14]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[15]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[15]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[16]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[16]$}}\\ + \rule{0pt}{\PfCCalculsCroises}\Block{}{% \ifboolKV[CalculsCroises]{Aide}{% + \setcounter{CCRetiensAide}{0}% \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCNb[7]==\PfCListeCCAide[##1]}{\num{\PfCListeCCNb[7]}}{}% + \xintifboolexpr{\PfCListeCCOp[17]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[17]}}{\stepcounter{CCRetiensAide}}% }% - }{}% - }}&\StrCompare{\PfCListeCCOp[11]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[11]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCNb[8]}}{% + \xintifboolexpr{\theCCRetiensAide==\PfCListeCCAidelen}{\ifboolKV[CalculsCroises]{Solution}{\color{PfCCouleurCCS}\num{\PfCListeCCOp[17]}}{}}{}% + }{\ifboolKV[CalculsCroises]{Solution}{% + \color{PfCCouleurCCS}\num{\PfCListeCCOp[17]}% + }{}% + }% + }&\StrCompare{\PfCListeCCOp[18]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[18]$}}&\Block{}{% \ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCNb[8]==\PfCListeCCAide[##1]}{\num{\PfCListeCCNb[8]}}{}% - }% + \setcounter{CCRetiensAide}{0}% + \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% + \xintifboolexpr{\PfCListeCCOp[19]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[19]}}{\stepcounter{CCRetiensAide}}% + }% + \xintifboolexpr{\theCCRetiensAide==\PfCListeCCAidelen}{\ifboolKV[CalculsCroises]{Solution}{\color{PfCCouleurCCS}\num{\PfCListeCCOp[19]}}{}}{}% + }{\ifboolKV[CalculsCroises]{Solution}{% + \color{PfCCouleurCCS}\num{\PfCListeCCOp[19]}% }{}% - }}&\StrCompare{\PfCListeCCOp[12]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[12]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCNb[9]}}{% - \ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCNb[9]==\PfCListeCCAide[##1]}{\num{\PfCListeCCNb[9]}}{}% - }% + }% + }&\StrCompare{\PfCListeCCOp[20]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[20]$}}&\Block{}{% + \ifboolKV[CalculsCroises]{Aide}{% + \setcounter{CCRetiensAide}{0}% + \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% + \xintifboolexpr{\PfCListeCCOp[21]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[21]}}{\stepcounter{CCRetiensAide}}% + }% + \xintifboolexpr{\theCCRetiensAide==\PfCListeCCAidelen}{\ifboolKV[CalculsCroises]{Solution}{\color{PfCCouleurCCS}\num{\PfCListeCCOp[21]}}{}}{}% + }{\ifboolKV[CalculsCroises]{Solution}{% + \color{PfCCouleurCCS}\num{\PfCListeCCOp[21]}% }{}% - }}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCNb[7]\PfCListeCCOp[11]\PfCListeCCNb[8]\PfCListeCCOp[12]\PfCListeCCNb[9]}}}}\\ - \rule{0pt}{\PfCCalculsCroises}\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCNb[1]\PfCListeCCOp[3]\PfCListeCCNb[4]\PfCListeCCOp[8]\PfCListeCCNb[7]}}}}&&\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCNb[2]\PfCListeCCOp[4]\PfCListeCCNb[5]\PfCListeCCOp[9]\PfCListeCCNb[8]}}}}&&\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCNb[3]\PfCListeCCOp[5]\PfCListeCCNb[6]\PfCListeCCOp[10]\PfCListeCCNb[9]}}}}\\ + }% + }&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[17]\PfCListeCCOp[18]\PfCListeCCOp[19]\PfCListeCCOp[20]\PfCListeCCOp[21]}}}}\\ + \rule{0pt}{\PfCCalculsCroises}\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[1]\PfCListeCCOp[6]\PfCListeCCOp[9]\PfCListeCCOp[14]\PfCListeCCOp[17]}}}}&&\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[3]\PfCListeCCOp[7]\PfCListeCCOp[11]\PfCListeCCOp[15]\PfCListeCCOp[19]}}}}&&\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[5]\PfCListeCCOp[8]\PfCListeCCOp[13]\PfCListeCCOp[16]\PfCListeCCOp[21]}}}}\\ + }% \CodeAfter \tikz\draw (1-|1) rectangle (6-|6); \xintFor* ##1 in{\xintSeq{2}{5}}\do{% @@ -96,91 +174,6 @@ \xintFor* ##1 in{\xintSeq{2}{5}}\do{% \tikz\draw (##1-|1) -- (##1-|6); }% - \end{NiceTabular} - }{% - \ifboolKV[CalculsCroises]{Vide}{% - \begin{NiceTabular}{*{6}{m{\useKV[CalculsCroises]{Largeur}}}} - \rule{0pt}{\PfCCalculsCroises}\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{}\\ - \rule{0pt}{\PfCCalculsCroises}\Block{}{}&\Block[fill=black]{}{}&\Block{}{}&\Block[fill=black]{}{}&\Block{}{}\\ - \rule{0pt}{\PfCCalculsCroises}\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{}\\ - \rule{0pt}{\PfCCalculsCroises}\Block{}{}&\Block[fill=black]{}{}&\Block{}{}&\Block[fill=black]{}{}&\Block{}{}\\ - \rule{0pt}{\PfCCalculsCroises}\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block{}{}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{}\\ - \rule{0pt}{\PfCCalculsCroises}\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{}&&\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{}&&\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{}\\ - \CodeAfter - \tikz\draw (1-|1) rectangle (6-|6); - \xintFor* ##1 in{\xintSeq{2}{5}}\do{% - \tikz\draw (1-|##1) -- (6-|##1); - }% - \xintFor* ##1 in{\xintSeq{2}{5}}\do{% - \tikz\draw (##1-|1) -- (##1-|6); - }% - \end{NiceTabular} - }{% - \readlist*\PfCListeCCOp{#2}% - \xdef\PfCCCfoo{\useKV[CalculsCroises]{ListeNombres}}% - \readlist*\PfCListeCCAide{\PfCCCfoo}% - \begin{NiceTabular}{*{6}{m{\useKV[CalculsCroises]{Largeur}}}} - \rule{0pt}{\PfCCalculsCroises}\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCOp[1]}}{\ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCOp[1]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[1]}}{}% - }% - }{}% -}}&\StrCompare{\PfCListeCCOp[2]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[2]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCOp[3]}}{\ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCOp[3]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[3]}}{}% - }% - }{}% -}}&\StrCompare{\PfCListeCCOp[4]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[4]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCOp[5]}}{\ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCOp[5]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[5]}}{}% - }% - }{}% -}}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[1]\PfCListeCCOp[2]\PfCListeCCOp[3]\PfCListeCCOp[4]\PfCListeCCOp[5]}}}}\\ - \rule{0pt}{\PfCCalculsCroises}\StrCompare{\PfCListeCCOp[6]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[6]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[7]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[7]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[8]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[8]$}}\\ - \rule{0pt}{\PfCCalculsCroises}\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCOp[9]}}{\ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCOp[9]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[9]}}{}% - }% - }{}% -}}&\StrCompare{\PfCListeCCOp[10]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[10]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCOp[11]}}{\ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCOp[11]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[11]}}{}% - }% - }{}% -}}&\StrCompare{\PfCListeCCOp[12]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[12]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCOp[13]}}{\ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCOp[13]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[13]}}{}% - }% - }{}% -}}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[9]\PfCListeCCOp[10]\PfCListeCCOp[11]\PfCListeCCOp[12]\PfCListeCCOp[13]}}}}\\ - \rule{0pt}{\PfCCalculsCroises}\StrCompare{\PfCListeCCOp[14]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[14]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[15]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[15]$}}&\Block[fill=black]{}{~}&\StrCompare{\PfCListeCCOp[16]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[16]$}}\\ - \rule{0pt}{\PfCCalculsCroises}\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCOp[17]}}{\ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCOp[17]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[17]}}{}% - }% - }{}% -}}&\StrCompare{\PfCListeCCOp[18]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[18]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCOp[19]}}{\ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCOp[19]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[19]}}{}% - }% - }{}% -}}&\StrCompare{\PfCListeCCOp[20]}{*}[\PfCTestEtoile]\Block{}{\xintifboolexpr{\PfCTestEtoile==0}{$\times$}{$\PfCListeCCOp[20]$}}&\Block{}{\ifboolKV[CalculsCroises]{Solution}{\num{\PfCListeCCOp[21]}}{\ifboolKV[CalculsCroises]{Aide}{% - \xintFor* ##1 in{\xintSeq{1}{\PfCListeCCAidelen}}\do{% - \xintifboolexpr{\PfCListeCCOp[21]==\PfCListeCCAide[##1]}{\num{\PfCListeCCOp[21]}}{}% - }% - }{}% -}}&\Block[borders={bottom,right,top},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[17]\PfCListeCCOp[18]\PfCListeCCOp[19]\PfCListeCCOp[20]\PfCListeCCOp[21]}}}}\\ - \rule{0pt}{\PfCCalculsCroises}\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[1]\PfCListeCCOp[6]\PfCListeCCOp[9]\PfCListeCCOp[14]\PfCListeCCOp[17]}}}}&&\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[3]\PfCListeCCOp[7]\PfCListeCCOp[11]\PfCListeCCOp[15]\PfCListeCCOp[19]}}}}&&\Block[borders={left,bottom,right},fill=PfCCouleurCC]{}{\ifboolKV[CalculsCroises]{Inverse}{}{\num{\fpeval{\PfCListeCCOp[5]\PfCListeCCOp[8]\PfCListeCCOp[13]\PfCListeCCOp[16]\PfCListeCCOp[21]}}}}\\ - \CodeAfter - \tikz\draw (1-|1) rectangle (6-|6); - \xintFor* ##1 in{\xintSeq{2}{5}}\do{% - \tikz\draw (1-|##1) -- (6-|##1); - }% - \xintFor* ##1 in{\xintSeq{2}{5}}\do{% - \tikz\draw (##1-|1) -- (##1-|6); - }% - \end{NiceTabular} - }% - }% - \restorecomparemode% + \end{NiceTabular} + \restorecomparemode% }% \ No newline at end of file diff --git a/macros/latex/contrib/profcollege/latex/PfCCalisson.tex b/macros/latex/contrib/profcollege/latex/PfCCalisson.tex index 08f3d91521..60c424bdff 100644 --- a/macros/latex/contrib/profcollege/latex/PfCCalisson.tex +++ b/macros/latex/contrib/profcollege/latex/PfCCalisson.tex @@ -56,47 +56,86 @@ }% }% }% - %Liste gauche : \the\tokcalissonlistetracesg% + % Liste gauche : \the\tokcalissonlistetracesg% +% \par Pour la droite, Il reste \Reste % Partie droite - \StrLeft{0\Reste}{3}[\Depart]% - \expandafter\UpdatetoksCalissondDepart\Depart\nil% - \StrGobbleLeft{0\Reste}{3}[\Reste]% - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\useKV[Calisson]{Taille}-2}}}\do{% + \xintifboolexpr{\useKV[Calisson]{Taille}==2}{% + % 10 \StrLeft{0\Reste}{3}[\Depart]% - \expandafter\UpdatetoksCalissond\Depart\nil% + \expandafter\UpdatetoksCalissondDepart\Depart\nil% \StrGobbleLeft{0\Reste}{3}[\Reste]% - }% - \StrLeft{00\Reste}{3}[\Depart]% - \StrGobbleLeft{00\Reste}{3}[\Reste]% - \expandafter\UpdatetoksCalissond\Depart\nil% -% fin premiere ligne - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\useKV[Calisson]{Taille}-1}}}\do{% + % 11 + \StrLeft{00\Reste}{3}[\Depart]% + \expandafter\UpdatetoksCalissond\Depart\nil% + \StrGobbleLeft{00\Reste}{3}[\Reste]% + % 12 \StrLeft{\Reste}{1}[\Depart]% - \expandafter\UpdatetoksCalissond\Depart00\nil% + \expandafter\UpdatetoksCalissond\Depart\nil% \StrGobbleLeft{\Reste}{1}[\Reste]% - \xintFor* ##2 in {\xintSeq{1}{\fpeval{\useKV[Calisson]{Taille}-1}}}\do{% - \StrLeft{\Reste}{3}[\Depart]% - \expandafter\UpdatetoksCalissond\Depart\nil% - \StrGobbleLeft{\Reste}{3}[\Reste]% - }% + % 13 + \StrLeft{\Reste}{3}[\Depart]% + \expandafter\UpdatetoksCalissond\Depart\nil% + \StrGobbleLeft{\Reste}{3}[\Reste]% + % 14 \StrLeft{00\Reste}{3}[\Depart]% \expandafter\UpdatetoksCalissond\Depart\nil% \StrGobbleLeft{00\Reste}{3}[\Reste]% - }% - %% fin des lignes intermédiaires - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\useKV[Calisson]{Taille}}}}\do{% + % 15 \StrLeft{\Reste}{1}[\Depart]% - \expandafter\UpdatetoksCalissond\Depart00\nil% + \expandafter\UpdatetoksCalissond\Depart0\nil% \StrGobbleLeft{\Reste}{1}[\Reste]% - \xintifboolexpr{##1>\fpeval{\useKV[Calisson]{Taille}-1}}{}{% - \xintFor* ##2 in {\xintSeq{\fpeval{\useKV[Calisson]{Taille}-##1}}{1}}\do{% + % 16 + \StrLeft{\Reste}{3}[\Depart]% + \expandafter\UpdatetoksCalissond\Depart\nil% + \StrGobbleLeft{\Reste}{3}[\Reste]% + % 17 + \StrLeft{\Reste}{1}[\Depart]% + \expandafter\UpdatetoksCalissond\Depart00\nil% +% \StrGobbleLeft{\Reste}{2}[\Reste]% + }{% + \StrLeft{0\Reste}{3}[\Depart]% + \expandafter\UpdatetoksCalissondDepart\Depart\nil% + \StrGobbleLeft{0\Reste}{3}[\Reste]% + \xintFor* ##1 in {\xintSeq{1}{\fpeval{\useKV[Calisson]{Taille}-2}}}\do{% + \StrLeft{0\Reste}{3}[\Depart]% + \expandafter\UpdatetoksCalissond\Depart\nil% + \StrGobbleLeft{0\Reste}{3}[\Reste]% + }% + \StrLeft{00\Reste}{3}[\Depart]% + \StrGobbleLeft{00\Reste}{3}[\Reste]% + \expandafter\UpdatetoksCalissond\Depart\nil% + % \par A la première ligne : \the\tokcalissonlistetracesd + % fin premiere ligne + \StrLeft{0\Reste}{3}[\Depart]% + \xintFor* ##1 in {\xintSeq{1}{\fpeval{\useKV[Calisson]{Taille}-1}}}\do{% + \StrLeft{\Reste}{1}[\Depart]% + \expandafter\UpdatetoksCalissond\Depart00\nil% + \StrGobbleLeft{\Reste}{1}[\Reste]% + \xintFor* ##2 in {\xintSeq{1}{\fpeval{\useKV[Calisson]{Taille}-1}}}\do{% \StrLeft{\Reste}{3}[\Depart]% \expandafter\UpdatetoksCalissond\Depart\nil% \StrGobbleLeft{\Reste}{3}[\Reste]% }% + \StrLeft{00\Reste}{3}[\Depart]% + \expandafter\UpdatetoksCalissond\Depart\nil% + \StrGobbleLeft{00\Reste}{3}[\Reste]% + } + %% fin des lignes intermédiaires + \xintFor* ##1 in {\xintSeq{1}{\fpeval{\useKV[Calisson]{Taille}}}}\do{% + \StrLeft{\Reste}{1}[\Depart]% + \expandafter\UpdatetoksCalissond\Depart00\nil% + \StrGobbleLeft{\Reste}{1}[\Reste]% + \xintifboolexpr{##1>\fpeval{\useKV[Calisson]{Taille}-1}}{}{% + \xintFor* ##2 in {\xintSeq{\fpeval{\useKV[Calisson]{Taille}-##1}}{1}}\do{% + \StrLeft{\Reste}{3}[\Depart]% + \expandafter\UpdatetoksCalissond\Depart\nil% + \StrGobbleLeft{\Reste}{3}[\Reste]% + }% + }% }% }% -% \par Liste droite :\the\tokcalissonlistetracesd +% \par Liste droite :\the\tokcalissonlistetracesd\par + %\par Liste cp : \tokcalissonlistetracesd{"0ss",0f0","ftf","ssf","0ff","tt0","0sf","sfs"}\the\tokcalissonlistetracesd\par \BuildCalisson{\the\tokcalissonlistetracesg}{\the\tokcalissonlistetracesd}% }% @@ -109,7 +148,7 @@ % Rayon=\useKV[Calisson]{Rayon}; Taille=\useKV[Calisson]{Taille}; - % + % pair A,B,C,D,E,F,O; O=(0,0); path cc; @@ -127,8 +166,8 @@ Bas=A--B--C; TopGauche=E--F--A; BasDroit=D--C--B; - % - pair Hor,Ver,Horn; + % + pair Hor,Ver,Horn,Retenir; Hor=(1/Taille)[E,F]; Ver=rotation(Hor,E,60); Horn=rotation(Hor,E,120); @@ -140,36 +179,37 @@ for l=0 upto Taille: n:=n+1; M[n]=E+k*(Ver-E)+l*(Hor-E); - % dotlabel.top(decimal(n),M[n]); + %dotlabel.top(decimal(n),M[n]); endfor; endfor; for k=Taille upto 2*Taille-1: for l=0 upto (2*Taille-1-k): n:=n+1; M[n]=E+k*(Ver-E)+l*(Hor-E); - % dotlabel.top(decimal(n),M[n]); + %dotlabel.top(decimal(n),M[n]); endfor; endfor; % Partie Droite -> ok for k=1 upto Taille: n:=n+1; M[n]=E+k*(Horn-E); - % dotlabel.top(decimal(n),M[n]); +% dotlabel.top(decimal(n),M[n]); endfor; for k=1 upto Taille-1: for l=0 upto Taille: n:=n+1; M[n]=E+k*(Ver-E)+l*(Horn-E); - % dotlabel.top(decimal(n),M[n]); +% dotlabel.top(decimal(n),M[n]); endfor; endfor; for k=Taille upto 2*Taille-1: for l=0 upto (2*Taille-1-k): n:=n+1; M[n]=E+k*(Ver-E)+l*(Horn-E); - % dotlabel.top(decimal(n),M[n]); + %dotlabel.top(decimal(n),M[n]); endfor; endfor; + drawoptions(); % % string Retiens; @@ -177,7 +217,7 @@ % pair Depla; Depla:=Hor; - % + % vardef LesTracesg(text t)= trace polygone(A,B,C,D,E,F) withpen pencircle scaled 2; for k=1 upto 2*Taille-1: @@ -207,6 +247,11 @@ enddef; % vardef LesTracesd(text t)= + %if Taille=2: + %Hor:=(1/Taille)[E,F]; + %Ver:=rotation(Hor,E,60); + %Horn:=rotation(Hor,E,120); + %fi; for p_=t: n:=n+1; for d=1 upto 3: @@ -215,6 +260,7 @@ elseif d=2:Depla:=Ver else : Depla:=Hor fi; +% fill ((fullcircle scaled 3mm) shifted M[n]); if (Retiens="0") or (Retiens="f"): elseif Retiens="t": trace (chemin(Depla,E) shifted (M[n]-E)) withpen pencircle scaled 2; diff --git a/macros/latex/contrib/profcollege/latex/PfCCartographie.tex b/macros/latex/contrib/profcollege/latex/PfCCartographie.tex index fdfa7cd0a5..a2bccc2321 100644 --- a/macros/latex/contrib/profcollege/latex/PfCCartographie.tex +++ b/macros/latex/contrib/profcollege/latex/PfCCartographie.tex @@ -1,10 +1,11 @@ %%% % Cartographie %%% -\setKVdefault[Cartographie]{Echelle=1,Carte=false,All=false,Europe=false,Asie=false,Amsud=false,Amnord=false,Amcentre=false,Caraibes=false,Afrique=false,AfficheEchelle=false,PaysSeul=false,VillesSup=false,Capitales=false,Impression=false,Fleuves=false,CouleurFond=ciel,Largeur=12,Hauteur=12,Arborescence="/usr/local/texlive/2023/texmf-dist/metapost/profcollege/",Projection=false,TypeProjection="mercator",CouleurPays=Cornsilk,Pasl=2,PasL=2} +\setKVdefault[Cartographie]{Echelle=1,Carte=false,All=false,Europe=false,Asie=false,Amsud=false,Amnord=false,Amcentre=false,Caraibes=false,Afrique=false,AfficheEchelle=false,PaysSeul=false,VillesSup=false,Capitales=false,Impression=false,Fleuves=false,CouleurFond=ciel,Largeur=12,Hauteur=12,Arborescence="/usr/local/texlive/2023/texmf-dist/metapost/profcollege/",Projection=false,TypeProjection="mercator",CouleurPays=Cornsilk,Pasl=2,PasL=2,Codes=false,Epaisseur=2} \defKV[Cartographie]{EchelleCarte=\setKV[Cartographie]{Carte}} \defKV[Cartographie]{Pays=\setKV[Cartographie]{PaysSeul}} \defKV[Cartographie]{Villes=\setKV[Cartographie]{VillesSup}} +\defKV[Cartographie]{Traces=\setKV[Cartographie]{Codes}} \newcommand\Cartographie[3][]{% \ifluatex% @@ -138,18 +139,20 @@ arborescence:=\useKV[Cartographie]{Arborescence}; LargeurCadre=\useKV[Cartographie]{Largeur}; HauteurCadre=\useKV[Cartographie]{Hauteur}; + Epaisseur:=\useKV[Cartographie]{Epaisseur}; distanceecran=100*\useKV[Cartographie]{Echelle}; fleuves:=\useKV[Cartographie]{Fleuves}; - boolean Carte,Impression,VillesSup; + boolean Carte,Impression,VillesSup,Codes; Carte=\useKV[Cartographie]{Carte}; Impression=\useKV[Cartographie]{Impression}; VillesSup=\useKV[Cartographie]{VillesSup}; + Codes=\useKV[Cartographie]{Codes}; couleurfond:=\useKV[Cartographie]{CouleurFond}; if Impression: - noncolore:=true; - payscolor:=0.85white; - couleurfond:=white; - couleurfleuve:=couleurfond; + noncolore:=true; + payscolor:=0.85white; + couleurfond:=white; + couleurfleuve:=couleurfond; fi; capitales:=\useKV[Cartographie]{Capitales}; All:=\useKV[Cartographie]{All}; @@ -161,48 +164,52 @@ Caraibes:=\useKV[Cartographie]{Caraibes}; Afrique:=\useKV[Cartographie]{Afrique}; if Carte: - Echelle:=\useKV[Cartographie]{AfficheEchelle}; - figure(-0.5u*LargeurCadre,-0.5u*HauteurCadre,0.5u*LargeurCadre,0.5u*HauteurCadre); - if \useKV[Cartographie]{PaysSeul}: - projection:="bonne"; - theta:=#2; - phi:=#3; - zoom(echelle(#2,#3,\useKV[Cartographie]{EchelleCarte})); - fill (bonnec(-90,-180) for k=-85 step 5 until 90:..bonnec(k,-180) endfor)..reverse(bonnec(-90,180) for k=-85 step 5 until 90:..bonnec(k,180) endfor)..cycle withcolor couleurfond; - lecturep(arborescence&"PfC"&\useKV[Cartographie]{Pays}&".dat",couleurfond);% - trace feuillet withpen pencircle scaled 2; - if Echelle=true: - draw ((Xa,Ya)+u*(1,1))--((Xa,Ya)+u*(2,1)); - labeloffset:=labeloffset*1.5; - label.top(btex 0 etex,(Xa,Ya)+u*(1,1)); - label.top(TEX(""&decimal(Long)&"~km"),(Xa,Ya)+u*(2,1)); - labeloffset:=labeloffset/1.5; - draw ((Xa,Ya)+u*(1,1.1))--((Xa,Ya)+u*(1,0.9)); - draw (((Xa,Ya)+u*(1,1.1))--((Xa,Ya)+u*(1,0.9))) shifted(u*(1,0)); - fi; - else: - projection:="bonne"; - Projection(#2,#3,echelle(#2,#3,\useKV[Cartographie]{EchelleCarte})); - trace feuillet withpen pencircle scaled 2; - fi; - if VillesSup: - nomfichiermul:=\useKV[Cartographie]{Villes}; - nblec:=scantokens readfrom nomfichiermul; - drawoptions(withcolor (0.15,0.15,0.15)); - projection:="bonne"; - for p=1 upto nblec: - pair Coord[],latlon;string p_; - latlon=scantokens readfrom nomfichiermul; - p_=scantokens readfrom nomfichiermul; - Coord[p]=bonnec(ypart(latlon),xpart(latlon)); - dotlabel.scantokens readfrom nomfichiermul(TEX(""&p_&""),Coord[p]); - endfor; - drawoptions(); - closefrom nomfichiermul; - fi; + Echelle:=\useKV[Cartographie]{AfficheEchelle}; + figure(-0.5u*LargeurCadre,-0.5u*HauteurCadre,0.5u*LargeurCadre,0.5u*HauteurCadre); + if \useKV[Cartographie]{PaysSeul}: + projection:="bonne"; + theta:=#2; + phi:=#3; + zoom(echelle(#2,#3,\useKV[Cartographie]{EchelleCarte})); + fill (bonnec(-90,-180) for k=-85 step 5 until 90:..bonnec(k,-180) endfor)..reverse(bonnec(-90,180) for k=-85 step 5 until 90:..bonnec(k,180) endfor)..cycle withcolor couleurfond; + lecturep(arborescence&"PfC"&\useKV[Cartographie]{Pays}&".dat",couleurfond);% + if Echelle=true: + draw ((Xa,Ya)+u*(1,1))--((Xa,Ya)+u*(2,1)); + labeloffset:=labeloffset*1.5; + label.top(btex 0 etex,(Xa,Ya)+u*(1,1)); + label.top(TEX(""&decimal(Long)&"~km"),(Xa,Ya)+u*(2,1)); + labeloffset:=labeloffset/1.5; + draw ((Xa,Ya)+u*(1,1.1))--((Xa,Ya)+u*(1,0.9)); + draw (((Xa,Ya)+u*(1,1.1))--((Xa,Ya)+u*(1,0.9))) shifted(u*(1,0)); + fi; + else: + projection:="bonne"; + Projection(#2,#3,echelle(#2,#3,\useKV[Cartographie]{EchelleCarte})); + fi; + if Epaisseur>0: + trace feuillet withpen pencircle scaled Epaisseur; + fi; + if VillesSup: + nomfichiermul:=\useKV[Cartographie]{Villes}; + nblec:=scantokens readfrom nomfichiermul; + drawoptions(withcolor (0.15,0.15,0.15)); + projection:="bonne"; + for p=1 upto nblec: + pair Coord[],latlon;string p_; + latlon=scantokens readfrom nomfichiermul; + p_=scantokens readfrom nomfichiermul; + Coord[p]=bonnec(ypart(latlon),xpart(latlon)); + dotlabel.scantokens readfrom nomfichiermul(TEX(""&p_&""),Coord[p]); + endfor; + drawoptions(); + closefrom nomfichiermul; + fi; + if Codes: + \useKV[Cartographie]{Traces}; + fi; else: - draw(0,0)--(50,50); - mappemonde(#2,#3); + draw(0,0)--(50,50); + mappemonde(#2,#3); fi; \end{mplibcode} } diff --git a/macros/latex/contrib/profcollege/latex/PfCDecomposerNombrePremier.tex b/macros/latex/contrib/profcollege/latex/PfCDecomposerNombrePremier.tex index a70b818b25..253f12533d 100644 --- a/macros/latex/contrib/profcollege/latex/PfCDecomposerNombrePremier.tex +++ b/macros/latex/contrib/profcollege/latex/PfCDecomposerNombrePremier.tex @@ -57,6 +57,7 @@ endfor; fi; \end{mplibcode} + \mplibnumbersystem{scaled} \else \begin{mpost}[mpsettings={numeric decalage;decalage=\useKV[ClesNombrePremier]{Decalage}*1mm; boolean Entoure; Entoure=\useKV[ClesNombrePremier]{Entoure};}] input PfCArithmetique; @@ -103,7 +104,8 @@ if \useKV[ClesNombrePremier]{Entoure}: draw polygone(N[nbe-1][0]+(-0.25*dx,0.25*decalage),N[nbe-1][nbe-1]+(0.25*dx,0.25*decalage),N[nbe-1][nbe-1]+(0.25*dx,-0.25*decalage),N[nbe-1][0]+(-0.25*dx,-0.25*decalage)) dashed evenly; fi; - \end{mplibcode} +\end{mplibcode} + \mplibnumbersystem{scaled} \else \begin{mpost}[mpsettings={numeric decalage;decalage=\useKV[ClesNombrePremier]{Decalage}*1mm;}] input PfCArithmetique; @@ -138,6 +140,7 @@ PositionsVide(NbEtape(#1)); \end{mplibcode} + \mplibnumbersystem{scaled} \else \begin{mpost}[mpsettings={numeric decalage; decalage=\useKV[ClesNombrePremier]{Decalage}*1mm;}] input PfCArithmetique; @@ -258,6 +261,7 @@ trace feuillage; draw Bilan; \end{mplibcode} + \mplibnumbersystem{scaled} \else \begin{mpost}[mpsettings={numeric decalage;decalage=\useKV[ClesNombrePremier]{Decalage}*1mm;color CouleurTronc,CouleurFeuillage,CouleurFruits,CouleurTexte;CouleurTronc=\useKV[ClesNombrePremier]{CouleurTronc};CouleurFeuillage=\useKV[ClesNombrePremier]{CouleurFeuillage};CouleurFruits=\useKV[ClesNombrePremier]{CouleurFruits}; CouleurTexte=\useKV[ClesNombrePremier]{CouleurTexte}; boolean Vide; Vide=\useKV[ClesNombrePremier]{Vide};}] input PfCArithmetiquePDF; diff --git a/macros/latex/contrib/profcollege/latex/PfCDistributivite.tex b/macros/latex/contrib/profcollege/latex/PfCDistributivite.tex index b0d60d14e8..272e260d0a 100644 --- a/macros/latex/contrib/profcollege/latex/PfCDistributivite.tex +++ b/macros/latex/contrib/profcollege/latex/PfCDistributivite.tex @@ -995,9 +995,9 @@ \xintifboolexpr{\Multij==0}{}{\xintifboolexpr{\Multi==0}{}{+}\xintifboolexpr{\Multij<0}{(}{}\AffichageEchange{\Multij}{0}{0}\xintifboolexpr{\Multij<0}{)}{}}% \xintifboolexpr{\Multik==0}{}{\xintifboolexpr{\Multil==0}{\xintifboolexpr{#2=0}{}{+}}{+}\xintifboolexpr{\Multik<0}{(}{}\AffichageEchange{0}{0}{\Multik}\xintifboolexpr{\Multik<0}{)}{}}% \xintifboolexpr{\Multil==0}{}{+}\xintifboolexpr{\Multil<0}{(}{}\AffichageEchange{0}{\Multil}{0}\xintifboolexpr{\Multil<0}{)}{}% - \xdef\Multim{\fpeval{#2*#4+#3*#5}}% + \xdef\Multim{\fpeval{#2*#4+#3*#5}}% \ifboolKV[ClesDistributivite]{Somme}{\xdef\SommeA{\fpeval{\SommeA+\Multik}}\xdef\SommeB{\fpeval{\SommeB+\Multim}}\xdef\SommeC{\fpeval{\SommeC+\Multij}}}{}% - \ifboolKV[ClesDistributivite]{Difference}{\xdef\SommeA{\fpeval{\SommeA-\Multik}}\xdef\SommeB{\fpeval{\SommeB-\Multim}}\xdef\SommeC{\fpeval{\SommeC-\Multij}}}{}% + \ifboolKV[ClesDistributivite]{Difference}{\xdef\SommeA{\fpeval{\SommeA-\Multik}}\xdef\SommeB{\fpeval{\SommeB-\Multim}}\xdef\SommeC{\fpeval{\SommeC-\Multij}}}{}% }{}% \xintifboolexpr{\useKV[ClesDistributivite]{Echange}==2}{% \xintifboolexpr{\theNbCalculDistri>1}{\xintifboolexpr{\Multi<0}{(\AffichageEchange{0}{\Multi}{0})}{\AffichageEchange{0}{\Multi}{0}}}{\AffichageEchange{0}{\Multi}{0}}% diff --git a/macros/latex/contrib/profcollege/latex/PfCDomino.tex b/macros/latex/contrib/profcollege/latex/PfCDomino.tex index e0e8fbd417..a21e068e56 100644 --- a/macros/latex/contrib/profcollege/latex/PfCDomino.tex +++ b/macros/latex/contrib/profcollege/latex/PfCDomino.tex @@ -94,7 +94,7 @@ \end{MyDominoMini}% }{% \begin{MyDominoMini}[sidebyside,sidebyside gap=4mm,righthand ratio=\ratiodomino]% - \ListeDominos[\i,1]\tcblower\ListeDominos[\i,2]% + \ListeDominos[\i,1]\tcblower\ListeDominos[\i,2]% \end{MyDominoMini}% }% }; @@ -120,7 +120,7 @@ }{% \begin{MyDominoMini}[sidebyside,sidebyside gap=4mm,righthand ratio=\ratiodomino]% \ListeDominos[1,1]\tcblower% - \ListeDominos[1,2]% + \ListeDominos[1,2]% \end{MyDominoMini}% }% }% diff --git a/macros/latex/contrib/profcollege/latex/PfCEcrireQCMold.tex b/macros/latex/contrib/profcollege/latex/PfCEcrireQCMold.tex deleted file mode 100644 index a7d4622f5f..0000000000 --- a/macros/latex/contrib/profcollege/latex/PfCEcrireQCMold.tex +++ /dev/null @@ -1,148 +0,0 @@ -%%% -% QCM -%%% -\setKVdefault[ClesQCM]{Reponses=3,Solution=false,Stretch=1,Largeur=2cm,Couleur=gray!15,Titre=false,Nom=R\'eponse,NomV=Vrai,NomF=Faux,Alph=false,AlphT=false,VF=false,Depart=1,Alterne=false,Noms={A/B/C},Multiple=false,Parties={Yeux,Nez,Bouche}}% -\newlength{\LargeurQCM}% -\newlength{\PfCLargeurQCM}% -\newcounter{QuestionQCM}% -\newcounter{TitreQCM}% -\ifdef{\QCM}{% - \PackageWarning{ProfCollege}{La commande \noexpand\QCM étant définie par la classe du document, ProfCollege modifie sa commande \noexpand\QCM en \noexpand\QCMPfC.}% - \newcommand\QCMPfC[2][]{% - \useKVdefault[ClesQCM]% - \setKV[ClesQCM]{#1}% - \setcounter{QuestionQCM}{\fpeval{\useKV[ClesQCM]{Depart}-1}}% - \setcounter{TitreQCM}{0} - \setsepchar[*]{§*&}\ignoreemptyitems% - \readlist*\ListeQCM{#2}% - \ifboolKV[ClesQCM]{Multiple}{% - \renewcommand{\arraystretch}{\useKV[ClesQCM]{Stretch}}% - \setlength{\LargeurQCM}{\fpeval{(\linewidth-\useKV[ClesQCM]{Reponses}*(3*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}% - \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}% - \xdef\ListeNom{\useKV[ClesQCM]{Noms}}% - \setsepchar[*]{/}% - \readlist*\ListeNomsMul{\ListeNom}% - \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}% - \cline{2-\NBcases}% - \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{% - &\ListeNomsMul[##2]}% - \\ - \hline% - \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{% - \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{% - &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{\ListeQCM[##1,\fpeval{##2+1}]==1}{$\boxtimes$}{$\square$}}{$\square$}% - }\\ - }% - \hline% - \end{tabular}% - }{% - \ifboolKV[ClesQCM]{VF}{% - \setKV[ClesQCM]{Reponses=2}% - \setlength{\PfCLargeurQCM}{\useKV[ClesQCM]{Largeur}}% - \setlength{\LargeurQCM}{\linewidth-6\tabcolsep-2\PfCLargeurQCM-4\arrayrulewidth}% - \renewcommand{\arraystretch}{\useKV[ClesQCM]{Stretch}}% - \setlength{\LargeurQCM}{\fpeval{(\linewidth-\useKV[ClesQCM]{Reponses}*(3*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}% - \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}% - \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}% - \cline{2-\NBcases}% - \multicolumn{1}{c|}{}&\useKV[ClesQCM]{NomV}&\useKV[ClesQCM]{NomF}\\ - \hline% - \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{% - \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{% - &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{##2==\ListeQCM[##1,2]}{$\boxtimes$}{$\square$}}{$\square$}% - }\\ - }% - \hline% - \end{tabular} - }{% - \renewcommand{\arraystretch}{\useKV[ClesQCM]{Stretch}}% - \setlength{\LargeurQCM}{\fpeval{(\linewidth-\useKV[ClesQCM]{Reponses}*(3*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}% - \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}% - \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}% - \ifboolKV[ClesQCM]{Titre}{\cline{2-\NBcases}% - \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{% - &\stepcounter{TitreQCM}\useKV[ClesQCM]{Nom} \ifboolKV[ClesQCM]{AlphT}{\Alph{TitreQCM}}{##2}}% - \\ - }{} - \hline% - \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{% - \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{% - &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xdef\NumeroReponse{\fpeval{\useKV[ClesQCM]{Reponses}+2}}\xintifboolexpr{##2==\ListeQCM[##1,\NumeroReponse]}{\cellcolor{\useKV[ClesQCM]{Couleur}}}{}}{}\ListeQCM[##1,##2+1]% - }\\ - }% - \hline% - \end{tabular}% - }% - }% - \renewcommand{\arraystretch}{1}% - }% -}{% - \NewDocumentCommand\QCM{om}{% - \useKVdefault[ClesQCM]% - \setKV[ClesQCM]{#1}% - \setcounter{QuestionQCM}{\fpeval{\useKV[ClesQCM]{Depart}-1}}% - \setcounter{TitreQCM}{0} - \setsepchar[*]{,*&}\ignoreemptyitems% - \readlist*\ListeQCM{#2}% - \ifboolKV[ClesQCM]{Multiple}{% - \renewcommand{\arraystretch}{\useKV[ClesQCM]{Stretch}}% - \setlength{\LargeurQCM}{\fpeval{(\linewidth-\useKV[ClesQCM]{Reponses}*(3*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}% - \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}% - \xdef\ListeNom{\useKV[ClesQCM]{Noms}}% - \setsepchar[*]{/}% - \readlist*\ListeNomsMul{\ListeNom}% - \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}% - \cline{2-\NBcases}% - \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{% - &\ListeNomsMul[##2]}% - \\ - \hline% - \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{% - \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{% - &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{\ListeQCM[##1,\fpeval{##2+1}]==1}{$\boxtimes$}{$\square$}}{$\square$}% - }\\ - }% - \hline% - \end{tabular}% - \renewcommand{\arraystretch}{1}% - }{% - \ifboolKV[ClesQCM]{VF}{% - \setKV[ClesQCM]{Reponses=2}% - \renewcommand{\arraystretch}{\useKV[ClesQCM]{Stretch}}% - \setlength{\PfCLargeurQCM}{\useKV[ClesQCM]{Largeur}}% - \setlength{\LargeurQCM}{\linewidth-6\tabcolsep-2\PfCLargeurQCM-4\arrayrulewidth}% - \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}% - \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}% - \cline{2-\NBcases}% - \multicolumn{1}{c|}{}&\useKV[ClesQCM]{NomV}&\useKV[ClesQCM]{NomF}\\ - \hline% - \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{% - \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{% - &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xintifboolexpr{##2==\ListeQCM[##1,2]}{$\boxtimes$}{$\square$}}{$\square$}% - }\\ - }% - \hline% - \end{tabular} - }{% - \renewcommand{\arraystretch}{\useKV[ClesQCM]{Stretch}}% - \setlength{\LargeurQCM}{\fpeval{(\linewidth-\useKV[ClesQCM]{Reponses}*(3*\tabcolsep+\useKV[ClesQCM]{Largeur}))}pt}% - \xdef\NBcases{\fpeval{\useKV[ClesQCM]{Reponses}+1}}% - \begin{tabular}{|p{\LargeurQCM}|*{\useKV[ClesQCM]{Reponses}}{>{\centering\arraybackslash}p{\useKV[ClesQCM]{Largeur}}|}}% - \ifboolKV[ClesQCM]{Titre}{\cline{2-\NBcases}% - \multicolumn{1}{c|}{}\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{% - &\stepcounter{TitreQCM}\useKV[ClesQCM]{Nom} \ifboolKV[ClesQCM]{AlphT}{\Alph{TitreQCM}}{##2}}% - \\ - }{} - \hline% - \xintFor* ##1 in {\xintSeq {1}{\ListeQCMlen}}\do{% - \stepcounter{QuestionQCM}\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Alph}{\textbf{\Alph{QuestionQCM}}/}{\textbf{\theQuestionQCM/}}~\ListeQCM[##1,1]\xintFor* ##2 in {\xintSeq {1}{\useKV[ClesQCM]{Reponses}}}\do{% - &\ifboolKV[ClesQCM]{Alterne}{\modulo{\theQuestionQCM}{2}\ifnum\remainder=0\cellcolor{gray!15}\fi}{}\ifboolKV[ClesQCM]{Solution}{\xdef\NumeroReponse{\fpeval{\useKV[ClesQCM]{Reponses}+2}}\xintifboolexpr{##2==\ListeQCM[##1,\NumeroReponse]}{\cellcolor{\useKV[ClesQCM]{Couleur}}}{}}{}\ListeQCM[##1,##2+1]% - }\\ - }% - \hline% - \end{tabular}% - }% - }% - \renewcommand{\arraystretch}{1}% - }% -}% \ No newline at end of file diff --git a/macros/latex/contrib/profcollege/latex/PfCEcritureUnites.tex b/macros/latex/contrib/profcollege/latex/PfCEcritureUnites.tex index c4b19598fb..ecb975ff3b 100644 --- a/macros/latex/contrib/profcollege/latex/PfCEcritureUnites.tex +++ b/macros/latex/contrib/profcollege/latex/PfCEcritureUnites.tex @@ -52,7 +52,7 @@ \SI{#3}{\jour}% }{% \setlength{\PfCLgUnites}{\useKV[Unites]{Dots}}% - \pointilles[\PfCLgUnites]\,\si{\jour}}% + \pointilles[\PfCLgUnites]\,\si{\jour}}% \IfNoValueF{#4}{\,}% }% }% diff --git a/macros/latex/contrib/profcollege/latex/PfCEngrenagesBase.tex b/macros/latex/contrib/profcollege/latex/PfCEngrenagesBase.tex index 68e7bdbea4..86d323139e 100644 --- a/macros/latex/contrib/profcollege/latex/PfCEngrenagesBase.tex +++ b/macros/latex/contrib/profcollege/latex/PfCEngrenagesBase.tex @@ -24,7 +24,7 @@ \def\BuildEngrenagesCode#1{% u:=\useKV[Engrenages]{Unite}; CouleurEngrenage=\useKV[Engrenages]{Couleur}; - % + % vardef LectureDonnees(text t)= n:=0;k=0;l=0; for p_=t: @@ -38,7 +38,7 @@ fi; endfor; enddef; - % + % LectureDonnees(#1); % pair K; @@ -48,7 +48,7 @@ trace Engrenage(Mm[1],Zz[1],(0,0)); % Signe=1; - % + % for w=2 upto (n div 2): K:=K+pointarc(cercles((0,0),u*Mm[w]*(Zz[w-1]+Zz[w])*0.5+0.04*u),0); AngleRot[w]:=360/(2*Zz[w]); diff --git a/macros/latex/contrib/profcollege/latex/PfCErathostene.tex b/macros/latex/contrib/profcollege/latex/PfCErathostene.tex index 983770d0f9..2924d856d5 100644 --- a/macros/latex/contrib/profcollege/latex/PfCErathostene.tex +++ b/macros/latex/contrib/profcollege/latex/PfCErathostene.tex @@ -69,7 +69,7 @@ }{%Le nombre choisi n'est pas un nombre premier, ses multiples ont déjà étaient criblés. }% }% - }% + }% \Body \xintFor* ##1 in{\xintSeq{0}{\fpeval{\useKV[ClesEra]{Lignes}-1}}}\do{% \xintFor* ##2 in{\xintSeq{1}{\useKV[ClesEra]{Colonnes}}}\do{% diff --git a/macros/latex/contrib/profcollege/latex/PfCLabyrintheNombre.tex b/macros/latex/contrib/profcollege/latex/PfCLabyrintheNombre.tex index be5e05d673..509ca1d200 100644 --- a/macros/latex/contrib/profcollege/latex/PfCLabyrintheNombre.tex +++ b/macros/latex/contrib/profcollege/latex/PfCLabyrintheNombre.tex @@ -203,6 +203,7 @@ Corps:=(Corps scaled \useKV[ClesLabyNb]{Echelle}) rotated \useKV[ClesLabyNb]{Angle}; trace Corps; \end{mplibcode} +\mplibnumbersystem{scaled} \fi } diff --git a/macros/latex/contrib/profcollege/latex/PfCMulArt.tex b/macros/latex/contrib/profcollege/latex/PfCMulArt.tex new file mode 100644 index 0000000000..601d6e52f1 --- /dev/null +++ b/macros/latex/contrib/profcollege/latex/PfCMulArt.tex @@ -0,0 +1,472 @@ +%%% +% Mulart +%%% +\setKVdefault[TabMul]{Multiple=2,Cibles=false,Largeur=20pt,Couleurs=false,Graines=false,Operations=false,Enonce=false,SchemaEnonce=false} +\defKV[TabMul]{Couleur=\setKV[TabMul]{Couleurs}} +\defKV[TabMul]{Graine=\setKV[TabMul]{Graines}\PfCGraineAlea{#1}} +\defKV[TabMul]{Cible=\setKV[TabMul]{Cibles}}% + +\newtoks\tokstabmul +\newtoks\tokstabmulpdts +\newtoks\tokstabmulnonpdts +\newtoks\tokstabmulpdtscible +\def\UpdatetoksTabMul#1\nil{\addtotok\tokstabmul{"#1",}}% +\def\UpdatetoksTabMulPdts#1\nil{\addtotok\tokstabmulpdts{"#1",}}% +\def\UpdatetoksTabMulNonPdts#1\nil{\addtotok\tokstabmulnonpdts{"#1",}}% +\def\UpdatetoksTabMulPdtsCible#1\nil{\addtotok\tokstabmulpdtscible{"#1",}}% + +\NewDocumentCommand\TableauMultiplicatif{om}{% + \useKVdefault[TabMul]% + \setKV[TabMul]{#1}% + \setsepchar{,}\ignoreemptyitems% + \readlist*\PfCListeTabMul{#2}% + \reademptyitems% + \StrLen{\PfCListeTabMul[1]}[\TailleTabMul]% + \tokstabmul{}% + \foreachitem\compteur\in\PfCListeTabMul{\expandafter\UpdatetoksTabMul\compteur\nil}% + \savecomparemode% + \comparestrict% + \ifboolKV[TabMul]{Cibles}{% + \tokstabmulpdtscible{}% + \xdef\PfCCompteurX{0}% + \xdef\PfCCompteurO{0}% + \xintFor* ##1 in {\xintSeq{1}{\PfCListeTabMullen}}\do{% + \xintFor* ##2 in {\xintSeq{1}{\TailleTabMul}}\do{% + \StrChar{\PfCListeTabMul[##1]}{##2}[\PfCLettre]% + \IfStrEq{\PfCLettre}{x}{% + \xdef\PfCCompteurX{\fpeval{\PfCCompteurX+1}}% + }{\IfStrEq{\PfCLettre}{o}{% + \xdef\PfCCompteurO{\fpeval{\PfCCompteurO+1}}% + }{}% + }% + }% + }% + \xdef\PfCFooRetiensCible{\useKV[TabMul]{Cible}}% + \readlist*\PfCListeDesNombresCibles{\PfCFooRetiensCible}% + \xintFor* ##2 in{\xintSeq{1}{\PfCListeDesNombresCibleslen}}\do{% + \PfCListeDiviseurs{\PfCListeDesNombresCibles[##2]}% + \setsepchar{,}\ignoreemptyitems% + \readlist*\PfCTabMulDiviseursCible{\PfCListeDiviseursRetour}% + \xdef\PfCFooListePdtCible{$1\times\num{\PfCListeDesNombresCibles[##2]}$,$\num{\PfCListeDesNombresCibles[##2]}\times1$}% + \xintFor* ##1 in {\xintSeq{1}{\PfCNbDiviseurs}}\do{% + \xdef\PfCFooListePdtCible{\PfCFooListePdtCible,$\num{\PfCTabMulDiviseursCible[##1]}\times\num{\fpeval{\PfCListeDesNombresCibles[##2]/\PfCTabMulDiviseursCible[##1]}}$,$\num{\fpeval{\PfCListeDesNombresCibles[##2]/\PfCTabMulDiviseursCible[##1]}}\times\num{\PfCTabMulDiviseursCible[##1]}$}% + }% + }% + \ignoreemptyitems% + \readlist*\PfCListeProduitsCible{\PfCFooListePdtCible}% + \foreachitem\compteur\in\PfCListeProduitsCible{\expandafter\UpdatetoksTabMulPdtsCible\compteur\nil}% + \BuildTabMulCible{\the\tokstabmul}{\the\tokstabmulpdtscible}{\PfCFooRetiensCible}% + }{% + \ifboolKV[TabMul]{Operations}{% + \xdef\PfCTabMulListePdts{4,6,8,9,10,12,14,15,16,18,20,21,24,25,27,28,30,32,35,36,40,42,45,48,49,50,54,56,60,63,64,70,72,80,81,90,100}%37 + \xdef\PfCTabMulListeNonPdts{2,3,5,7,11,13,17,19,22,23,26,29,31,33,34,37,38,39,41,43,44,46,47,51,52,53,55,57,58,59,61,62,65,66,67,68,69,71,73,74,75,76,77,78,79,82,83,84,85,86,87,88,89,91,92,93,94,95,96,97,98,99}%62 + \xdef\PfCCompteurX{0} + \xdef\PfCCompteurO{0} + \xintFor* ##1 in {\xintSeq{1}{\PfCListeTabMullen}}\do{% + \xintFor* ##2 in {\xintSeq{1}{\TailleTabMul}}\do{% + \StrChar{\PfCListeTabMul[##1]}{##2}[\PfCLettre]% + \IfStrEq{\PfCLettre}{x}{% + \xdef\PfCCompteurX{\fpeval{\PfCCompteurX+1}}% + }{\IfStrEq{\PfCLettre}{o}{% + \xdef\PfCCompteurO{\fpeval{\PfCCompteurO+1}}% + }{}% + }% + }% + }% + \xdef\NombreRepetX{\fpeval{ceil(\PfCCompteurX/37)}}% + \xdef\NombreRepetO{\fpeval{ceil(\PfCCompteurO/62)}}% + \xdef\PfCTabMulListeFinalePdts{} + \xdef\PfCTabMulListeFinaleNonPdts{} + \xintFor* ##1 in {\xintSeq{1}{\NombreRepetX}}\do{% + \xdef\PfCTabMulListeFinalePdts{\PfCTabMulListeFinalePdts,\PfCTabMulListePdts} + }% + \xintFor* ##1 in {\xintSeq{1}{\NombreRepetO}}\do{% + \xdef\PfCTabMulListeFinaleNonPdts{\PfCTabMulListeFinaleNonPdts,\PfCTabMulListeNonPdts} + }% + \MelangeListe{\PfCTabMulListeFinalePdts}{\PfCCompteurX} + \ignoreemptyitems + \readlist*\PfCListeProduits{\faa} + \MelangeListe{\PfCTabMulListeFinaleNonPdts}{\PfCCompteurO} + \ignoreemptyitems + \readlist*\PfCListeNonProduits{\faa} + \ifboolKV[TabMul]{Enonce}{% + \begin{enumerate} + \xintFor* ##1 in {\xintSeq{1}{\PfCCompteurX}}\do{% + \PfCListeDiviseurs{\PfCListeProduits[##1]}% + \ifnum\PfCNbDiviseurs>1\relax + \MelangeListe{\PfCListeDiviseursRetour}{1}% + \else + \xdef\faa{\PfCListeDiviseursRetour} + \fi + \ignoreemptyitems + \readlist*\PfCListeDiviseurChoisi{\faa}% + \item $\PfCListeDiviseurChoisi[1]\times\fpeval{\PfCListeProduits[##1]/\PfCListeDiviseurChoisi[1]}=$ + } + \end{enumerate} + }{} + \ifboolKV[TabMul]{SchemaEnonce}{% + \tokstabmulpdts{} + \tokstabmulnonpdts{} + \xdef\PfCFoo{\PfCListeProduits[1]} + \xintFor* ##3 in {\xintSeq{2}{\PfCCompteurX}}\do{% + \xdef\PfCFoo{\PfCFoo,\PfCListeProduits[##3]}% + }% + \MelangeListe{\PfCFoo}{\PfCCompteurX}% + \ignoreemptyitems + \readlist*\PfCListeProduits{\faa}% + \foreachitem\compteur\in\PfCListeProduits{\expandafter\UpdatetoksTabMulPdts\compteur\nil}% + \foreachitem\compteur\in\PfCListeNonProduits{\expandafter\UpdatetoksTabMulNonPdts\compteur\nil}% + \BuildTabMulEnonce{\the\tokstabmul}{\the\tokstabmulpdts}{\the\tokstabmulnonpdts} + }{}%% + }{% + \BuildTabMul{\the\tokstabmul}% + } + } + \restorecomparemode% + \reademptyitems% +}% + +\NewDocumentCommand\PfCListeDiviseurs{m}{% + \ifnum#1<10\relax + \xdef\PfCLimiteDiv{#1} + \else + \xdef\PfCLimiteDiv{10} + \fi + \xdef\PfCListeDiviseursRetour{} + \xdef\PfCNbDiviseurs{} + \xintFor* ##2 in {\xintSeq{2}{\PfCLimiteDiv}}\do{% + \modulo{#1}{##2}\relax + \ifnum\remainder=0\relax + \xdef\PfCListeDiviseursRetour{\PfCListeDiviseursRetour ##2,}% + \xdef\PfCNbDiviseurs{\fpeval{\PfCNbDiviseurs+1}}% + \fi + }% +}% + +\def\TabMulCibleCode{% + NbCasesLarg=\TailleTabMul; + Largeur=\useKV[TabMul]{Largeur}; + color CoulFond; + boolean Colore,Stop,Graines; + Colore=\useKV[TabMul]{Couleurs}; + if Colore: + CoulFond=\useKV[TabMul]{Couleur}; + fi; + Graines=\useKV[TabMul]{Graines}; + if Graines: + randomseed:=\useKV[TabMul]{Graine}; + fi; + vardef NombresCibles(text t)= + nbc=0; + for p_=t: + nbc:=nbc+1; + Cible[nbc]=p_; + endfor; + enddef; + % + vardef LectureDesProduits(text t)= + string Sproduits[]; + nbp=0; + for p_=t: + nbp:=nbp+1; + Sproduits[nbp]=p_; + endfor; + enddef; + % + vardef Remplissage(text t)= + pair M[][]; + n=0; + for p_=t: + for k=0 upto NbCasesLarg-1: + l:=n mod NbCasesLarg; + h:=n div NbCasesLarg; + M[l][h]=Largeur*(l,-h); + if (substring(k,k+1) of p_)="x": + if Colore: + fill ((unitsquare scaled Largeur) shifted M[l][h]) withcolor CoulFond; + fi; + label(TEX(Sproduits[ceiling(uniformdeviate(nbp))]),M[l][h] shifted (Largeur*(0.5,0.5))); + elseif (substring(k,k+1) of p_)="X": + fill ((unitsquare scaled Largeur) shifted M[l][h]); + else: + Stop:=false; + forever: + basea:=ceiling(1+uniformdeviate(9)); + baseb:=ceiling(1+uniformdeviate(9)); + basec:=0; + for r=1 upto nbc: + if (basea*baseb)<>Cible[r]: + basec:=basec+1; + fi; + endfor; + if basec=nbc: + Stop:=true; + fi; + exitif Stop; + endfor; + label(TEX("$\num{"&decimal(basea)&"}\times\num{"&decimal(baseb)&"}$"),M[l][h] shifted (Largeur*(0.5,0.5))); + fi; + trace (unitsquare scaled Largeur) shifted M[l][h]; + n:=n+1; + endfor; + endfor; + enddef; + % + vardef RemplissagePDF(text t)= + pair M[][]; + n=0; + for p_=t: + for k=0 upto NbCasesLarg-1: + l:=n mod NbCasesLarg; + h:=n div NbCasesLarg; + M[l][h]=Largeur*(l,-h); + if (substring(k,k+1) of p_)="x": + if Colore: + fill ((unitsquare scaled Largeur) shifted M[l][h]) withcolor CoulFond; + fi; + label(LATEX(Sproduits[ceiling(uniformdeviate(nbp))]),M[l][h] shifted (Largeur*(0.5,0.5))); + elseif (substring(k,k+1) of p_)="X": + fill ((unitsquare scaled Largeur) shifted M[l][h]); + else: + Stop:=false; + forever: + basea:=ceiling(1+uniformdeviate(9)); + baseb:=ceiling(1+uniformdeviate(9)); + basec:=0; + for r=1 upto nbc: + if (basea*baseb)<>Cible[r]: + basec:=basec+1; + fi; + endfor; + if basec=nbc: + Stop:=true; + fi; + exitif Stop; + endfor; + label(LATEX("$\num{"&decimal(basea)&"}\times\num{"&decimal(baseb)&"}$"),M[l][h] shifted (Largeur*(0.5,0.5))); + fi; + trace (unitsquare scaled Largeur) shifted M[l][h]; + n:=n+1; + endfor; + endfor; + enddef; +}% + +\NewDocumentCommand\BuildTabMulCible{mmm}{% + \ifluatex + \mplibforcehmode + \mplibnumbersystem{double} + \begin{mplibcode} + \TabMulCibleCode + NombresCibles(#3); + LectureDesProduits(#2); + Remplissage(#1); + \end{mplibcode} + \mplibnumbersystem{scaled} + \else + \begin{mpost}[mpsettings={\TabMulCibleCode}] + NombresCibles(#3); + LectureDesProduits(#2); + RemplissagePDF(#1); + \end{mpost} + \fi +} + +\def\TabMulCode{% + NbCasesLarg=\TailleTabMul; + Multiple=\useKV[TabMul]{Multiple}; + Largeur=\useKV[TabMul]{Largeur}; + color CoulFond; + boolean Colore,Stop,Graines; + Colore=\useKV[TabMul]{Couleurs}; + if Colore: + CoulFond=\useKV[TabMul]{Couleur}; + fi; + Graines=\useKV[TabMul]{Graines}; + if Graines: + randomseed:=\useKV[TabMul]{Graine}; + fi; + vardef Remplissage(text t)= + pair M[][]; + n=0; + for p_=t: + for k=0 upto NbCasesLarg-1: + l:=n mod NbCasesLarg; + h:=n div NbCasesLarg; + M[l][h]=Largeur*(l,-h); + if (substring(k,k+1) of p_)="x": + if Colore: + fill ((unitsquare scaled Largeur) shifted M[l][h]) withcolor CoulFond; + fi; + label(TEX(decimal(Multiple*ceiling(uniformdeviate(9)+1))),M[l][h] shifted (Largeur*(0.5,0.5))); + elseif (substring(k,k+1) of p_)="X": + fill ((unitsquare scaled Largeur) shifted M[l][h]); + else: + Stop:=false; + forever: + base:=ceiling((1+uniformdeviate(9))*(1+uniformdeviate(9))); + if (base mod Multiple)>0: + Stop:=true; + fi; + exitif Stop; + endfor; + label(TEX(decimal(base)),M[l][h] shifted (Largeur*(0.5,0.5))); + fi; + trace (unitsquare scaled Largeur) shifted M[l][h]; + n:=n+1; + endfor; + endfor; + enddef; + % + vardef RemplissagePDF(text t)= + pair M[][]; + n=0; + for p_=t: + for k=0 upto NbCasesLarg-1: + l:=n mod NbCasesLarg; + h:=n div NbCasesLarg; + M[l][h]=Largeur*(l,-h); + if (substring(k,k+1) of p_)="x": + if Colore: + fill ((unitsquare scaled Largeur) shifted M[l][h]) withcolor CoulFond; + fi; + label(LATEX(decimal(Multiple*ceiling(uniformdeviate(9)+1))),M[l][h] shifted (Largeur*(0.5,0.5))); + elseif (substring(k,k+1) of p_)="X": + fill ((unitsquare scaled Largeur) shifted M[l][h]); + else: + Stop:=false; + forever: + base:=ceiling((1+uniformdeviate(9))*(1+uniformdeviate(9))); + if (base mod Multiple)>0: + Stop:=true; + fi; + exitif Stop; + endfor; + label(LATEX(decimal(base)),M[l][h] shifted (Largeur*(0.5,0.5))); + fi; + trace (unitsquare scaled Largeur) shifted M[l][h]; + n:=n+1; + endfor; + endfor; + enddef; + } + +\NewDocumentCommand\BuildTabMul{m}{% + \ifluatex + \mplibforcehmode + \mplibnumbersystem{double} + \begin{mplibcode} + \TabMulCode + Remplissage(#1); + \end{mplibcode} + \mplibnumbersystem{scaled} + \else + \begin{mpost}[mpsettings={\TabMulCode}] + Remplissage(#1); + \end{mpost} + \fi +} + +\def\TabMulEnonceCode{ + NbCasesLarg=\TailleTabMul; + Multiple=\useKV[TabMul]{Multiple}; + Largeur=\useKV[TabMul]{Largeur}; + color CoulFond; + boolean Colore,Stop;%,Graines; + Colore=\useKV[TabMul]{Couleurs}; + if Colore: + CoulFond=\useKV[TabMul]{Couleur}; + fi; + vardef Remplissage(text t)(text listepdt)(text listenonpdt)= + string pdt[],nonpdt[]; + n:=0; + for p_=listepdt: + pdt[n]=p_; + n:=n+1; + endfor; + n:=0; + for p_=listenonpdt: + nonpdt[n]=p_; + n:=n+1; + endfor; + pair M[][]; + n:=0; + nx=0; + no=0; + for p_=t: + for k=0 upto NbCasesLarg-1: + l:=n mod NbCasesLarg; + h:=n div NbCasesLarg; + M[l][h]=Largeur*(l,-h); + if (substring(k,k+1) of p_)="x": + if Colore: + fill ((unitsquare scaled Largeur) shifted M[l][h]) withcolor CoulFond; + fi; + label(TEX(pdt[nx]),M[l][h] shifted (Largeur*(0.5,0.5))); + nx:=nx+1; + elseif (substring(k,k+1) of p_)="X": + fill ((unitsquare scaled Largeur) shifted M[l][h]); + else: + label(TEX(nonpdt[no]),M[l][h] shifted (Largeur*(0.5,0.5))); + no:=no+1; + fi; + trace (unitsquare scaled Largeur) shifted M[l][h]; + n:=n+1; + endfor; + endfor; + enddef; + vardef RemplissagePDF(text t)(text listepdt)(text listenonpdt)= + string pdt[],nonpdt[]; + n:=0; + for p_=listepdt: + pdt[n]=p_; + n:=n+1; + endfor; + n:=0; + for p_=listenonpdt: + nonpdt[n]=p_; + n:=n+1; + endfor; + pair M[][]; + n:=0; + nx=0; + no=0; + for p_=t: + for k=0 upto NbCasesLarg-1: + l:=n mod NbCasesLarg; + h:=n div NbCasesLarg; + M[l][h]=Largeur*(l,-h); + if (substring(k,k+1) of p_)="x": + if Colore: + fill ((unitsquare scaled Largeur) shifted M[l][h]) withcolor CoulFond; + fi; + label(TEX(pdt[nx]),M[l][h] shifted (Largeur*(0.5,0.5))); + nx:=nx+1; + elseif (substring(k,k+1) of p_)="X": + fill ((unitsquare scaled Largeur) shifted M[l][h]); + else: + label(TEX(nonpdt[no]),M[l][h] shifted (Largeur*(0.5,0.5))); + no:=no+1; + fi; + trace (unitsquare scaled Largeur) shifted M[l][h]; + n:=n+1; + endfor; + endfor; + enddef; + } + +\NewDocumentCommand\BuildTabMulEnonce{mmm}{% + \ifluatex + \mplibforcehmode + \mplibnumbersystem{double} + \begin{mplibcode} + \TabMulEnonceCode + Remplissage(#1)(#2)(#3); + \end{mplibcode} + \mplibnumbersystem{scaled} + \else + \begin{mpost}[mpsettings={\TabMulEnonceCode}] + RemplissagePDF(#1)(#2)(#3); + \end{mpost} + \fi +} \ No newline at end of file diff --git a/macros/latex/contrib/profcollege/latex/PfCNotionFonction.tex b/macros/latex/contrib/profcollege/latex/PfCNotionFonction.tex index 9b6c46725a..0941c913ee 100644 --- a/macros/latex/contrib/profcollege/latex/PfCNotionFonction.tex +++ b/macros/latex/contrib/profcollege/latex/PfCNotionFonction.tex @@ -288,7 +288,7 @@ nbspline=0; % nbpoints=50; - % + % vardef SplineCubique(expr xzero,yzero,xuno,yuno,dzero,duno)= nbspline:=nbspline+1; a[nbspline]*(xzero**3)+b[nbspline]*(xzero**2)+c[nbspline]*xzero+d[nbspline]=yzero; @@ -737,7 +737,7 @@ dotlabel.lft(TEX("\num{"&decimal(k)&"}"),Origine*cm+(0,k*yu)); endfor; fi; -% +% drawoptions(withpen pencircle scaled(1)); drawarrow (u*(0,ymin-grilley)--u*(0,ymax+grilley)) shifted (u*(xpart(Origine),0)); drawarrow (u*(xmin-grillex,0)--u*(xmax+grillex,0)) shifted (u*(0,ypart(Origine))); @@ -798,7 +798,7 @@ dotlabel.lft(LATEX("\num{"&decimal(k)&"}"),(xpart(Origine*cm),k*yu+ypart(Origine*cm))); endfor; fi; -% +% drawoptions(withpen pencircle scaled(1)); drawarrow (u*(0,ymin)--u*(0,ymax)) shifted (u*(xpart(Origine),0)); drawarrow (u*(xmin,0)--u*(xmax,0)) shifted (u*(0,ypart(Origine))); diff --git a/macros/latex/contrib/profcollege/latex/PfCNumberHive.tex b/macros/latex/contrib/profcollege/latex/PfCNumberHive.tex index 309d5aaa9f..3c7903c3a0 100644 --- a/macros/latex/contrib/profcollege/latex/PfCNumberHive.tex +++ b/macros/latex/contrib/profcollege/latex/PfCNumberHive.tex @@ -47,7 +47,7 @@ \readlist*\ListeCompoNH{\faa}% \foreachitem\compteur\in\ListeCompoNH{\expandafter\UpdatetoksNHive\compteur\nil}% \begin{tikzpicture} - \node[xshift=1cm,yshift=-1cm,rotate=45] at (0,0) {\includegraphics[scale=0.1]{LogoNumberHive.png}}; + \node[xshift=1cm,yshift=-1cm,rotate=45] at (0,0) {\includegraphics[scale=0.1]{PfCLogoNumberHive.png}}; \node[anchor=north west] at (0,0) {\BuildNumberHiveAdditif{\the\toklistenumberhive}{\useKV[NumberHive]{Niveau}}{\useKV[NumberHive]{Jetons}}{\ListeAvantCouleurs}{\the\toklistecasescoloreesNH}}; \end{tikzpicture} }% diff --git a/macros/latex/contrib/profcollege/latex/PfCPyramideCalculs.tex b/macros/latex/contrib/profcollege/latex/PfCPyramideCalculs.tex index 3e17ac010e..fdd5c7b685 100644 --- a/macros/latex/contrib/profcollege/latex/PfCPyramideCalculs.tex +++ b/macros/latex/contrib/profcollege/latex/PfCPyramideCalculs.tex @@ -93,11 +93,11 @@ Produit[3]=Facteur[3] * Facteur[1]; for k=1 upto 3: if Produit or Solution: - label(TEX("\num{"&decimal(Produit[k])&"}"),(1.75[O,B[k]]-center BoiteRec)); + label(LATEX("\num{"&decimal(Produit[k])&"}"),(1.75[O,B[k]]-center BoiteRec)); fi; if Produit: else: - label(TEX("\num{"&decimal(Facteur[k])&"}"),(0.5[O,A[k]]-center BoiteRec)); + label(LATEX("\num{"&decimal(Facteur[k])&"}"),(0.5[O,A[k]]-center BoiteRec)); fi; endfor; fi; diff --git a/macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex b/macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex index 1b425a7701..f921498c54 100644 --- a/macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex +++ b/macros/latex/contrib/profcollege/latex/PfCQuestionsRelier.tex @@ -31,7 +31,7 @@ picture]{\node[name=RelieD-\theNbRelie,inner sep=0pt]{};\fill[] (RelieD-\theNbRelie) circle[radius=1.5pt]}}cp{\useKV[ClesRelie]{LargeurD}}}% \xintFor* ##1 in {\xintSeq {1}{\ListeRelielen}}\do{\ListeRelie[##1,1]\itemtomacro\ListeRelie[##1,1]\untest% -\ifx\bla\untest\bla% +\ifx\bla\untest\bla% \uppercase{&}\stepcounter{NbRelie}% \else \uppercase{&}\stepcounter{NbRelie}\tikz[remember @@ -49,7 +49,7 @@ \begin{tabular}{p{\useKV[ClesRelie]{LargeurG}}cp{\useKV[ClesRelie]{Ecart}}>{\tikz[remember picture,baseline]{\node[name=RelieD-\theNbRelie]{\Large\textbullet};}}cp{\useKV[ClesRelie]{LargeurD}}}% \xintFor* ##1 in {\xintSeq {1}{\ListeRelielen}}\do{\ListeRelie[##1,1]\itemtomacro\ListeRelie[##1,1]\untest% -\ifx\bla\untest\bla% +\ifx\bla\untest\bla% \uppercase{&}\stepcounter{NbRelie}% \else \uppercase{&}\stepcounter{NbRelie}\tikz[remember picture,baseline]{\node[name=RelieG-\theNbRelie]{\Large\textbullet};} diff --git a/macros/latex/contrib/profcollege/latex/PfCReperage.tex b/macros/latex/contrib/profcollege/latex/PfCReperage.tex index 0d4ba8b3d6..48d4942761 100644 --- a/macros/latex/contrib/profcollege/latex/PfCReperage.tex +++ b/macros/latex/contrib/profcollege/latex/PfCReperage.tex @@ -147,6 +147,7 @@ % label.top(TEX("Oeil="&decimal(greenpart(Oeil))),(0,2cm)); % label.top(TEX("Oeil="&decimal(bluepart(Oeil))),(0,3cm)); \end{mplibcode} + \mplibnumbersystem{scaled} \else \begin{mpost}[mpsettings={PfCRho=\useKV[ClesReperage]{Rho};PfCPhi=\useKV[ClesReperage]{Phi};PfCTheta=\useKV[ClesReperage]{Theta};color CouleurE,CouleurG;CouleurE=\useKV[ClesReperage]{CouleurE};CouleurG=\useKV[ClesReperage]{CouleurG};boolean AffichageNom,Axes;AffichageNom=\useKV[ClesReperage]{AffichageNom};Axes=\useKV[ClesReperage]{Axes};}] input PfCSolid; @@ -767,7 +768,7 @@ drawarrow (B+(-0.75*unitpx,0))--(C+(0.75*unitpx,0)); drawarrow (D+(0,-0.75*unitpy))--(E+(0,0.75*unitpy)); % graduation compl\`ete ou pas ? - label.llft(btex \footnotesize 0 etex,A); + label.llft(TEX("\footnotesize 0"),A); if #6>0: for k=minx upto maxx: if (xpart((k*unitex,0))>xpart(B+(-0.75*unitpx,0))) and (xpart((k*unitex,0)){\centering\arraybackslash}p{\useKV[ClesStat]{Largeur}}}}% - \CodeBefore% - \rowcolor{\useKV[ClesStat]{CouleurTab}}{1}% - \columncolor{\useKV[ClesStat]{CouleurTab}}{1}% - \Body% - \the\tabtoksa&Total\\% - \ifboolKV[ClesStat]{EffVide}{\useKV[ClesStat]{Effectif}\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&}}{\the\tabtoksb&\num{\EffectifTotal}}\\% - \ifboolKV[ClesStat]{Frequence}{\stepcounter{PfCCompteLignes}Fr\'equence (\%)\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{FreqVide}{}{\num{\CalculFrequence{##1}}}}}&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{FreqVide}{}{100}}\\}{}% - \ifboolKV[ClesStat]{Angle}{\stepcounter{PfCCompteLignes}Angle (\si{\degree})\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{\CalculAngle{##1}}}}&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{360}}\\}{}% - \ifboolKV[ClesStat]{SemiAngle}{\stepcounter{PfCCompteLignes}Angle (\si{\degree})\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{\CalculSemiAngle{##1}}}}&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{180}}\\}{}% - \ifboolKV[ClesStat]{ECC}{\stepcounter{PfCCompteLignes}E.C.C.\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{ECCVide}{}{\CalculECC{##1}}}}&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{ECCVide}{}{\num{\EffectifTotal}}}\\}{}% - \CodeAfter% - % On crée la liste des colonnes à vider - \xintifboolexpr{\useKV[ClesStat]{ColVide}>0}{% - \xdef\FooStat{\useKV[ClesStat]{ColVide}}% - \setsepchar{,}% - \readlist*\ListeColonnesAVider{\FooStat}% - \foreachitem\compteur\in\ListeColonnesAVider{% - \tikz\fill[white] (row-2-|col-\fpeval{\compteur+1}) rectangle (last-|col-\fpeval{\compteur+2});% - }% - }{}% - % On crée la liste des cases à vider - \ifboolKV[ClesStat]{CaseVide}{% - \xdef\FooStatCases{\useKV[ClesStat]{CasesVides}}% - \setsepchar[*]{,*/}% - \readlist*\ListeCasesAVider{\FooStatCases}% - \foreachitem\compteur\in\ListeCasesAVider{% - \tikz\fill[white] (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+1}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+1}) rectangle (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+2}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+2});% - }% - }{}% - % On retrace le tableau - %Les colonnes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\ListeCompletelen+3}}}\do{% - \tikz\draw (row-1-|col-##1) -- (last-|col-##1);% - }% - % Les lignes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\thePfCCompteLignes+3}}}\do{% - \tikz\draw (row-##1-|col-1) -- (row-##1-|last);% - }% - \end{NiceTabular}% - }{% - \begin{NiceTabular}{c*{\fpeval{\ListeCompletelen}}{>{\centering\arraybackslash}p{\useKV[ClesStat]{Largeur}}}}% - \CodeBefore% - \rowcolor{\useKV[ClesStat]{CouleurTab}}{1}% - \columncolor{\useKV[ClesStat]{CouleurTab}}{1}% - \Body% - \the\tabtoksa\\% - \ifboolKV[ClesStat]{EffVide}{\useKV[ClesStat]{Effectif}\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&}}{\the\tabtoksb}\\% - \ifboolKV[ClesStat]{Frequence}{\stepcounter{PfCCompteLignes}Fr\'equence (\%)\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{FreqVide}{}{\num{\CalculFrequence{##1}}}}}\\}{}% - \ifboolKV[ClesStat]{Angle}{\stepcounter{PfCCompteLignes}Angle (\si{\degree})\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{\CalculAngle{##1}}}}\\}{}% - \ifboolKV[ClesStat]{SemiAngle}{\stepcounter{PfCCompteLignes}Angle (\si{\degree})\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{\CalculSemiAngle{##1}}}}\\}{}% - \ifboolKV[ClesStat]{ECC}{\stepcounter{PfCCompteLignes}E.C.C.\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{ECCVide}{}{\CalculECC{##1}}}}\\}{}% - \CodeAfter% - % On crée la liste des colonnes à vider - \xintifboolexpr{\useKV[ClesStat]{ColVide}>0}{% - \xdef\FooStat{\useKV[ClesStat]{ColVide}}% - \setsepchar{,}% - \readlist*\ListeColonnesAVider{\FooStat}% - \foreachitem\compteur\in\ListeColonnesAVider{% - \tikz\fill[white] (row-2-|col-\fpeval{\compteur+1}) rectangle (last-|col-\fpeval{\compteur+2});% - }% - }{}% - % On crée la liste des cases à vider - \ifboolKV[ClesStat]{CaseVide}{% - \xdef\FooStatCases{\useKV[ClesStat]{CasesVides}}% - \setsepchar[*]{,*/}% - \readlist*\ListeCasesAVider{\FooStatCases}% - \foreachitem\compteur\in\ListeCasesAVider{% - \tikz\fill[white] (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+1}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+1}) rectangle (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+2}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+2});% - }% - }{}% - % On retrace le tableau - %Les colonnes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\ListeCompletelen+2}}}\do{% - \tikz\draw (row-1-|col-##1) -- (last-|col-##1);% - }% - % Les lignes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\thePfCCompteLignes+3}}}\do{% - \tikz\draw (row-##1-|col-1) -- (row-##1-|last);% - }% - \end{NiceTabular}% - }% -}% - -% Pour construire le diagramme en barres horizontales -\def\UpdatetoksHor#1/#2/#3\nil{\addtotok\toklistenomhor{"#1",}\addtotok\toklistedonhor{#3,}\addtotok\toklisteaffhor{"#2",}}% - -\newcommand\buildgraphbarhor{% - \newtoks\toklistenomhor% - \newtoks\toklistedonhor% - \newtoks\toklisteaffhor% - \newtoks\toklistecouleur% - \xdef\PfCfooStat{}% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xdef\PfCfooStat{\PfCfooStat \ListeComplete[##1,2],}% - }% - \xdef\DivMax{\fpeval{max(\PfCfooStat)}}% - \xdef\ExposantDivMax{\fpeval{round(ln(\DivMax)/ln(10))}}% - \xdef\DivMax{\fpeval{10**\ExposantDivMax}}% - \xdef\PfCfooStat{}% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xdef\PfCfooStat{\PfCfooStat \ListeComplete[##1,1]/\ListeComplete[##1,2]/\fpeval{\ListeComplete[##1,2]/\DivMax},}% - }% - \readlist*\ListeCompleteDiagHor{\PfCfooStat}% - \foreachitem\compteur\in\ListeCompleteDiagHor{\expandafter\UpdatetoksHor\compteur\nil}% - \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleurs}}% - \readlist*\ListeCouleur{\ListeAvantCouleurs}% - \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - \NewMPDiagBarreHor{\the\toklistenomhor}{\the\toklistedonhor}{\the\toklisteaffhor}{\the\toklistecouleur}% -}% - -% Pour construire le diagramme en bâtons -\def\Updatetoks#1/#2\nil{\addtotok\toklistepoint{(#1,#2),}}% -\newcommand\buildgraph[1][]{% - \newtoks\toklistepoint\toklistepoint{}% - \newtoks\toklistecouleur\toklistecouleur{}% - \newtoks\toklistelegende\toklistelegende{}% - \ifboolKV[ClesStat]{LegendeVide}{% - \xdef\foo{\useKV[ClesStat]{LegendesVides}}% - \readlist*\ListeLegendesAEffacer{\foo}% - }{\xdef\foo{-1}\readlist*\ListeLegendesAEffacer{\foo}% - }% - \foreachitem\compteur\in\ListeLegendesAEffacer{\expandafter\UpdateLegende\compteur\nil}% - \foreachitem\compteur\in\ListeComplete{\expandafter\Updatetoks\compteur\nil}% - \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleursB}}% - \readlist*\ListeCouleur{\ListeAvantCouleurs}% - \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - \MPStatNew{\the\toklistepoint}{\the\toklistecouleur}{\the\toklistelegende} -}% - -% Pour construire le diagramme en bâtons qualitatif -\def\Updatetoksq#1/#2\nil{\addtotok\toklistepointq{"#1",#2,}}% -\newcommand\buildgraphq[1][]{% - \newtoks\toklistepointq\toklistepointq{}% - \newtoks\toklistecouleur\toklistecouleur{}% - \newtoks\toklistelegende\toklistelegende{}% - \ifboolKV[ClesStat]{LegendeVide}{% - \xdef\foo{\useKV[ClesStat]{LegendesVides}}% - \readlist*\ListeLegendesAEffacer{\foo}% - }{\xdef\foo{-1}\readlist*\ListeLegendesAEffacer{\foo}% - }% - \foreachitem\compteur\in\ListeLegendesAEffacer{\expandafter\UpdateLegende\compteur\nil}% - \foreachitem\compteur\in\ListeComplete{\expandafter\Updatetoksq\compteur\nil}% - \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleursB}}% - \readlist*\ListeCouleur{\ListeAvantCouleurs}% - \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - \MPStatNew{\the\toklistepointq}{\the\toklistecouleur}{\the\toklistelegende}% -}% - -\def\UpdateCoul#1\nil{\addtotok\toklistecouleur{#1,}}% -\def\UpdateLegende#1\nil{\addtotok\toklistelegende{#1,}}% - -% Pour construire le diagramme circulaire qualitatif -\def\buildgraphcq#1{% - \newtoks\toklistepointq\toklistepointq{}% - \newtoks\toklistecouleur\toklistecouleur{}% - \newtoks\toklistelegende\toklistelegende{}% - \ifboolKV[ClesStat]{LegendeVide}{% - \xdef\foo{\useKV[ClesStat]{LegendesVides}}% - \readlist*\ListeLegendesAEffacer{\foo}% - }{\xdef\foo{0}\readlist*\ListeLegendesAEffacer{\foo}% - }% - \foreachitem\compteur\in\ListeLegendesAEffacer{\expandafter\UpdateLegende\compteur\nil}% - % - \foreachitem\compteur\in\ListeComplete{\expandafter\Updatetoksq\compteur\nil}% - \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleurs}}% - \readlist*\ListeCouleur{\ListeAvantCouleurs}% - \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - \NewMPStatCirculaireQ{\the\toklistepointq}{#1}{\the\toklistecouleur}{\the\toklistelegende}% -}% - -%% calcul des fr\'equences -\newcommand\CalculFrequence[1]{% - \fpeval{round(\ListeComplete[#1,2]*100/\EffectifTotal,\useKV[ClesStat]{PrecisionF})} -} - -%% calcul des angles -\newcommand\CalculAngle[1]{% - \fpeval{round(\ListeComplete[#1,2]*360/\EffectifTotal,0)} -} -\newcommand\CalculSemiAngle[1]{% - \fpeval{round(\ListeComplete[#1,2]*180/\EffectifTotal,0)} -} - -%% calcul des ECC -\newcount\CompteurECC% -\newcount\CompteurECCTotal% -\newcount\CompteurECCC% -\newcount\CompteurECCCTotal% - -\newcommand\CalculECC[1]{% - \xdef\TotalECC{0}% - \CompteurECC=1% - \CompteurECCTotal=\numexpr#1+1% - \whiledo{\CompteurECC < \CompteurECCTotal}{% - \xdef\TotalECC{\fpeval{\TotalECC+\ListeComplete[\the\CompteurECC,2]}}% - \CompteurECC=\numexpr\CompteurECC+1% - }% - \num{\TotalECC}% -} - -\def\NewMPDiagBarreHorCode{% - Longueur:=\useKV[ClesStat]{Longueur}; - Hauteur:=\useKV[ClesStat]{Hauteur}; - Ecart:=\useKV[ClesStat]{EcartBarre}; - ExposantDivMax:=\ExposantDivMax; - ecarthachures=\useKV[ClesStat]{EcartHachures}; - epaisseurhachures=\useKV[ClesStat]{EpaisseurHachures}; - boolean Hachures,Bicolore,Grille,AffichageDonnee,LegendeVide; - Hachures=\useKV[ClesStat]{Hachures}; - Bicolore=\useKV[ClesStat]{Bicolore}; - Grille=\useKV[ClesStat]{Grille}; - AffichageDonnee=\useKV[ClesStat]{AffichageDonnee}; - LegendeVide=\useKV[ClesStat]{LegendeVide}; - vardef CalculNombreDonneesEtDonneeMax(text t)= - nbdon:=0;%nombre de données - DonneeMax:=0;%donnée DonneeMaximale - for p_=t: - nbdon:=nbdon+1; - if p_>DonneeMax: - DonneeMax:=p_; - fi; - endfor; - enddef; - vardef ListeDonnees(text t)= - n:=0; - for p_=t: - n:=n+1; - Donnees[n]:=p_; - endfor; - enddef; - vardef RecuperationCouleurs(text t)= - color Col[]; - n:=0; - for p_=t: - n:=n+1; - Col[n]=p_; - endfor; - enddef; -} - -% Construction d'un diagramme en barres horizontal -\newcommand\NewMPDiagBarreHor[4]{% - % #1 Liste des noms - % #2 Liste des valeurs associées - % #3 Liste des valeurs à afficher (si pb calcul MP) - % #4 Liste des couleurs - \ifluatex% - \mplibforcehmode% - \begin{mplibcode}% - \NewMPDiagBarreHorCode% - vardef TraceDiag= - if Grille: - pair Zz[];%Pour déterminer "le dernier point" - Zz0=(0,-(nbdon-1)*(Hauteur+Ecart)-Ecart); - Zz2=(0,(Hauteur+Ecart)); - Zz1=((1/DonneeMax)*Longueur,-(nbdon-1)*(Hauteur+Ecart)-Ecart); - Zz3=if ExposantDivMax=0 : (DonneeMax+1)[Zz0,Zz1] else: ((floor(DonneeMax*10+2))/10)[Zz0,Zz1];fi; - if ExposantDivMax=0: - for k=1 upto DonneeMax+1: - trace (Zz0--Zz2) shifted (k*(Zz1-Zz0)) dashed evenly withcolor 0.5white; - endfor; - else: - for k=1 upto (floor(DonneeMax*10+2)): - trace (Zz0--Zz2) shifted ((k/10)*(Zz1-Zz0)) dashed evenly withcolor 0.5white; - endfor; - fi; - if ExposantDivMax=0: - for k=1 upto (DonneeMax+1): - label.bot(TEX("\num{"&decimal(k)&"}"),Zz0+k*(Zz1-Zz0)); - endfor; - else: - if ExposantDivMax<5: - for k=1 upto (floor(DonneeMax*10+2)): - label.bot(TEX("\num{\fpeval{"&decimal(k)&"*(10**"&decimal(ExposantDivMax-1)&")}}"),Zz0+(k/10)*(Zz1-Zz0)); - endfor; - else: - dotlabel.bot(TEX("\num{\fpeval{10**"&decimal(ExposantDivMax)&"}}"),Zz1); - fi; - fi; - fi; - for k=0 upto nbdon-1: - path RectangleDonnee; - RectangleDonnee=(unitsquare xscaled ((Donnees[k+1]/DonneeMax)*Longueur) yscaled Hauteur) shifted(0,-k*(Hauteur+Ecart)); - if Hachures: - fill RectangleDonnee withcolor white; - trace Hachurage(RectangleDonnee,60 if - (k mod 2)=0: +90 fi,ecarthachures,if (k mod 2)=0 : 0 else: 1 fi) - withpen pencircle scaled epaisseurhachures; - else: - remplis RectangleDonnee withcolor if unknown Col[k+1]: if Bicolore:Col[(k mod 2)+1] else: white fi; else:if Bicolore:Col[(k mod 2)+1] else: Col[k+1] fi; fi; - fi; - trace RectangleDonnee; - endfor; - if Grille: - drawarrow (0,-(nbdon-1)*(Hauteur+Ecart)-Ecart)--(0,(Hauteur+Ecart)) withpen pencircle scaled 1.5; - drawarrow (0,-(nbdon-1)*(Hauteur+Ecart)-Ecart)--(Zz3+u*(0.25,0)) withpen pencircle scaled 1.5; - fi; - enddef; - vardef AffichageNom(text t)= - k:=0; - for p_=t: - label.lft(TEX(p_),0.5[(0,0),(0,Hauteur)] shifted (0,-k*(Hauteur+Ecart))); - k:=k+1; - endfor; - enddef; - vardef AffichageDonnees(text t)= - k:=0; - for p_=t: - label.rt(TEX("\num{"&p_&"}"),0.5[(0,0),(0,Hauteur)] shifted (((Donnees[k+1]/DonneeMax)*Longueur),-k*(Hauteur+Ecart))); - k:=k+1; - endfor; - enddef; - CalculNombreDonneesEtDonneeMax(#2); - ListeDonnees(#2); - RecuperationCouleurs(#4); - TraceDiag; - if LegendeVide=false: - AffichageNom(#1); - fi; - if AffichageDonnee: - AffichageDonnees(#3); - fi; - \end{mplibcode} - \else% - \begin{mpost}[mpsettings={\NewMPDiagBarreHorCode}] - vardef TraceDiag= - if Grille: - pair Zz[];%Pour déterminer "le dernier point" - Zz0=(0,-(nbdon-1)*(Hauteur+Ecart)-Ecart); - Zz2=(0,(Hauteur+Ecart)); - Zz1=((1/DonneeMax)*Longueur,-(nbdon-1)*(Hauteur+Ecart)-Ecart); - Zz3=if ExposantDivMax=0 : (DonneeMax+1)[Zz0,Zz1] else: ((floor(DonneeMax*10+2))/10)[Zz0,Zz1];fi; - if ExposantDivMax=0: - for k=1 upto DonneeMax+1: - trace (Zz0--Zz2) shifted (k*(Zz1-Zz0)) dashed evenly withcolor 0.5white; - endfor; - else: - for k=1 upto (floor(DonneeMax*10+2)): - trace (Zz0--Zz2) shifted ((k/10)*(Zz1-Zz0)) dashed evenly withcolor 0.5white; - endfor; - fi; - if ExposantDivMax=0: - for k=1 upto (DonneeMax+1): - label.bot(LATEX("\num{"&decimal(k)&"}"),Zz0+k*(Zz1-Zz0)); - endfor; - else: - if ExposantDivMax<5: - for k=1 upto (floor(DonneeMax*10+2)): - label.bot(LATEX("\num{\noexpand\fpeval{"&decimal(k)&"*(10**"&decimal(ExposantDivMax-1)&")}}"),Zz0+(k/10)*(Zz1-Zz0)); - endfor; - else: - dotlabel.bot(LATEX("\num{\noexpand\fpeval{10**"&decimal(ExposantDivMax)&"}}"),Zz1); - fi; - fi; - fi; - for k=0 upto nbdon-1: - path RectangleDonnee; - RectangleDonnee=(unitsquare xscaled ((Donnees[k+1]/DonneeMax)*Longueur) yscaled Hauteur) shifted(0,-k*(Hauteur+Ecart)); - if Hachures: - fill RectangleDonnee withcolor white; - trace Hachurage(RectangleDonnee,60 if - (k mod 2)=0: +90 fi,ecarthachures,if (k mod 2)=0 : 0 else: 1 fi) - withpen pencircle scaled epaisseurhachures; - else: - remplis RectangleDonnee withcolor if unknown Col[k+1]: if Bicolore:Col[(k mod 2)+1] else: white fi; else:if Bicolore:Col[(k mod 2)+1] else: Col[k+1] fi; fi; - fi; - trace RectangleDonnee; - endfor; - if Grille: - drawarrow (0,-(nbdon-1)*(Hauteur+Ecart)-Ecart)--(0,(Hauteur+Ecart)) withpen pencircle scaled 1.5; - drawarrow (0,-(nbdon-1)*(Hauteur+Ecart)-Ecart)--(Zz3+u*(0.25,0)) withpen pencircle scaled 1.5; - fi; - enddef; - vardef AffichageNom(text t)= - k:=0; - for p_=t: - label.lft(LATEX(p_),0.5[(0,0),(0,Hauteur)] shifted (0,-k*(Hauteur+Ecart))); - k:=k+1; - endfor; - enddef; - vardef AffichageDonnees(text t)= - k:=0; - for p_=t: - label.rt(LATEX("\num{"&p_&"}"),0.5[(0,0),(0,Hauteur)] shifted (((Donnees[k+1]/DonneeMax)*Longueur),-k*(Hauteur+Ecart))); - k:=k+1; - endfor; - enddef; - CalculNombreDonneesEtDonneeMax(#2); - ListeDonnees(#2); - RecuperationCouleurs(#4); - TraceDiag; - if LegendeVide=false: - AffichageNom(#1); - fi; - if AffichageDonnee: - AffichageDonnees(#3); - fi; - \end{mpost} - \fi% -}% - -\def\MPStatNewCode{% - maxx:=0; - maxy:=0; - unitex:=\useKV[ClesStat]{Unitex}*cm; - unitey:=\useKV[ClesStat]{Unitey}*cm; - xpartorigine:=\useKV[ClesStat]{Origine}; - AngleRotation=\useKV[ClesStat]{AngleRotationAbscisse}; - boolean Rotation,Lecture,LectureFine,AideLecture,DonneesSup,Reponses,Qualitatif,Tiret,LegendeVide,Retour,GrandNombrex,GrandNombrey,Date; - GrandNombrex=\useKV[ClesStat]{GrandNombrex}; - GrandNombrey=\useKV[ClesStat]{GrandNombrey}; - if GrandNombrex: - GrandNombreA=\useKV[ClesStat]{GrandNombreA}; - fi; - if GrandNombrey: - GrandNombreO=\useKV[ClesStat]{GrandNombreO}; - fi; - Date:=\useKV[ClesStat]{Date}; - Rotation=\useKV[ClesStat]{AbscisseRotation}; - Lecture:=\useKV[ClesStat]{Lecture}; - LectureFine:=\useKV[ClesStat]{LectureFine}; - AideLecture:=\useKV[ClesStat]{AideLecture}; - DonneesSup:=\useKV[ClesStat]{DonneesSup}; - Reponses:=\useKV[ClesStat]{Reponses}; - LegendeVide=\useKV[ClesStat]{LegendeVide}; - epaisseurbatons=\useKV[ClesStat]{EpaisseurBatons}; - Qualitatif=\useKV[ClesStat]{Qualitatif}; - Tiret=\useKV[ClesStat]{Tiret}; - Retour=false; - color CoulDefaut; - CoulDefaut=\useKV[ClesStat]{CouleurDefaut}; - Depart=\useKV[ClesStat]{Depart}; - % - pair A[],B[],P[]; - vardef toto(text t)=%points quantitatif - n:=0; - for p_=t: - if pair p_: - n:=n+1; - P[n]=((xpart(p_)-(xpartorigine))*unitex,ypart(p_)*unitey); - if xpart(p_)>maxx: - maxx:=xpart(p_)-(xpartorigine); - fi; - if ypart(p_)>maxy: - maxy:=ypart(p_); - fi; - A[n]=unitex*(xpart(p_)-(xpartorigine),0); - B[n]=unitey*(0,ypart(p_)); - fi; - endfor; - enddef; - vardef tutu(text t)=%points qualitatif - n:=0; - for p_=t: - if numeric p_: - P[n]=((n)*unitex,unitey*(p_-Depart)); - B[n]=(0,unitey*(p_-Depart)); - if p_>maxy: - maxy:=p_; - fi; - else: - n:=n+1; - A[n]=unitex*(n,0); - fi; - endfor; - maxy:=maxy-Depart; - maxx:=n; - enddef; -} - -% Construction du graphique en bâtons -\newcommand\MPStatNew[3]{% - \ifluatex - \mplibforcehmode - \begin{mplibcode} - \MPStatNewCode - % - vardef Test(expr nb)= - Retour:=false; - op:=0; - for l_=#3: - if l_=nb: - op:=op+1; - fi; - endfor; - if op>0: - Retour:=true; - fi; - enddef; - % - % on r\'ecup\`ere les couleurs - color Col[]; - n:=0; - for p_=#2: - n:=n+1; - if color p_: - Col[n]=p_; - else: - Col[n]=CoulDefaut; - fi; - endfor; - vardef tata(text t)=%affichage quantitatif - l=0; - for p_=t: - if pair p_: - l:=l+1; - if Rotation: - if Date: - label.bot(TEX(decimal(xpart(p_))) rotated AngleRotation,A[l]); - else: - label.bot(TEX("\num{"&decimal(xpart(p_))&"}") rotated AngleRotation,A[l]); - fi; - else : - if Date: - label.bot(TEX(decimal(xpart(p_))),A[l]); - else: - label.bot(TEX("\num{"&decimal(xpart(p_))&"}"),A[l]); - fi; - fi; - if Reponses: - if DonneesSup: - Test(l); - if Retour=false: - if GrandNombrey: - label.top(TEX("\num{"&decimal(ypart(p_))&"}"),P[l]); - else: - label.top(TEX("\num{"&decimal(ypart(p_))&"}"),P[l]); - fi; - fi; - else: - if Tiret: - trace (B[l]+(-1pt,0))--(B[l]+(1pt,0)); - label.lft(TEX("\num{"&decimal(p_)&"}"),B[l]); - else: - dotlabel.lft(TEX("\num{"&decimal(ypart(p_))&"}"),B[l]); - fi; - fi; - fi; - fi; - endfor; - enddef; - vardef titi(text t)=%affichage qualitatif - l:=0; - for p_=t: - if numeric p_: - if Reponses: - if DonneesSup: - Test(l); - if Retour=false: - label.top(TEX("\num{"&decimal(p_)&"}"),P[l]); - fi; - else: - if Tiret: - trace (B[l]+(-1pt,0))--(B[l]+(1pt,0)); - label.lft(TEX("\num{"&decimal(p_)&"}"),B[l]); - else: - dotlabel.lft(TEX("\num{"&decimal(p_)&"}"),B[l]); - fi; - fi; - fi; - else: - l:=l+1; - if Rotation: - if AngleRotation<>0: - picture TEXTELABEL; - TEXTELABEL=image( - labeloffset:=labeloffset*2; - label.lft(TEX(p_),A[l]); - labeloffset:=labeloffset/2; - ); - trace rotation(TEXTELABEL,A[l],AngleRotation); - else : - label.bot(TEX(p_),A[l]); - fi; - fi; - fi; - endfor; - enddef; - if Qualitatif: tutu(#1); else: toto(#1); fi; - boolean Grille; - Grille:=\useKV[ClesStat]{Grille}; - Pasx:=\useKV[ClesStat]{Pasx}; - Pasy:=\useKV[ClesStat]{Pasy}; - if Grille: - drawoptions(withcolor 0.75white); - for k=0 step Pasx until ((maxx+1)): - trace (k*unitex,0)--(k*unitex,unitey*(maxy+2*Pasy)); - endfor; - for k=0 step Pasy until ((maxy+2*Pasy)): - trace (0,k*unitey)--(unitex*(maxx+1),k*unitey); - endfor; - drawoptions(); - fi; - if epaisseurbatons<>0: - for k=1 upto n: - fill polygone(A[k]-(epaisseurbatons*1pt,0),A[k]+(epaisseurbatons*1pt,0),P[k]+(epaisseurbatons*1pt,0),P[k]-(epaisseurbatons*1pt,0)) withcolor if unknown Col[k]: CoulDefaut else:Col[k] fi; - if AideLecture: - draw B[k]--P[k] dashed evenly; - fi; - endfor; - fi; - if LectureFine: - for k=0 step Pasy until ((maxy+1*Pasy)): - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - if GrandNombrey: - label.lft(TEX("\num{\fpeval{\useKV[ClesStat]{GrandNombreO}*"&decimal(k+Depart)&"}}"),(0,k*unitey)); - else: - label.lft(TEX("\num{"&decimal(k+Depart)&"}"),(0,k*unitey)); - fi; - else: - if GrandNombrey: - dotlabel.lft(TEX("\num{\fpeval{\useKV[ClesStat]{GrandNombreO}*"&decimal(k+Depart)&"}}"),(0,k*unitey)); - else: - dotlabel.lft(TEX("\num{"&decimal(k+Depart)&"}"),(0,k*unitey)); - fi; - fi; - endfor; - fi; - if Lecture: - for k=0 step Pasy until Pasy: - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - if GrandNombrey: - label.lft(TEX("\num{\fpeval{\useKV[ClesStat]{GrandNombreO}*"&decimal(k)&"}}"),(0,k*unitey)); - else: - label.lft(TEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - fi; - else: - if GrandNombrey: - dotlabel.lft(TEX("\num{\fpeval{\useKV[ClesStat]{GrandNombreO}*"&decimal(k)&"}}"),(0,k*unitey)); - else: - dotlabel.lft(TEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - fi; - fi; - endfor; - fi; - drawarrow (0,0)--unitex*(maxx+1,0); - drawarrow (0,0)--unitey*(0,maxy+2*Pasy); - label.lrt(btex \useKV[ClesStat]{Donnee} etex,unitex*(maxx+1,0)); - label.urt(btex \useKV[ClesStat]{Effectif} etex,unitey*(0,maxy+2*Pasy)); - if Qualitatif: titi(#1); else:tata(#1); fi; - \end{mplibcode} - \else - \begin{mpost}[mpsettings={\MPStatNewCode}] - % on r\'ecup\`ere les couleurs - color Col[]; - n:=0; - for p_=#2: - n:=n+1; - if color p_: - Col[n]=p_; - else: - Col[n]=CoulDefaut; - fi; - endfor; - % - vardef tata(text t)=%affichage quantitatif - l=0; - for p_=t: - if pair p_: - l:=l+1; - if Rotation: - label.bot(LATEX("\num{"&decimal(xpart(p_))&"}") rotated AngleRotation,A[l]); - else : - label.bot(LATEX("\num{"&decimal(xpart(p_))&"}"),A[l]); - fi; - if Reponses: - if DonneesSup: - label.top(LATEX("\num{"&decimal(ypart(p_))&"}"),P[l]); - else: - if Tiret: - trace (B[l]+(-1pt,0))--(B[l]+(1pt,0)); - label.lft(LATEX("\num{"&decimal(p_)&"}"),B[l]); - else: - dotlabel.lft(LATEX("\num{"&decimal(ypart(p_))&"}"),B[l]); - fi; - fi; - fi; - fi; - endfor; - enddef; - vardef titi(text t)=%affichage qualitatif - l:=0; - for p_=t: - if numeric p_: - if Reponses: - if DonneesSup: - label.top(LATEX("\num{"&decimal(p_)&"}"),P[l]); - else: - if Tiret: - trace (B[l]+(-1pt,0))--(B[l]+(1pt,0)); - label.lft(LATEX("\num{"&decimal(p_)&"}"),B[l]); - else: - dotlabel.lft(LATEX("\num{"&decimal(p_)&"}"),B[l]); - fi; - fi; - fi; - else: - l:=l+1; - if Rotation: - if AngleRotation<>0: - picture TEXTELABEL; - TEXTELABEL=image( - labeloffset:=labeloffset*2; - label.lft(LATEX(p_),A[l]); - labeloffset:=labeloffset/2; - ); - trace rotation(TEXTELABEL,A[l],AngleRotation); - else : - label.bot(LATEX(p_),A[l]); - fi; - fi; - fi; - endfor; - enddef; - if Qualitatif: tutu(#1); else: toto(#1); fi; - boolean Grille; - Grille:=\useKV[ClesStat]{Grille}; - Pasx:=\useKV[ClesStat]{Pasx}; - Pasy:=\useKV[ClesStat]{Pasy}; - if Grille: - drawoptions(withcolor 0.75white); - for k=0 step Pasx until ((maxx+1)): - trace (k*unitex,0)--(k*unitex,unitey*(maxy+2*Pasy)); - endfor; - for k=0 step Pasy until ((maxy+2*Pasy)): - trace (0,k*unitey)--(unitex*(maxx+1),k*unitey); - endfor; - drawoptions(); - fi; - if epaisseurbatons<>0: - for k=1 upto n: - fill polygone(A[k]-(epaisseurbatons*1pt,0),A[k]+(epaisseurbatons*1pt,0),P[k]+(epaisseurbatons*1pt,0),P[k]-(epaisseurbatons*1pt,0)) withcolor if unknown Col[k]: CoulDefaut else:Col[k] fi; - if AideLecture: - draw B[k]--P[k] dashed evenly; - fi; - endfor; - fi; - if LectureFine: - for k=0 step Pasy until ((maxy+1*Pasy)): - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - label.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - else: - dotlabel.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - fi; - endfor; - fi; - if Lecture: - for k=0 step Pasy until Pasy: - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - label.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - else: - dotlabel.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - fi; - endfor; - fi; - drawarrow (0,0)--unitex*(maxx+1,0); - drawarrow (0,0)--unitey*(0,maxy+2*Pasy); - label.lrt(btex \useKV[ClesStat]{Donnee} etex,unitex*(maxx+1,0)); - label.urt(btex \useKV[ClesStat]{Effectif} etex,unitey*(0,maxy+2*Pasy)); - if Qualitatif: titi(#1); else:tata(#1); fi; - \end{mpost} - \fi -} - -\def\NewMPStatCirculaireCodeQ{% - Rayon:=\useKV[ClesStat]{Rayon}; - ecarthachures=\useKV[ClesStat]{EcartHachures}; - epaisseurhachures=\useKV[ClesStat]{EpaisseurHachures}; - boolean AffichageAngle,AffichageDonnee,Hachures,Inverse,Legende,LegendeVide,Retour,ACompleter; - AffichageAngle=\useKV[ClesStat]{AffichageAngle}; - AffichageDonnee=\useKV[ClesStat]{AffichageDonnee}; - Hachures=\useKV[ClesStat]{Hachures}; - Inverse=\useKV[ClesStat]{LectureInverse}; - Legende=\useKV[ClesStat]{Legende}; - LegendeVide=\useKV[ClesStat]{LegendeVide}; - Retour=false; - ACompleter=\useKV[ClesStat]{ACompleter}; - % - pair A[],O,B[],C[],D[]; - O=(0,0); - n:=0; - numeric total[],ang[]; - total[0]=0; - ang[0]:=0; - path cc; - cc=(fullcircle scaled (2*Rayon)); - vardef AfficheLegende(text t)= - picture ResultatLegende; - ResultatLegende=image( - for p_=t: - if string p_: - n:=n+1; - C[n]=A[n-1] rotatedabout(O,if Inverse:-1* fi(ang[n]-ang[n-1])/2); - draw 0.95[O,C[n]]--1.05[O,C[n]]; - C[n]:=1.05[O,C[n]]; - Test(n); - if (xpart(C[n])>xpart(O)) and (ypart(C[n])>ypart(O)): - D[n]=C[n]+(0.5cm,0); - draw C[n]--D[n]; - if Retour=false:label.urt(TEX(p_),D[n]);fi; - fi; - if (xpart(C[n])ypart(O)): - D[n]=C[n]-(0.5cm,0); - draw C[n]--D[n]; - if Retour=false:label.ulft(TEX(p_),D[n]);fi; - fi; - if (xpart(C[n])xpart(O)) and (ypart(C[n])xpart(O)) and (ypart(C[n])>ypart(O)): - D[n]=C[n]+(0.5cm,0); - draw C[n]--D[n]; - if Retour=false:label.urt(LATEX(p_),D[n]);fi; - fi; - if (xpart(C[n])ypart(O)): - D[n]=C[n]-(0.5cm,0); - draw C[n]--D[n]; - if Retour=false:label.ulft(LATEX(p_),D[n]);fi; - fi; - if (xpart(C[n])xpart(O)) and (ypart(C[n])15: - if (n mod 2)=0: - marque_a:=20*0.75*Rayon/cm; - else: - marque_a:=20*0.5*Rayon/cm; - fi; - if Hachures: - if Inverse=false: - undraw - Codeangle(A[n-1],O,A[n],0,(((TEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - else: - undraw - Codeangle(A[n],O,A[n-1],0,(((TEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - fi; - fill cercles(w shifted(marque_ang*unitvector(w-O)),3mm) withcolor - blanc; - fi; - if Inverse=false: - draw - Codeangle(A[n-1],O,A[n],0,(((TEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - else: - draw - Codeangle(A[n],O,A[n-1],0,(((TEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - fi; - fi; - elseif AffichageDonnee: - if round(p_*(#2/total[N]))>15: - if (n mod 2)=0: - marque_a:=20*0.75*Rayon/cm; - else: - marque_a:=20*0.5*Rayon/cm; - fi; - if Hachures: - if Inverse=false: - undraw - Codeangle(A[n-1],O,A[n],0,TEX(""&decimal(p_)&"")); - else: - undraw - Codeangle(A[n],O,A[n-1],0,(((TEX(""&decimal(p_)&""))))); - fi; - fill cercles(w shifted(marque_ang*unitvector(w-O)),3mm) withcolor - blanc; - fi; - if Inverse=false: - draw - Codeangle(A[n-1],O,A[n],0,(((TEX(""&decimal(p_)&""))))); - else: - draw - Codeangle(A[n],O,A[n-1],0,(((TEX(""&decimal(p_)&""))))); - fi; - fi; - fi; - % - fi; - endfor; - if #2=360: - draw cc if Hachures: withpen pencircle scaled2 fi; - else: - draw (subpath(0,length cc/2) of cc)--cycle if Hachures: withpen pencircle scaled2 fi;; - fi; - n:=0; - enddef; - vardef Test(expr nb)= - Retour:=false; - op:=0; - for l_=#4: - if l_=nb: - op:=op+1; - fi; - endfor; - if op>0: - Retour:=true; - fi; - enddef; - Figure(-10u,-10u,10u,10u); - toto(#1); - if Legende: - n:=0; - draw AfficheLegende(#1); - fi; - \end{mplibcode} - \else - \begin{mpost}[mpsettings={\NewMPStatCirculaireCodeQ}] - pair A[],O,B[],C[],D[]; - O=(0,0); - n:=0; - numeric total[],ang[]; - total[0]=0; - ang[0]:=0; - path cc; - cc=(fullcircle scaled (2*Rayon)); - % on r\'ecup\`ere les couleurs - color Col[]; - n:=0; - for p_=#3: - n:=n+1; - Col[n]=p_; - endfor; - if Inverse=false: - A[0]=point(0) of cc; - else: - A[0]=point(180) of cc; - fi; - vardef toto(text t)= - n:=0; - for p_=t: - if numeric p_: - n:=n+1; - total[n]:=total[n-1]+p_; - fi; - endfor; - N=n; - for k=1 upto N: - ang[k]=(#2/total[N])*total[k]; - endfor; - n:=0; - for p_=t: - if numeric p_: - n:=n+1; - if Inverse=false: - A[n]=A[n-1] rotatedabout(O,p_*(#2/total[N])); - else: - A[n]=A[n-1] rotatedabout(O,-p_*(#2/total[N])); - fi; - %hachure ou pas ? - if Hachures=false: - fill (O--if Inverse=false:arccercle(A[n-1],A[n],O) else: - arccercle(A[n],A[n-1],O) fi--cycle) withcolor if unknown Col[n]: white else:Col[n] fi; - else: - draw - Hachurage((O--if Inverse=false:arccercle(A[n-1],A[n],O) - else:arccercle(A[n],A[n-1],O) fi--cycle),p_*(#2/total[N]) if - (n mod 2)=0: +90 else: -90 fi,ecarthachures,if (n mod 2)=0 : 0 else: 1 fi) - withpen pencircle scaled epaisseurhachures if AffichageAngle: withcolor 0.5white fi; - fi; - if ACompleter=false: - draw A[n-1]--O--A[n] if Hachures: withpen pencircle scaled2 fi; - fi; - % Affichage des angles associ\'es - if AffichageAngle: - if round(p_*(#2/total[N]))>15: - if (n mod 2)=0: - marque_a:=20*0.75*Rayon/cm; - else: - marque_a:=20*0.5*Rayon/cm; - fi; - if Hachures: - if Inverse=false: - undraw - Codeangle(A[n-1],O,A[n],0,(((LATEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - else: - undraw - Codeangle(A[n],O,A[n-1],0,(((LATEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - fi; - fill cercles(w shifted(marque_ang*unitvector(w-O)),3mm) withcolor - blanc; - fi; - if Inverse=false: - draw - Codeangle(A[n-1],O,A[n],0,(((LATEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - else: - draw - Codeangle(A[n],O,A[n-1],0,(((LATEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - fi; - fi; - elseif AffichageDonnee: - if round(p_*(#2/total[N]))>15: - if (n mod 2)=0: - marque_a:=20*0.75*Rayon/cm; - else: - marque_a:=20*0.5*Rayon/cm; - fi; - if Hachures: - if Inverse=false: - undraw - Codeangle(A[n-1],O,A[n],0,LATEX(""&decimal(p_)&"")); - else: - undraw - Codeangle(A[n],O,A[n-1],0,(((LATEX(""&decimal(p_)&""))))); - fi; - fill cercles(w shifted(marque_ang*unitvector(w-O)),3mm) withcolor - blanc; - fi; - if Inverse=false: - draw - Codeangle(A[n-1],O,A[n],0,(((LATEX(""&decimal(p_)&""))))); - else: - draw - Codeangle(A[n],O,A[n-1],0,(((LATEX(""&decimal(p_)&""))))); - fi; - fi; - fi; - % - fi; - endfor; - if #2=360: - draw cc if Hachures: withpen pencircle scaled2 fi; - else: - draw (subpath(0,length cc/2) of cc)--cycle if Hachures: withpen pencircle scaled2 fi;; - fi; - enddef; - vardef Test(expr nb)= - Retour:=false; - op:=0; - for l_=#4: - if l_=nb: - op:=op+1; - fi; - endfor; - if op>0: - Retour:=true; - fi; - enddef; - Figure(-10u,-10u,10u,10u); - toto(#1); - if Legende: - n:=0; - draw AfficheLegendePDF(#1); - fi; - \end{mpost} - \fi -}% - -%Pour la m\'ediane. -\DTLgnewdb{mtdb}% -\dtlexpandnewvalue% -\newcount\nbdonnees% -% -\def\AjoutListEEaa#1\nil{\addtotok\tabtoksEEa{#1,}}% -\def\AjoutListEEab#1\nil{\addtotok\tabtoksEEa{#1/}}% -\def\AjoutListEEb#1\nil{\addtotok\tabtoksEEb{#1,}}% -\def\AjoutListEEx#1\nil{\addtotok\tabtoksEE{#1,}}% -\def\AjoutListEEy#1\nil{\addtotok\tabtoksEE{#1/}}% - -\DTLgnewdb{mtdbEE}% -\DTLgnewdb{mtdbEEqual}% -% - -% Pour les classes -% Pour construire l'histogramme -\def\UpdatetoksHisto#1/#2/#3\nil{\addtotok\toklisteelmtsclasse{#1,#2,}\addtotok\toklistedonhisto{#3,}} -\def\UpdatetoksECC#1\nil{\addtotok\toklistedonhisto{#1,}} - -\NewDocumentCommand\buildgraphhisto{}{% - \newtoks\toklisteelmtsclasse% - \newtoks\toklistedonhisto% - \newtoks\toklistecouleur% - \newtoks\toklistelegende% - \ifboolKV[ClesStat]{LegendeVide}{% - \xdef\foo{\useKV[ClesStat]{LegendesVides}}% - \readlist*\ListeLegendesAEffacer{\foo}% - }{\xdef\foo{-1}\readlist*\ListeLegendesAEffacer{\foo}% - }% - \foreachitem\compteur\in\ListeLegendesAEffacer{\expandafter\UpdateLegende\compteur\nil}% - \foreachitem\compteur\in\ListeDepart{\expandafter\UpdatetoksHisto\compteur\nil}% - \ifboolKV[ClesStat]{ECC}{% - \toklistedonhisto{}% - \xdef\PfCFooECC{\ListeDepart[1,3]}% - \xintFor* ##1 in{\xintSeq{2}{\ListeDepartlen}}\do{% - \xdef\PfCFooRetiens{0}% - \xintFor* ##2 in{\xintSeq{1}{##1}}\do{% - \xdef\PfCFooRetiens{\fpeval{\PfCFooRetiens+\ListeDepart[##2,3]}}% - }% - \xdef\PfCFooECC{\PfCFooECC,\PfCFooRetiens}% - }% - \readlist*\PfCListeECC{\PfCFooECC}% - \foreachitem\compteur\in\PfCListeECC{\expandafter\UpdatetoksECC\compteur\nil}% - }{}% - \xdef\PfCEcartClasse{\fpeval{\ListeDepart[1,2]-\ListeDepart[1,1]}}% - \foreachitem\compteur\in\ListeDepart{% - \xdef\PfCEcartClasse{\PfCEcartClasse,\fpeval{\ListeDepart[\compteurcnt,2]-\ListeDepart[\compteurcnt,1]}} - }% - \xintifboolexpr{\fpeval{min(\PfCEcartClasse)}==\fpeval{max(\PfCEcartClasse)}}{}{\setKV[ClesStat]{MemeAmpli=false}} - % Pour les couleurs - \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleurs}}% - \readlist*\ListeCouleur{\ListeAvantCouleurs}% - \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - % - \MPBuildHisto{\the\toklisteelmtsclasse}{\the\toklistedonhisto}{\the\toklistecouleur}{\the\toklistelegende}% -} - -%% calcul des fr\'equences -\newcommand\CalculFrequenceClasses[1]{% - \fpeval{round(\ListeDepart[#1,3]*100/\EffectifTotal,\useKV[ClesStat]{PrecisionF})} -} - -\newcommand\CalculECCClasses[1]{% - \xdef\TotalECCC{0}% - \CompteurECCC=1% - \CompteurECCCTotal=\numexpr#1+1% - \whiledo{\CompteurECCC < \CompteurECCCTotal}{% - \xdef\TotalECCC{\fpeval{\TotalECCC+\ListeDepart[\the\CompteurECCC,3]}}% - \CompteurECCC=\numexpr\CompteurECCC+1% - }% - \num{\TotalECCC}% -} - -\NewDocumentCommand\buildtabclasses{}{% - \setcounter{PfCCompteLignes}{0}% - \renewcommand{\arraystretch}{\useKV[ClesStat]{Stretch}}% - \begin{NiceTabular}{l*{\ListeDepartlen}{c}}%[hvlines] - \CodeBefore% - \rowcolor{\useKV[ClesStat]{CouleurTab}}{1}% - \columncolor{\useKV[ClesStat]{CouleurTab}}{1}% - \Body - \useKV[ClesStat]{Donnee}\xintFor* ##1 in{\xintSeq{1}{\ListeDepartlen}}\do{% - &$\num{\ListeDepart[##1,1]}\leqslant\dots<\num{\ListeDepart[##1,2]}$ - }\\ - \useKV[ClesStat]{Effectif}\xintFor* ##1 in{\xintSeq{1}{\ListeDepartlen}}\do{% - &\ifboolKV[ClesStat]{EffVide}{}{\num{\ListeDepart[##1,3]}}% - }\\ - \ifboolKV[ClesStat]{Frequence}{\stepcounter{PfCCompteLignes}Fr\'equence (\%)\xintFor* ##1 in {\xintSeq {1}{\ListeDepartlen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{FreqVide}{}{\num{\CalculFrequenceClasses{##1}}}}}\\ - }{}% - \ifboolKV[ClesStat]{ECC}{\stepcounter{PfCCompteLignes}E.C.C.\xintFor* ##1 in {\xintSeq {1}{\ListeDepartlen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{ECCVide}{}{\CalculECCClasses{##1}}}}\\}{}% - \CodeAfter% - % On crée la liste des colonnes à vider - \xintifboolexpr{\useKV[ClesStat]{ColVide}>0}{% - \xdef\FooStat{\useKV[ClesStat]{ColVide}}% - \setsepchar{,}% - \readlist*\ListeColonnesAVider{\FooStat}% - \foreachitem\compteur\in\ListeColonnesAVider{% - \tikz\fill[white] (row-2-|col-\fpeval{\compteur+1}) rectangle (last-|col-\fpeval{\compteur+2});% - }% - }{}% -% % On crée la liste des cases à vider - \ifboolKV[ClesStat]{CaseVide}{% - \xdef\FooStatCases{\useKV[ClesStat]{CasesVides}}% - \setsepchar[*]{,*/}% - \readlist*\ListeCasesAVider{\FooStatCases}% - \foreachitem\compteur\in\ListeCasesAVider{% - \tikz\fill[white] (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+1}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+1}) rectangle (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+2}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+2});% - }% - }{}% -% % On retrace le tableau -% % Les colonnes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\ListeDepartlen+2}}}\do{% - \tikz\draw (row-1-|col-##1) -- (last-|col-##1);% - }% -% % Les lignes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\thePfCCompteLignes+3}}}\do{% - \tikz\draw (row-##1-|col-1) -- (row-##1-|last);% - }% - \end{NiceTabular} -}% - -\NewDocumentCommand\MPBuildHisto{mmmm}{% - \ifluatex - \mplibforcehmode - \begin{mplibcode} - maxx:=-infinity; - minx:=infinity; - maxy:=-infinity; - miny:=0; - unitex:=\useKV[ClesStat]{Unitex}*cm; - unitey:=\useKV[ClesStat]{Unitey}*cm; - Pasx:=\useKV[ClesStat]{Pasx}; - Pasy:=\useKV[ClesStat]{Pasy}; - UniteAire=\useKV[ClesStat]{UniteAire}; - Ecarthachures=\useKV[ClesStat]{EcartHachures}; - Epaisseurhachures=\useKV[ClesStat]{EpaisseurHachures}; - boolean MemeAmpli,Hachures,Lecture,LectureFine,AideLecture,DonneesSup,Tiret,LegendeVide,Retour,Mediane,ECC; - ECC=\useKV[ClesStat]{ECC}; - Mediane=\useKV[ClesStat]{Mediane}; - MemeAmpli=\useKV[ClesStat]{MemeAmpli}; - Hachures:=\useKV[ClesStat]{Hachures}; - % - Lecture:=\useKV[ClesStat]{Lecture}; - LectureFine:=\useKV[ClesStat]{LectureFine}; - Tiret=\useKV[ClesStat]{Tiret}; - AideLecture:=\useKV[ClesStat]{AideLecture}; - DonneesSup:=\useKV[ClesStat]{DonneesSup}; - LegendeVide=\useKV[ClesStat]{LegendeVide}; - Retour=false; - % Test affichage - vardef Test(expr nb)= - Retour:=false; - op:=0; - for l_=#4: - if l_=nb: - op:=op+1; - fi; - endfor; - if op>0: - Retour:=true; - fi; - enddef; - %Affichage ou pas des légendes - vardef AfficheLegende(text t)= - l=0; - for p_=t: - l:=l+1; - if DonneesSup: - Test(l); - if Retour=false: - label.top(TEX("\num{"&decimal(Y[l])&"}"),(unitex*(Depart+(0.5*(X[2*l]+X[2*l-2])-X[1])/Pasx),unitey*Z[l])); - fi; - fi; - endfor; - enddef; - % on r\'ecup\`ere les couleurs - Depart=\useKV[ClesStat]{DepartHisto}; - color Col[],CoulDefaut; - CoulDefaut=white; - n:=0; - for p_=#3: - n:=n+1; - Col[n]=p_; - endfor; - % - numeric X[]; - numeric ecartabs[]; - vardef RecupValeursAbscisses(text t)= - p:=0; - for p_=t: - p:=p+1; - X[p]:=p_; - if X[p]maxx: - maxx:=X[p]; - fi; - endfor; - X[0]=X[1]; - TotalAbscisses=p; - enddef; - numeric Y[],Z[]; - numeric EffectifTotal[]; - numeric EffectifTotalA[]; - vardef RecupValeursDonnees(text t)= - p:=0; - EffectifTotal[0]:=0; - EffectifTotalA[0]:=0; - for p_=t: - p:=p+1; - EffectifTotal[p]:=p_; - EffectifTotalA[p]:=EffectifTotalA[p-1]+p_; - Y[p]:=p_; - Z[p]=(Y[p]/(UniteAire*(X[2*p]-X[2*p-1])/Pasx)); - R[p]=ceiling(Z[p]); - if R[p]>maxy: - maxy:=R[p]; - fi; - endfor; - NbDonnees:=p; - enddef; - %On affiche la médiane dans le cas des ECC - vardef AfficheMedianeECC(text t)= - YMed:=Z[NbDonnees]/2; - DemiDonnees:=EffectifTotal[NbDonnees]/2; - p:=0; - forever: - p:=p+1; - exitif EffectifTotal[p]>DemiDonnees; - endfor; - path MedHor,MedLineaire,MedVer; - MedLineaire=(unitex*(Depart+(X[2*p-2]-X[1]/Pasx)),unitey*Z[p-1])--(unitex*(Depart+(X[2*p]-X[1])/Pasx),unitey*Z[p]); - MedHor=((0,unitey*YMed)--(unitex*((maxx-minx)/Pasx+2),unitey*YMed)); - MedVer=(xpart(MedLineaire intersectionpoint MedHor),0)--(MedLineaire intersectionpoint MedHor); - draw MedLineaire; - draw MedHor; - draw MedVer; - enddef; - % On affiche la médiane dans le cas non ECC - vardef AfficheMediane(text t)= - DemiDonnees:=EffectifTotalA[NbDonnees]/2; - p:=0; - forever: - p:=p+1; - exitif EffectifTotalA[p]>DemiDonnees; - endfor; - path MedVer; - numeric CoefLineaire,pMed; - pMed=p; - CoefLineaire=(DemiDonnees-EffectifTotalA[p-1])/Y[p]; - MedVer=(unitex*(Depart+(X[2*p-2]-X[1])/Pasx+CoefLineaire*(X[2*p]-X[2*p-2])/Pasx),0)--(unitex*(Depart+(X[2*p-2]-X[1])/Pasx+CoefLineaire*(X[2*p]-X[2*p-2])/Pasx),unitey*Z[p]); - draw MedVer dashed evenly; - enddef; - % On commence le tracé : on récupère les informations - RecupValeursAbscisses(#1); - RecupValeursDonnees(#2); - % on définit une grille - vardef Grille= - if MemeAmpli: - Ajout:=1; - else: - Ajout:=3; - fi; - drawoptions(withcolor 0.7white); - for k=0 upto ((maxx-minx)/Pasx+2): - trace (unitex*k,0)--(unitex*k,(maxy+Ajout)*unitey);%withcolor red; - endfor; - for k=0 upto (maxy+Ajout): - trace (0,k*unitey)--(unitex*((maxx-minx)/Pasx+2),k*unitey);% withcolor blue; - endfor; - drawoptions(); - enddef; - % Fin Grille - % On trace les rectangles - vardef AfficheRectangles= - if Hachures: - Grille; - for k=2 step 2 until TotalAbscisses: - draw hachurage(polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)),60,0.2,0); - draw chemin(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - else: - for k=2 step 2 until TotalAbscisses: - fill polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)) withcolor if unknown Col[k/2]: CoulDefaut else: Col[k/2] fi; - endfor; - Grille; - for k=2 step 2 until TotalAbscisses: - draw chemin(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - fi; - enddef; - % Affichage final - if ECC: - AfficheRectangles; - if Mediane: - AfficheMedianeECC(#2); - fi; - else: - if Mediane: - AfficheMediane(#2); - if Hachures: - Grille; - %Partie gauche - for k=2 step 2 until (2*pMed-2): - draw hachurage(polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)),60,0.2,0); - draw chemin(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - draw hachurage(polygone(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx),unitey*Z[pMed])),60,0.2,0); - draw polygone(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx),unitey*Z[pMed])); - % Partie droite - for k=2*pMed+2 step 2 until TotalAbscisses: - draw hachurage(polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)),120,0.2,1); - draw chemin(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - draw hachurage(polygone(unitex*(Depart+(X[2*pMed]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed]-X[1])/Pasx),unitey*Z[pMed])),120,0.2,1); - draw polygone(unitex*(Depart+(X[2*pMed]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed]-X[1])/Pasx),unitey*Z[pMed])); - else: - %Partie gauche - for k=2 step 2 until (2*pMed-2): - fill polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)) withcolor if unknown Col[1]: CoulDefaut else: Col[1] fi; - endfor; - fill polygone(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx),unitey*Z[pMed])) withcolor if unknown Col[1]: CoulDefaut else: Col[1] fi ; - % Partie droite - for k=2*pMed+2 step 2 until TotalAbscisses: - fill polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)) withcolor if unknown Col[2]: CoulDefaut else: Col[2] fi; - endfor; - fill polygone(unitex*(Depart+(X[2*pMed]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed]-X[1])/Pasx),unitey*Z[pMed])) withcolor if unknown Col[2]: CoulDefaut else: Col[2] fi; - Grille; - %Partie Gauche - for k=2 step 2 until (2*pMed-2): - trace polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - trace polygone(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx),unitey*Z[pMed]));%(Y[pMed]/(UniteAire*(X[2*pMed-2]-X[2*pMed-3])/Pasx)))); - for k=2*pMed+2 step 2 until TotalAbscisses: - draw chemin(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - draw polygone(unitex*(Depart+(X[2*pMed]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed]-X[1])/Pasx),unitey*Z[pMed])); - fi; - draw MedVer withpen pencircle scaled 2; - else: - AfficheRectangles; - fi; - fi; - %Affichage ou pas des axes, de la médiane - if MemeAmpli: - drawarrow (0,0)--unitey*(0,maxy+1); - EcartAmpli:=(X[2]-X[1])/Pasx; - if AideLecture: - for k=2 step 2 until TotalAbscisses: - trace ((unitex*(Depart+(X[k]-X[1])/Pasx),unitey*Z[k/2]))--(unitey*(0,Z[k/2])) dashed evenly; - endfor; - fi; - if LectureFine: - for k=0 upto ((maxy+1)): - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - label.lft(TEX("\num{"&decimal(k*UniteAire*EcartAmpli)&"}"),(0,k*unitey)); - else: - dotlabel.lft(TEX("\num{"&decimal(k*UniteAire*EcartAmpli)&"}"),(0,k*unitey)); - fi; - endfor; - fi; - if Lecture: - for k=0 upto 1: - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - label.lft(TEX("\num{"&decimal(k*UniteAire*EcartAmpli)&"}"),(0,k*unitey)); - else: - dotlabel.lft(TEX("\num{"&decimal(k*UniteAire*EcartAmpli)&"}"),(0,k*unitey)); - fi; - endfor; - fi; - else:%Pas même ampli : on n'affiche pas l'axe vertical - trace hachurage(polygone((unitex,unitey*(maxy+2)),(unitex*2,unitey*(maxy+2)),(unitex*2,unitey*(maxy+1)),(unitex,unitey*(maxy+1))),60,0.2,0); - trace polygone((unitex,unitey*(maxy+2)),(unitex*2,unitey*(maxy+2)),(unitex*2,unitey*(maxy+1)),(unitex,unitey*(maxy+1))); - label.rt(TEX(decimal(UniteAire)&"~\useKV[ClesStat]{Effectif}"),(unitex*2,unitey*(maxy+1.5))); -% if Mediane: -% AfficheMediane(#2); -% fi; - fi; - % On trace l'axe des abscisses - drawarrow (0,0)--unitex*((maxx-minx)/Pasx+2,0); - %On labelise l'axe des abscisses - dotlabel.bot(TEX("\num{"&decimal(X[1])&"}"),unitex*(Depart,0)); - for k=2 step 2 until TotalAbscisses: - dotlabel.bot(TEX("\num{"&decimal(X[k])&"}"),unitex*(Depart+(X[k]-X[1])/Pasx,0)); - endfor; - label.rt(TEX("\useKV[ClesStat]{Donnee}"),(unitex*((maxx-minx)/Pasx+2),0)); - %On affiche les données sup ou pas. - AfficheLegende(#2); - \end{mplibcode} - \fi -} -% - -\newcommand\Stat[2][]{% - \useKVdefault[ClesStat]% - \setKV[ClesStat]{#1}% - \setsepchar[*]{,*/}% - \readlist*\ListeAvantUtilisation{#2}% - \xintifboolexpr{\listlen\ListeAvantUtilisation[1]==3}{\setKV[ClesStat]{Classes}}{}% - \ifboolKV[ClesStat]{Classes}{% - \setsepchar[*]{,*/}% - \readlist*\ListeDepart{#2}% - \xdef\EffectifTotal{0}% - \xintFor* ##1 in{\xintSeq{1}{\ListeDepartlen}}\do{% - \xdef\EffectifTotal{\fpeval{\EffectifTotal+\ListeDepart[##1,3]}}% - }% - \ifboolKV[ClesStat]{Histogramme}{% - \buildgraphhisto% - }{% - \ifboolKV[ClesStat]{Tableau}{% - \buildtabclasses% - }{}% - }% - }{% - \setsepchar{,}% - \ifboolKV[ClesStat]{Representation}{% - \setKV[TraceG]{Xmin=0,Ymin=0}% - \setKV[TraceG]{#1}% - \readlist*\ListePointsPlaces{#2}% - \newtoks\toklistepoint% - \foreachitem\compteur\in\ListePointsPlaces{\expandafter\Updatetoks\compteur\nil}% - \MPPlacePoint[#1]{\the\toklistepoint}% - }{% - \ifboolKV[ClesStat]{Liste}{% - \setsepchar{,}\ignoreemptyitems% - \readlist*\Liste{#2}% - \xdef\foo{}% - \setsepchar[*]{,*/}\ignoreemptyitems% - \xintFor* ##1 in {\xintSeq {1}{\Listelen}}\do{% - \xdef\foo{\foo 1/\Liste[##1],}% - }% - \readlist*\ListeComplete{\foo}% - \setKV[ClesStat]{Qualitatif}% - }{% - \ifboolKV[ClesStat]{Sondage}{% - \setsepchar{,}\ignoreemptyitems% - \readlist*\Liste{#2}% - % "liste vide" - \newtoks\tabtoksEEa% - \tabtoksEEa{}% - % - % "liste vide" - \newtoks\tabtoksEEb% - \tabtoksEEb{}% - % - \readlist*\ListeSansDoublonsEE{999}% %% Pour ne pas avoir une liste vide - % - \newcount\cmptEE% - \newcount\PasNumEE% %% Permettra de savoir si ce sondage est qualitatif ou quantitatif - \PasNumEE=0\relax% - \DTLcleardb{mtdbEE}% - % on range les resultats du sondage par ordre croissant. - \foreachitem\x\in\Liste{% - \DTLnewrow{mtdbEE}% - \DTLnewdbentry{mtdbEE}{Numeric}{\x}% - }% - \dtlsort{Numeric}{mtdbEE}{\dtlicompare}% - \DTLforeach{mtdbEE}{\nba=Numeric}{% - \IfDecimal{\nba}{}{\PasNumEE=\numexpr\PasNumEE+1\relax}% - \cmptEE=0\relax% - \foreachitem\nbb\in\ListeSansDoublonsEE{% - \ifthenelse{\equal{\nba}{\nbb}}{\cmptEE=\numexpr\cmptEE+1\relax}{}% - }% - \ifthenelse{\equal{\the\cmptEE}{0}}{% - \expandafter\AjoutListEEb\nba\nil% - \xdef\listEEa{\the\tabtoksEEb}% - \ignoreemptyitems% - \setsepchar{,}% - \readlist*\ListeSansDoublonsEE\listEEa% %%% Enl\`eve tous les \'elements - %%% identiques de Liste - }{}% - }% - \foreachitem\nba\in\ListeSansDoublonsEE{% - \cmptEE=0\relax% - \DTLforeach{mtdbEE}{\nbb=Numeric}{% - \ifthenelse{\equal{\nba}{\nbb}}{\cmptEE=\numexpr\cmptEE+1\relax}{}% - }% - \expandafter\AjoutListEEab\nba\nil% - \expandafter\AjoutListEEaa\the\cmptEE\nil% %%% Compte tous les \'elements - %%% identiques de Liste - }% - \xdef\listEEb{\the\tabtoksEEa} - \ignoreemptyitems% - \setsepchar[*]{,*/}% - \readlist*\ListeComplete\listEEb% - % - \ifthenelse{\equal{\the\PasNumEE}{0}}{\setKV[ClesStat]{Quantitatif}}{\setKV[ClesStat]{Qualitatif}}% - }{% - \ifboolKV[ClesStat]{Qualitatif}{% - % % on lit la liste \'ecrite sous la forme valeur/effectif - \setsepchar[*]{,*/}\ignoreemptyitems% - \readlist*\ListeInitiale{#2}% - % "liste vide" - \newtoks\tabtoksEE% - \tabtoksEE{}% - \DTLcleardb{mtdbEEqual}% - \foreachitem\x\in\ListeInitiale{% - \DTLnewrow{mtdbEEqual}% - \itemtomacro\ListeInitiale[\xcnt,1]\x% - \DTLnewdbentry{mtdbEEqual}{Val}{\x}% - \itemtomacro\ListeInitiale[\xcnt,2]\y% - \DTLnewdbentry{mtdbEEqual}{Eff}{\y}% - }% - \DTLforeach{mtdbEEqual}{\Val=Val,\Eff=Eff}{% - \expandafter\AjoutListEEy\Val\nil% - \expandafter\AjoutListEEx\Eff\nil% - }% - \xdef\listEE{\the\tabtoksEE} - \ignoreemptyitems% - \setsepchar[*]{,*/}% - \readlist*\ListeComplete\listEE% - }{% Dans le qualitatif, on trie d'abord les valeurs. - \setsepchar[*]{,*/}\ignoreemptyitems% - \readlist*\ListeInitiale{#2}% - % "liste vide" - \newtoks\tabtoksEE% - \tabtoksEE{}% - \DTLcleardb{mtdbEEqual}% - \foreachitem\x\in\ListeInitiale{% - \DTLnewrow{mtdbEEqual}% - \itemtomacro\ListeInitiale[\xcnt,1]\x% - \DTLnewdbentry{mtdbEEqual}{Val}{\x}% - \itemtomacro\ListeInitiale[\xcnt,2]\y% - \DTLnewdbentry{mtdbEEqual}{Eff}{\y}% - }% - \dtlsort{Val}{mtdbEEqual}{\dtlicompare}% - \DTLforeach{mtdbEEqual}{\Val=Val,\Eff=Eff}{% - \expandafter\AjoutListEEy\Val\nil% - \expandafter\AjoutListEEx\Eff\nil% - }% - \xdef\listEE{\the\tabtoksEE} - \ignoreemptyitems% - \setsepchar[*]{,*/}% - \readlist*\ListeComplete\listEE% - }}}% - % on cr\'ee la base de donn\'ees des valeurs dans le cas qualitatif - \DTLcleardb{mtdb}% - % on les trie pour la m\'ediane dans le cas qualitatif % Touhami / Texnique.fr - \foreachitem\x\in\ListeComplete{% - \DTLnewrow{mtdb}% - \itemtomacro\ListeComplete[\xcnt,2]\y% - \DTLnewdbentry{mtdb}{Numeric}{\y}% - }% - \dtlsort{Numeric}{mtdb}{\dtlicompare}% - % % on r\'einitialise les valeurs des crit\`eres de position et de - % dispersion - \renewcommand\NbDonnees{}% - \renewcommand\SommeDonnees{}% - \renewcommand\EffectifTotal{}% - \renewcommand\Moyenne{}% - \renewcommand\Etendue{}% - \renewcommand\Mediane{}% - \renewcommand\DonneeMax{0}% - \renewcommand\EffectifMax{0}% - \renewcommand\DonneeMin{999999999}% - \ifboolKV[ClesStat]{Qualitatif}{%D\'ebut qualitatif - % Calculs - % %% celui de la somme des donn\'ees - \foreachitem\don\in\ListeComplete{\xdef\SommeDonnees{\fpeval{\SommeDonnees+\ListeComplete[\doncnt,2]}}}% - % %% celui de l'effectif total - \ifboolKV[ClesStat]{EffectifTotal}{% - \ifboolKV[ClesStat]{Liste}{L'effectif total de la s\'erie est - \num{\ListeCompletelen}.\par}{% - \foreachitem\don\in\ListeComplete{\xdef\EffectifTotal{\fpeval{\EffectifTotal+\ListeComplete[\doncnt,2]}}}% - L'effectif total de la s\'erie est : \[\ListeComplete[1,2]\xintFor* ##1 in - {\xintSeq {2}{\ListeCompletelen}}\do{% - +\ListeComplete[##1,2]}=\num{\EffectifTotal}\]} - }{}% - \ifboolKV[ClesStat]{Liste}{\xdef\EffectifTotal{\ListeCompletelen}}{\xdef\EffectifTotal{\SommeDonnees}}% - % %% celui de la moyenne - \xdef\Moyenne{\fpeval{\SommeDonnees/\ListeCompletelen}}% - \ifboolKV[ClesStat]{Moyenne}{% - \ifboolKV[ClesStat]{Liste}{% - La somme des donn\'ees de la s\'erie est :% - \xintifboolexpr{\ListeCompletelen<\useKV[ClesStat]{Coupure}}{% - \[ - \num{\ListeComplete[1,2]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\xintFor* ##1 in {\xintSeq {2}{\ListeCompletelen}}\do{% - +\num{\ListeComplete[##1,2]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - }=\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}% - \]}{% - \[ - \num{\ListeComplete[1,2]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\xintFor* ##1 in {\xintSeq {2}{3}}\do{% - +\num{\ListeComplete[##1,2]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}}+\dots\xintFor* ##1 in {\xintSeq {\ListeCompletelen-1}{\ListeCompletelen}}\do{% - +\num{\ListeComplete[##1,2]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - }=\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}% - \]% - }% - \ifboolKV[ClesStat]{SET}{}{Le nombre de donn\'ees de la s\'erie est \num{\ListeCompletelen}.\\}% - Donc la moyenne de la s\'erie est \'egale \`a :% - \[\frac{\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}}{\num{\ListeCompletelen}}%\IfInteger{\fpeval{round(\fpeval{\SommeDonnees/\ListeCompletelen},\useKV[ClesStat]{Precision})}}{=}{\approx} - \ifboolKV[ClesStat]{ValeurExacte}{}{% - \opdiv*{\SommeDonnees}{\ListeCompletelen}{resultatmoy}{restemoy}% - \opround{resultatmoy}{\useKV[ClesStat]{Precision}}{resultatmoy1}% - \opcmp{resultatmoy}{resultatmoy1}\ifopeq=\else\approx\fi% - \num{\fpeval{round(\SommeDonnees/\ListeCompletelen,\useKV[ClesStat]{Precision})}}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}% - }% - \]% - }{Pas de moyenne possible pour une s\'erie de donn\'ees \`a caract\`ere qualitatif.}}{}% - % % %% celui de l'\'etendue - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintifboolexpr{\ListeComplete[##1,2]>\DonneeMax}{% - \xdef\DonneeMax{\ListeComplete[##1,2]}% - }{}% - \xintifboolexpr{\ListeComplete[##1,2]<\DonneeMin}{% - \xdef\DonneeMin{\ListeComplete[##1,2]}% - }{}% - }% - \xdef\EffectifMax{\DonneeMax}% - \xdef\Etendue{\fpeval{\DonneeMax-\DonneeMin}}% - \ifboolKV[ClesStat]{Etendue}{% - \ifboolKV[ClesStat]{Liste}{% - L'\'etendue de la s\'erie est \'egale \`a $\num{\DonneeMax}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}-\num{\DonneeMin}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}=\num{\Etendue}$\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}% - }{Pas d'\'etendue possible pour une s\'erie de donn\'ees \`a caract\`ere qualitatif.}}{}% - % celui de la mediane - %%% Recuperation de la mediane %%%%%%%%%%%%%%%%%%%%% - \newcount\Recapmed% - \newcount\Recapmeda% - \ifodd\number\ListeCompletelen%odd impair - \Recapmed=\fpeval{(\ListeCompletelen+1)/2}\relax% - \else% - \Recapmed=\fpeval{\ListeCompletelen/2}\relax% - \Recapmeda=\numexpr\Recapmed+1\relax% - \fi% - \newcount\Recapk% - \Recapk=0% - \DTLforeach{mtdb}{\numeroDonnee=Numeric}{\Recapk=\numexpr\Recapk+1\relax% - \ifnum\Recapk=\Recapmed% - \ifodd\number\ListeCompletelen% - \xdef\Mediane{\numeroDonnee}% - \else% - \xdef\Mediane{\numeroDonnee}% - \fi% - \fi% - \ifnum\Recapk=\Recapmeda% - \xdef\Mediane{\fpeval{(\Mediane+\numeroDonnee)/2}}% - \fi% - }% - %%% - \ifboolKV[ClesStat]{Mediane}{% - \ifboolKV[ClesStat]{Liste}{% - On range les donn\'ees par ordre croissant :% - \nbdonnees=0% - \xintifboolexpr{\ListeCompletelen<\useKV[ClesStat]{Coupure}}{% - \[\DTLforeach{mtdb}{\numeroDonnee=Numeric}{\num{\numeroDonnee}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\DTLiflastrow{.}{;}}\]% - }{% - \medskip% - \begin{center} - \begin{minipage}{0.9\linewidth} - \DTLforeach*{mtdb}{\numeroDonnee=Numeric}{\num{\numeroDonnee}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\DTLiflastrow{.}{; - }\nbdonnees=\fpeval{\nbdonnees+1}\modulo{\nbdonnees}{\useKV[ClesStat]{Coupure}}\xintifboolexpr{\remainder==0}{\\}{}} - \end{minipage} - \end{center}% - \medskip% - }% - \newcount\med% - \newcount\meda% - \ifodd\number\ListeCompletelen%odd impair - \med=\fpeval{(\ListeCompletelen+1)/2}\relax% - L'effectif total de la s\'erie est \num{\ListeCompletelen}. Or, $\num{\ListeCompletelen}=\num{\fpeval{\med-1}}+1+\num{\fpeval{\med-1}}$.\\ - \else% pair - \med=\fpeval{\ListeCompletelen/2}\relax% - \meda=\numexpr\med+1\relax% - L'effectif total de la s\'erie est \num{\ListeCompletelen}. Or, $\num{\ListeCompletelen}=\num{\the\med}+\num{\the\med}$.\\ - \fi% - \newcount\k% - \k=0% - \DTLforeach{mtdb}{\numeroDonnee=Numeric}{\k=\numexpr\k+1\relax% - \ifnum\k=\med %La m\'ediane vaut \numeroDonnee\fi - \ifodd\number\ListeCompletelen% - La m\'ediane de la s\'erie est la \the\med\ieme{} donn\'ee.\\Donc la m\'ediane de la s\'erie est \num{\numeroDonnee}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}% - \xdef\Mediane{\numeroDonnee}% - \else% - La \the\med\ieme{} donn\'ee est \num{\numeroDonnee}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}. }{. }\xdef\Mediane{\numeroDonnee}% - \fi% - \fi% - \ifnum\k=\meda - La \the\meda\ieme{} donn\'ee est \num{\numeroDonnee}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.} Donc la m\'ediane de la s\'erie est \xdef\Mediane{\fpeval{(\Mediane+\numeroDonnee)/2}}\num{\Mediane}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}% - \fi% - }% - %%%%%%% - }{Pas de m\'ediane possible pour une s\'erie de donn\'ees \`a caract\`ere qualitatif.}}{} - %%% Quartile un - \newcount\PfCQuartileUn% - \modulo{\ListeCompletelen}{4}\relax% - \ifnum\remainder=0% - \PfCQuartileUn=\fpeval{\ListeCompletelen/4}% - \else% - \PfCQuartileUn=\fpeval{ceil(\ListeCompletelen/4)}% - \fi% - \newcount\PfCQunk% - \PfCQunk=0% - \DTLforeach{mtdb}{\numeroDonnee=Numeric}{\PfCQunk=\numexpr\PfCQunk+1\relax% - \ifnum\PfCQunk=\PfCQuartileUn% - \xdef\QuartileUn{\numeroDonnee}% - \fi% - }% - %%% Quartile trois - \newcount\PfCQuartileTrois% - \modulo{\ListeCompletelen}{4}\relax% - \ifnum\remainder=0% - \PfCQuartileTrois=\fpeval{3*\ListeCompletelen/4}% - \else% - \PfCQuartileTrois=\fpeval{ceil(3*\ListeCompletelen/4)}% - \fi% - \newcount\PfCQtroisk% - \PfCQtroisk=0% - \DTLforeach{mtdb}{\numeroDonnee=Numeric}{\PfCQtroisk=\numexpr\PfCQtroisk+1\relax% - \ifnum\PfCQtroisk=\PfCQuartileTrois%La m\'ediane vaut \numeroDonnee\fi - \xdef\QuartileTrois{\numeroDonnee}% - \fi% - }% - % Construction du tableau - \ifboolKV[ClesStat]{Tableau}{% - \ifboolKV[ClesStat]{Liste}{Pas de tableau possible avec la cl\'e Liste.\\Utilisez plut\^ot la cl\'e Sondage si vous voulez un tableau avec cette liste.}{\BuildtabStat}}{}% - % Construction du graphique - \ifboolKV[ClesStat]{Graphique}{% - \ifboolKV[ClesStat]{Liste}{Pas de graphique possible avec la cl\'e Liste.\\Utilisez plut\^ot la cl\'e Sondage si vous voulez un graphique avec cette liste.}{% - \ifboolKV[ClesStat]{Barre}{% - \buildgraphbarhor% - }{% - \ifboolKV[ClesStat]{Angle}{% - \buildgraphcq{360}% - }{% - \ifboolKV[ClesStat]{SemiAngle}{% - \buildgraphcq{180}% - }{% - \buildgraphq[#1]% - }% - }% - }% - }% - }{}% - }{%%%%%%%%%%%%%%%%%%%%%D\'ebut quantitatif - % % on effectue les calculs - % %% celui de la somme des donn\'ees - \foreachitem\don\in\ListeComplete{\xdef\SommeDonnees{\fpeval{\SommeDonnees+\ListeComplete[\doncnt,1]*\ListeComplete[\doncnt,2]}}}% - % %% celui de l'effectif total - \foreachitem\don\in\ListeComplete{\xdef\EffectifTotal{\fpeval{\EffectifTotal+\ListeComplete[\doncnt,2]}}}% - % %% celui de l'\'etendue - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintifboolexpr{\ListeComplete[##1,1]>\DonneeMax}{% - \xdef\DonneeMax{\ListeComplete[##1,1]}% - }{}% - \xintifboolexpr{\ListeComplete[##1,1]<\DonneeMin}{% - \xdef\DonneeMin{\ListeComplete[##1,1]}% - }{}% - }% - % \xdef\EffectifMax{\DonneeMax}% - \xdef\Etendue{\fpeval{\DonneeMax-\DonneeMin}}%% - % %% celui de la moyenne - \xdef\Moyenne{\fpeval{\SommeDonnees/\EffectifTotal}}% - \ifboolKV[ClesStat]{EffectifTotal}{% - L'effectif total de la s\'erie est : \[\ListeComplete[1,2]\xintFor* ##1 in - {\xintSeq {2}{\ListeCompletelen}}\do{% - +\ListeComplete[##1,2]}=\num{\EffectifTotal}\] - }{}% - \ifboolKV[ClesStat]{Moyenne}{% - La somme des donn\'ees de la s\'erie est :% - \xintifboolexpr{\ListeCompletelen<\useKV[ClesStat]{Coupure}}{% - \[ - \ifnum\ListeComplete[1,2]=1\else\num{\ListeComplete[1,2]}\times\fi\num{\ListeComplete[1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\xintFor* ##1 in {\xintSeq {2}{\ListeCompletelen}}\do{% - +\ifnum\ListeComplete[##1,2]=1\else\num{\ListeComplete[##1,2]}\times\fi\num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - }=\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - \] - }{% - \[ - \ifnum\ListeComplete[1,2]=1\else\num{\ListeComplete[1,2]}\times\fi\num{\ListeComplete[1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\xintFor* ##1 in {\xintSeq {2}{2}}\do{% - +\ifnum\ListeComplete[##1,2]=1\else\num{\ListeComplete[##1,2]}\times\fi\num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - }+\dots\xintFor* ##1 in {\xintSeq {\ListeCompletelen-1}{\ListeCompletelen}}\do{% - +\ifnum\ListeComplete[##1,2]=1\else\num{\ListeComplete[##1,2]}\times\fi\num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - }=\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - \] - }% - \ifboolKV[ClesStat]{SET}{}{L'effectif total de la s\'erie est :% - \ifboolKV[ClesStat]{Liste}{ \num{\EffectifTotal}\\}{% - \[\num{\ListeComplete[1,2]}\xintFor* ##1 in {\xintSeq {2}{\ListeCompletelen}}\do{% - +\num{\ListeComplete[##1,2]} - }=\num{\EffectifTotal} - \]% - }% - }% - Donc la moyenne de la s\'erie est \'egale \`a :% - \[\frac{\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}}{\num{\EffectifTotal}}% - \ifboolKV[ClesStat]{ValeurExacte}{}{% - \opdiv*{\SommeDonnees}{\EffectifTotal}{resultatmoy}{restemoy}% - \opround{resultatmoy}{\useKV[ClesStat]{Precision}}{resultatmoy1}% - \opcmp{resultatmoy}{resultatmoy1}\ifopeq=\else\approx\fi% - \num{\fpeval{round(\SommeDonnees/\EffectifTotal,\useKV[ClesStat]{Precision})}}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}% - }% - \]% - }{}% - % % Affichage des r\'eponses. - % %% pour l'\'etendue - \ifboolKV[ClesStat]{Etendue}{L'\'etendue de la s\'erie est \'egale \`a $\num{\ListeComplete[\ListeCompletelen,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}-\num{\ListeComplete[1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}=\num{\Etendue}$\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}}{}% - % pour la m\'ediane - %%% Recuperation Mediane - \newcount\Recupmed% - \newcount\Recupmeda% - \ifodd\number\EffectifTotal%odd impair - \Recupmed=\fpeval{(\EffectifTotal+1)/2}\relax% - \else% pair - \Recupmed=\fpeval{\EffectifTotal/2}\relax% - \Recupmeda=\numexpr\Recupmed+1\relax% - \fi% - \newcount\Recupk% - \Recupk=0% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintFor* ##2 in {\xintSeq {1}{\ListeComplete[##1,2]}}\do{% - \Recupk=\numexpr\Recupk+1\relax% - \ifnum\Recupk=\Recupmed% - \ifodd\number\EffectifTotal% - \xdef\Mediane{\ListeComplete[##1,1]}% - \else% - \xdef\Mediane{\ListeComplete[##1,1]}% - \fi% - \fi% - \ifnum\Recupk=\Recupmeda% - \xdef\Mediane{\fpeval{(\Mediane+\ListeComplete[##1,1])/2}}% - \fi% - }% - }% - %%% - \ifboolKV[ClesStat]{Mediane}{% - - \newcount\med% - \newcount\meda% - \ifodd\number\EffectifTotal%odd impair - \med=\fpeval{(\EffectifTotal+1)/2}\relax% - L'effectif total de la s\'erie est \num{\EffectifTotal}. Or, $\num{\EffectifTotal}=\num{\fpeval{\med-1}}+1+\num{\fpeval{\med-1}}$. % - \else% pair - \med=\fpeval{\EffectifTotal/2}\relax% - \meda=\numexpr\med+1\relax% - L'effectif total de la s\'erie est \num{\EffectifTotal}. Or, $\num{\EffectifTotal}=\num{\fpeval{\med}}+\num{\fpeval{\med}}$. % - \fi% - \newcount\k% - \k=0% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintFor* ##2 in {\xintSeq {1}{\ListeComplete[##1,2]}}\do{% - \k=\numexpr\k+1\relax% - \ifnum\k=\med% - \ifodd\number\EffectifTotal% - La m\'ediane de la s\'erie est la \the\med\ieme{} donn\'ee. Donc la m\'ediane de la s\'erie est \num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}% - \else% - La \the\med\ieme{} donn\'ee est \num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}. }{. }\xdef\Mediane{\ListeComplete[##1,1]}% - \fi% - \fi% - \ifnum\k=\meda% - La \the\meda\ieme{} donn\'ee est \num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}\\Donc la m\'ediane de la s\'erie est \xdef\Mediane{\fpeval{(\Mediane+\ListeComplete[##1,1])/2}}\num{\Mediane}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}% - \fi% - }% - }% - }{}% - %%% Quartile un - \newcount\PfCQuartileUn% - \modulo{\EffectifTotal}{4}\relax% - \ifnum\remainder=0% - \PfCQuartileUn=\fpeval{\EffectifTotal/4}% - \else% - \PfCQuartileUn=\fpeval{ceil(\EffectifTotal/4)}% - \fi% - \newcount\PfCQunk% - \PfCQunk=0% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintFor* ##2 in {\xintSeq {1}{\ListeComplete[##1,2]}}\do{% - \PfCQunk=\numexpr\PfCQunk+1\relax% - \ifnum\PfCQunk=\PfCQuartileUn% - \xdef\QuartileUn{\ListeComplete[##1,1]}% - \fi% - }% - }% - %%% Quartile trois - \newcount\PfCQuartileTrois% - \modulo{\EffectifTotal}{4}\relax% - \ifnum\remainder=0% - \PfCQuartileTrois=\fpeval{3*\EffectifTotal/4}% - \else% - \PfCQuartileTrois=\fpeval{ceil(3*\EffectifTotal/4)}% - \fi% - \newcount\PfCQtroisk% - \PfCQtroisk=0% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintFor* ##2 in {\xintSeq {1}{\ListeComplete[##1,2]}}\do{% - \PfCQtroisk=\numexpr\PfCQtroisk+1\relax% - \ifnum\PfCQtroisk=\PfCQuartileTrois% - \xdef\QuartileTrois{\ListeComplete[##1,1]}% - \fi% - }% - }% - % Construction de tableau - \ifboolKV[ClesStat]{Tableau}{\BuildtabStat}{}% - % Construction du graphique ?? - \ifboolKV[ClesStat]{Graphique}{% - \ifboolKV[ClesStat]{Angle}{% - \buildgraphcq{360}% - }{% - \ifboolKV[ClesStat]{SemiAngle}{% - \buildgraphcq{180}% - }{% - \buildgraph[#1]% - }% - }% - }{}% - }% - }% - }% -}% \ No newline at end of file diff --git a/macros/latex/contrib/profcollege/latex/PfCStatistiquesoldold.tex b/macros/latex/contrib/profcollege/latex/PfCStatistiquesoldold.tex deleted file mode 100644 index 72a33f9dd4..0000000000 --- a/macros/latex/contrib/profcollege/latex/PfCStatistiquesoldold.tex +++ /dev/null @@ -1,2109 +0,0 @@ -%%% -% Statistiques -%%% -\newcommand\NbDonnees{}% -\newcommand\SommeDonnees{}% -\newcommand\EffectifTotal{}% -\newcommand\Moyenne{}% -\newcommand\Etendue{}% -\newcommand\Mediane{}% -\newcommand\DonneeMax{}% -\newcommand\DonneeMin{}% -\newcommand\EffectifMax{}% -\newcommand\PfCArticleMediane{la}% - -\setKVdefault[ClesStat]{ColVide=0,CaseVide=false,EffVide=false,% -FreqVide=false,AngVide=false,ECCVide=false,TotalVide=false,Sondage=false,Liste=false,% -Tableau=false,Stretch=1,Frequence=false,EffectifTotal=false,% -Etendue=false,Moyenne=false,SET=false,ValeurExacte=false,Mediane=false,DetailsMediane=false,UneMediane=false,QuartileUn=false,QuartileTrois=false,Total=false,Concret=false,% -Unite={},Largeur=1cm,Precision=2,PrecisionF=0,Donnee=Valeurs,Effectif=Effectif,Grille=false,Origine=0,Angle=false,SemiAngle=false,Qualitatif=false,Classes=false,TableauVide=false,ECC=false,Coupure=10,CouleurTab=gray!15,Graphique=false,Batons=true,% -% Pour les diags batons -EpaisseurBatons=1,ListeCouleursB={a},Lecture=false,LectureFine=false,AideLecture=false,Reponses=false,DonneesSup=false,AbscisseRotation=false,Tiret=false,AngleRotationAbscisse=0,Pasx=1,Pasy=1,Unitex=0.5,Unitey=0.5,Depart=0,CouleurDefaut=black,Date=false,GrandNombrey=false,GrandNombrex=false,% -% Pour les diags circulaires -Rayon=3cm,AffichageAngle=false,AffichageDonnee=false,ListeCouleurs={white},Hachures=false,LectureInverse=false,EcartHachures=0.25,EpaisseurHachures=1,Legende,LegendeVide=false,ACompleter=false,% -%Pour les représentations -Representation=false,% -%Pour les barres horizontales -Barre=false,Longueur=10cm,Hauteur=5mm,Bicolore=false,EcartBarre=0,%Grille est dispo -% Pour les histogrammes -Histogramme=false,UniteAire=1,MemeAmpli,DepartHisto=1% -}% -%compl\'ements -\defKV[ClesStat]{AngleRotationAbscisse=\setKV[ClesStat]{AbscisseRotation}}% -\defKV[ClesStat]{AffichageDonnees=\setKV[ClesStat]{AffichageAngle=false}\setKV[ClesStat]{AffichageDonnee}}% -\defKV[ClesStat]{CasesVides=\setKV[ClesStat]{CaseVide}}% -\defKV[ClesStat]{LegendesVides=\setKV[ClesStat]{LegendeVide}}% -\defKV[ClesStat]{GrandNombreO=\setKV[ClesStat]{GrandNombrey}}% -\defKV[ClesStat]{GrandNombreA=\setKV[ClesStat]{GrandNombrex}}% -% La construction du tableau -\def\addtotok#1#2{#1\expandafter{\the#1#2}}% -\newtoks\tabtoksa\newtoks\tabtoksb\newtoks\tabtoksc% -\def\updatetoks#1/#2\nil{\addtotok\tabtoksa{\ifboolKV[ClesStat]{Qualitatif}{}{&\num{#1}}}\addtotok\tabtoksb{&\num{#2}}}% -% -\newcounter{PfCCompteLignes}% -% -\def\BuildtabStat{% %%Tableau sans/avec total - \setcounter{PfCCompteLignes}{0}% - \tabtoksa{\useKV[ClesStat]{Donnee}}\tabtoksb{\useKV[ClesStat]{Effectif}}% - \foreachitem\compteur\in\ListeComplete{\expandafter\updatetoks\compteur\nil}% - \renewcommand{\arraystretch}{\useKV[ClesStat]{Stretch}}% - \ifboolKV[ClesStat]{Total}{% - \begin{NiceTabular}{c*{\fpeval{\ListeCompletelen+1}}{>{\centering\arraybackslash}p{\useKV[ClesStat]{Largeur}}}}% - \CodeBefore% - \rowcolor{\useKV[ClesStat]{CouleurTab}}{1}% - \columncolor{\useKV[ClesStat]{CouleurTab}}{1}% - \Body% - \the\tabtoksa&Total\\% - \ifboolKV[ClesStat]{EffVide}{\useKV[ClesStat]{Effectif}\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&}}{\the\tabtoksb&\num{\EffectifTotal}}\\% - \ifboolKV[ClesStat]{Frequence}{\stepcounter{PfCCompteLignes}Fr\'equence (\%)\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{FreqVide}{}{\num{\CalculFrequence{##1}}}}}&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{FreqVide}{}{100}}\\}{}% - \ifboolKV[ClesStat]{Angle}{\stepcounter{PfCCompteLignes}Angle (\si{\degree})\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{\CalculAngle{##1}}}}&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{360}}\\}{}% - \ifboolKV[ClesStat]{SemiAngle}{\stepcounter{PfCCompteLignes}Angle (\si{\degree})\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{\CalculSemiAngle{##1}}}}&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{180}}\\}{}% - \ifboolKV[ClesStat]{ECC}{\stepcounter{PfCCompteLignes}E.C.C.\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{ECCVide}{}{\CalculECC{##1}}}}&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{ECCVide}{}{\num{\EffectifTotal}}}\\}{}% - \CodeAfter% - % On crée la liste des colonnes à vider - \xintifboolexpr{\useKV[ClesStat]{ColVide}>0}{% - \xdef\FooStat{\useKV[ClesStat]{ColVide}}% - \setsepchar{,}% - \readlist*\ListeColonnesAVider{\FooStat}% - \foreachitem\compteur\in\ListeColonnesAVider{% - \tikz\fill[white] (row-2-|col-\fpeval{\compteur+1}) rectangle (last-|col-\fpeval{\compteur+2});% - }% - }{}% - % On crée la liste des cases à vider - \ifboolKV[ClesStat]{CaseVide}{% - \xdef\FooStatCases{\useKV[ClesStat]{CasesVides}}% - \setsepchar[*]{,*/}% - \readlist*\ListeCasesAVider{\FooStatCases}% - \foreachitem\compteur\in\ListeCasesAVider{% - \tikz\fill[white] (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+1}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+1}) rectangle (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+2}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+2});% - }% - }{}% - % On retrace le tableau - %Les colonnes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\ListeCompletelen+3}}}\do{% - \tikz\draw (row-1-|col-##1) -- (last-|col-##1);% - }% - % Les lignes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\thePfCCompteLignes+3}}}\do{% - \tikz\draw (row-##1-|col-1) -- (row-##1-|last);% - }% - \end{NiceTabular}% - }{% - \begin{NiceTabular}{c*{\fpeval{\ListeCompletelen}}{>{\centering\arraybackslash}p{\useKV[ClesStat]{Largeur}}}}% - \CodeBefore% - \rowcolor{\useKV[ClesStat]{CouleurTab}}{1}% - \columncolor{\useKV[ClesStat]{CouleurTab}}{1}% - \Body% - \the\tabtoksa\\% - \ifboolKV[ClesStat]{EffVide}{\useKV[ClesStat]{Effectif}\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&}}{\the\tabtoksb}\\% - \ifboolKV[ClesStat]{Frequence}{\stepcounter{PfCCompteLignes}Fr\'equence (\%)\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{FreqVide}{}{\num{\CalculFrequence{##1}}}}}\\}{}% - \ifboolKV[ClesStat]{Angle}{\stepcounter{PfCCompteLignes}Angle (\si{\degree})\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{\CalculAngle{##1}}}}\\}{}% - \ifboolKV[ClesStat]{SemiAngle}{\stepcounter{PfCCompteLignes}Angle (\si{\degree})\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{AngVide}{}{\CalculSemiAngle{##1}}}}\\}{}% - \ifboolKV[ClesStat]{ECC}{\stepcounter{PfCCompteLignes}E.C.C.\xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{ECCVide}{}{\CalculECC{##1}}}}\\}{}% - \CodeAfter% - % On crée la liste des colonnes à vider - \xintifboolexpr{\useKV[ClesStat]{ColVide}>0}{% - \xdef\FooStat{\useKV[ClesStat]{ColVide}}% - \setsepchar{,}% - \readlist*\ListeColonnesAVider{\FooStat}% - \foreachitem\compteur\in\ListeColonnesAVider{% - \tikz\fill[white] (row-2-|col-\fpeval{\compteur+1}) rectangle (last-|col-\fpeval{\compteur+2});% - }% - }{}% - % On crée la liste des cases à vider - \ifboolKV[ClesStat]{CaseVide}{% - \xdef\FooStatCases{\useKV[ClesStat]{CasesVides}}% - \setsepchar[*]{,*/}% - \readlist*\ListeCasesAVider{\FooStatCases}% - \foreachitem\compteur\in\ListeCasesAVider{% - \tikz\fill[white] (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+1}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+1}) rectangle (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+2}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+2});% - }% - }{}% - % On retrace le tableau - %Les colonnes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\ListeCompletelen+2}}}\do{% - \tikz\draw (row-1-|col-##1) -- (last-|col-##1);% - }% - % Les lignes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\thePfCCompteLignes+3}}}\do{% - \tikz\draw (row-##1-|col-1) -- (row-##1-|last);% - }% - \end{NiceTabular}% - }% -}% - -% Pour construire le diagramme en barres horizontales -\def\UpdatetoksHor#1/#2/#3\nil{\addtotok\toklistenomhor{"#1",}\addtotok\toklistedonhor{#3,}\addtotok\toklisteaffhor{"#2",}}% - -\newcommand\buildgraphbarhor{% - \newtoks\toklistenomhor% - \newtoks\toklistedonhor% - \newtoks\toklisteaffhor% - \newtoks\toklistecouleur% - \xdef\PfCfooStat{}% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xdef\PfCfooStat{\PfCfooStat \ListeComplete[##1,2],}% - }% - \xdef\DivMax{\fpeval{max(\PfCfooStat)}}% - \xdef\ExposantDivMax{\fpeval{round(ln(\DivMax)/ln(10))}}% - \xdef\DivMax{\fpeval{10**\ExposantDivMax}}% - \xdef\PfCfooStat{}% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xdef\PfCfooStat{\PfCfooStat \ListeComplete[##1,1]/\ListeComplete[##1,2]/\fpeval{\ListeComplete[##1,2]/\DivMax},}% - }% - \readlist*\ListeCompleteDiagHor{\PfCfooStat}% - \foreachitem\compteur\in\ListeCompleteDiagHor{\expandafter\UpdatetoksHor\compteur\nil}% - \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleurs}}% - \readlist*\ListeCouleur{\ListeAvantCouleurs}% - \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - \NewMPDiagBarreHor{\the\toklistenomhor}{\the\toklistedonhor}{\the\toklisteaffhor}{\the\toklistecouleur}% -}% - -% Pour construire le diagramme en bâtons -\def\Updatetoks#1/#2\nil{\addtotok\toklistepoint{(#1,#2),}}% -\newcommand\buildgraph[1][]{% - \newtoks\toklistepoint\toklistepoint{}% - \newtoks\toklistecouleur\toklistecouleur{}% - \newtoks\toklistelegende\toklistelegende{}% - \ifboolKV[ClesStat]{LegendeVide}{% - \xdef\foo{\useKV[ClesStat]{LegendesVides}}% - \readlist*\ListeLegendesAEffacer{\foo}% - }{\xdef\foo{-1}\readlist*\ListeLegendesAEffacer{\foo}% - }% - \foreachitem\compteur\in\ListeLegendesAEffacer{\expandafter\UpdateLegende\compteur\nil}% - \foreachitem\compteur\in\ListeComplete{\expandafter\Updatetoks\compteur\nil}% - \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleursB}}% - \readlist*\ListeCouleur{\ListeAvantCouleurs}% - \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - \MPStatNew{\the\toklistepoint}{\the\toklistecouleur}{\the\toklistelegende} -}% - -% Pour construire le diagramme en bâtons qualitatif -\def\Updatetoksq#1/#2\nil{\addtotok\toklistepointq{"#1",#2,}}% -\newcommand\buildgraphq[1][]{% - \newtoks\toklistepointq\toklistepointq{}% - \newtoks\toklistecouleur\toklistecouleur{}% - \newtoks\toklistelegende\toklistelegende{}% - \ifboolKV[ClesStat]{LegendeVide}{% - \xdef\foo{\useKV[ClesStat]{LegendesVides}}% - \readlist*\ListeLegendesAEffacer{\foo}% - }{\xdef\foo{-1}\readlist*\ListeLegendesAEffacer{\foo}% - }% - \foreachitem\compteur\in\ListeLegendesAEffacer{\expandafter\UpdateLegende\compteur\nil}% - \foreachitem\compteur\in\ListeComplete{\expandafter\Updatetoksq\compteur\nil}% - \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleursB}}% - \readlist*\ListeCouleur{\ListeAvantCouleurs}% - \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - \MPStatNew{\the\toklistepointq}{\the\toklistecouleur}{\the\toklistelegende}% -}% - -\def\UpdateCoul#1\nil{\addtotok\toklistecouleur{#1,}}% -\def\UpdateLegende#1\nil{\addtotok\toklistelegende{#1,}}% - -% Pour construire le diagramme circulaire qualitatif -\def\buildgraphcq#1{% - \newtoks\toklistepointq\toklistepointq{}% - \newtoks\toklistecouleur\toklistecouleur{}% - \newtoks\toklistelegende\toklistelegende{}% - \ifboolKV[ClesStat]{LegendeVide}{% - \xdef\foo{\useKV[ClesStat]{LegendesVides}}% - \readlist*\ListeLegendesAEffacer{\foo}% - }{\xdef\foo{0}\readlist*\ListeLegendesAEffacer{\foo}% - }% - \foreachitem\compteur\in\ListeLegendesAEffacer{\expandafter\UpdateLegende\compteur\nil}% - % - \foreachitem\compteur\in\ListeComplete{\expandafter\Updatetoksq\compteur\nil}% - \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleurs}}% - \readlist*\ListeCouleur{\ListeAvantCouleurs}% - \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - \NewMPStatCirculaireQ{\the\toklistepointq}{#1}{\the\toklistecouleur}{\the\toklistelegende}% -}% - -%% calcul des fr\'equences -\newcommand\CalculFrequence[1]{% - \fpeval{round(\ListeComplete[#1,2]*100/\EffectifTotal,\useKV[ClesStat]{PrecisionF})} -} - -%% calcul des angles -\newcommand\CalculAngle[1]{% - \fpeval{round(\ListeComplete[#1,2]*360/\EffectifTotal,0)} -} -\newcommand\CalculSemiAngle[1]{% - \fpeval{round(\ListeComplete[#1,2]*180/\EffectifTotal,0)} -} - -%% calcul des ECC -\newcount\CompteurECC% -\newcount\CompteurECCTotal% -\newcount\CompteurECCC% -\newcount\CompteurECCCTotal% - -\newcommand\CalculECC[1]{% - \xdef\TotalECC{0}% - \CompteurECC=1% - \CompteurECCTotal=\numexpr#1+1% - \whiledo{\CompteurECC < \CompteurECCTotal}{% - \xdef\TotalECC{\fpeval{\TotalECC+\ListeComplete[\the\CompteurECC,2]}}% - \CompteurECC=\numexpr\CompteurECC+1% - }% - \num{\TotalECC}% -} - -\def\NewMPDiagBarreHorCode{% - Longueur:=\useKV[ClesStat]{Longueur}; - Hauteur:=\useKV[ClesStat]{Hauteur}; - Ecart:=\useKV[ClesStat]{EcartBarre}; - ExposantDivMax:=\ExposantDivMax; - ecarthachures=\useKV[ClesStat]{EcartHachures}; - epaisseurhachures=\useKV[ClesStat]{EpaisseurHachures}; - boolean Hachures,Bicolore,Grille,AffichageDonnee,LegendeVide; - Hachures=\useKV[ClesStat]{Hachures}; - Bicolore=\useKV[ClesStat]{Bicolore}; - Grille=\useKV[ClesStat]{Grille}; - AffichageDonnee=\useKV[ClesStat]{AffichageDonnee}; - LegendeVide=\useKV[ClesStat]{LegendeVide}; - vardef CalculNombreDonneesEtDonneeMax(text t)= - nbdon:=0;%nombre de données - DonneeMax:=0;%donnée DonneeMaximale - for p_=t: - nbdon:=nbdon+1; - if p_>DonneeMax: - DonneeMax:=p_; - fi; - endfor; - enddef; - vardef ListeDonnees(text t)= - n:=0; - for p_=t: - n:=n+1; - Donnees[n]:=p_; - endfor; - enddef; - vardef RecuperationCouleurs(text t)= - color Col[]; - n:=0; - for p_=t: - n:=n+1; - Col[n]=p_; - endfor; - enddef; -} - -% Construction d'un diagramme en barres horizontal -\newcommand\NewMPDiagBarreHor[4]{% - % #1 Liste des noms - % #2 Liste des valeurs associées - % #3 Liste des valeurs à afficher (si pb calcul MP) - % #4 Liste des couleurs - \ifluatex% - \mplibforcehmode% - \begin{mplibcode}% - \NewMPDiagBarreHorCode% - vardef TraceDiag= - if Grille: - pair Zz[];%Pour déterminer "le dernier point" - Zz0=(0,-(nbdon-1)*(Hauteur+Ecart)-Ecart); - Zz2=(0,(Hauteur+Ecart)); - Zz1=((1/DonneeMax)*Longueur,-(nbdon-1)*(Hauteur+Ecart)-Ecart); - Zz3=if ExposantDivMax=0 : (DonneeMax+1)[Zz0,Zz1] else: ((floor(DonneeMax*10+2))/10)[Zz0,Zz1];fi; - if ExposantDivMax=0: - for k=1 upto DonneeMax+1: - trace (Zz0--Zz2) shifted (k*(Zz1-Zz0)) dashed evenly withcolor 0.5white; - endfor; - else: - for k=1 upto (floor(DonneeMax*10+2)): - trace (Zz0--Zz2) shifted ((k/10)*(Zz1-Zz0)) dashed evenly withcolor 0.5white; - endfor; - fi; - if ExposantDivMax=0: - for k=1 upto (DonneeMax+1): - label.bot(TEX("\num{"&decimal(k)&"}"),Zz0+k*(Zz1-Zz0)); - endfor; - else: - if ExposantDivMax<5: - for k=1 upto (floor(DonneeMax*10+2)): - label.bot(TEX("\num{\fpeval{"&decimal(k)&"*(10**"&decimal(ExposantDivMax-1)&")}}"),Zz0+(k/10)*(Zz1-Zz0)); - endfor; - else: - dotlabel.bot(TEX("\num{\fpeval{10**"&decimal(ExposantDivMax)&"}}"),Zz1); - fi; - fi; - fi; - for k=0 upto nbdon-1: - path RectangleDonnee; - RectangleDonnee=(unitsquare xscaled ((Donnees[k+1]/DonneeMax)*Longueur) yscaled Hauteur) shifted(0,-k*(Hauteur+Ecart)); - if Hachures: - fill RectangleDonnee withcolor white; - trace Hachurage(RectangleDonnee,60 if - (k mod 2)=0: +90 fi,ecarthachures,if (k mod 2)=0 : 0 else: 1 fi) - withpen pencircle scaled epaisseurhachures; - else: - remplis RectangleDonnee withcolor if unknown Col[k+1]: if Bicolore:Col[(k mod 2)+1] else: white fi; else:if Bicolore:Col[(k mod 2)+1] else: Col[k+1] fi; fi; - fi; - trace RectangleDonnee; - endfor; - if Grille: - drawarrow (0,-(nbdon-1)*(Hauteur+Ecart)-Ecart)--(0,(Hauteur+Ecart)) withpen pencircle scaled 1.5; - drawarrow (0,-(nbdon-1)*(Hauteur+Ecart)-Ecart)--(Zz3+u*(0.25,0)) withpen pencircle scaled 1.5; - fi; - enddef; - vardef AffichageNom(text t)= - k:=0; - for p_=t: - label.lft(TEX(p_),0.5[(0,0),(0,Hauteur)] shifted (0,-k*(Hauteur+Ecart))); - k:=k+1; - endfor; - enddef; - vardef AffichageDonnees(text t)= - k:=0; - for p_=t: - label.rt(TEX("\num{"&p_&"}"),0.5[(0,0),(0,Hauteur)] shifted (((Donnees[k+1]/DonneeMax)*Longueur),-k*(Hauteur+Ecart))); - k:=k+1; - endfor; - enddef; - CalculNombreDonneesEtDonneeMax(#2); - ListeDonnees(#2); - RecuperationCouleurs(#4); - TraceDiag; - if LegendeVide=false: - AffichageNom(#1); - fi; - if AffichageDonnee: - AffichageDonnees(#3); - fi; - \end{mplibcode} - \else% - \begin{mpost}[mpsettings={\NewMPDiagBarreHorCode}] - vardef TraceDiag= - if Grille: - pair Zz[];%Pour déterminer "le dernier point" - Zz0=(0,-(nbdon-1)*(Hauteur+Ecart)-Ecart); - Zz2=(0,(Hauteur+Ecart)); - Zz1=((1/DonneeMax)*Longueur,-(nbdon-1)*(Hauteur+Ecart)-Ecart); - Zz3=if ExposantDivMax=0 : (DonneeMax+1)[Zz0,Zz1] else: ((floor(DonneeMax*10+2))/10)[Zz0,Zz1];fi; - if ExposantDivMax=0: - for k=1 upto DonneeMax+1: - trace (Zz0--Zz2) shifted (k*(Zz1-Zz0)) dashed evenly withcolor 0.5white; - endfor; - else: - for k=1 upto (floor(DonneeMax*10+2)): - trace (Zz0--Zz2) shifted ((k/10)*(Zz1-Zz0)) dashed evenly withcolor 0.5white; - endfor; - fi; - if ExposantDivMax=0: - for k=1 upto (DonneeMax+1): - label.bot(LATEX("\num{"&decimal(k)&"}"),Zz0+k*(Zz1-Zz0)); - endfor; - else: - if ExposantDivMax<5: - for k=1 upto (floor(DonneeMax*10+2)): - label.bot(LATEX("\num{\noexpand\fpeval{"&decimal(k)&"*(10**"&decimal(ExposantDivMax-1)&")}}"),Zz0+(k/10)*(Zz1-Zz0)); - endfor; - else: - dotlabel.bot(LATEX("\num{\noexpand\fpeval{10**"&decimal(ExposantDivMax)&"}}"),Zz1); - fi; - fi; - fi; - for k=0 upto nbdon-1: - path RectangleDonnee; - RectangleDonnee=(unitsquare xscaled ((Donnees[k+1]/DonneeMax)*Longueur) yscaled Hauteur) shifted(0,-k*(Hauteur+Ecart)); - if Hachures: - fill RectangleDonnee withcolor white; - trace Hachurage(RectangleDonnee,60 if - (k mod 2)=0: +90 fi,ecarthachures,if (k mod 2)=0 : 0 else: 1 fi) - withpen pencircle scaled epaisseurhachures; - else: - remplis RectangleDonnee withcolor if unknown Col[k+1]: if Bicolore:Col[(k mod 2)+1] else: white fi; else:if Bicolore:Col[(k mod 2)+1] else: Col[k+1] fi; fi; - fi; - trace RectangleDonnee; - endfor; - if Grille: - drawarrow (0,-(nbdon-1)*(Hauteur+Ecart)-Ecart)--(0,(Hauteur+Ecart)) withpen pencircle scaled 1.5; - drawarrow (0,-(nbdon-1)*(Hauteur+Ecart)-Ecart)--(Zz3+u*(0.25,0)) withpen pencircle scaled 1.5; - fi; - enddef; - vardef AffichageNom(text t)= - k:=0; - for p_=t: - label.lft(LATEX(p_),0.5[(0,0),(0,Hauteur)] shifted (0,-k*(Hauteur+Ecart))); - k:=k+1; - endfor; - enddef; - vardef AffichageDonnees(text t)= - k:=0; - for p_=t: - label.rt(LATEX("\num{"&p_&"}"),0.5[(0,0),(0,Hauteur)] shifted (((Donnees[k+1]/DonneeMax)*Longueur),-k*(Hauteur+Ecart))); - k:=k+1; - endfor; - enddef; - CalculNombreDonneesEtDonneeMax(#2); - ListeDonnees(#2); - RecuperationCouleurs(#4); - TraceDiag; - if LegendeVide=false: - AffichageNom(#1); - fi; - if AffichageDonnee: - AffichageDonnees(#3); - fi; - \end{mpost} - \fi% -}% - -\def\MPStatNewCode{% - maxx:=0; - maxy:=0; - unitex:=\useKV[ClesStat]{Unitex}*cm; - unitey:=\useKV[ClesStat]{Unitey}*cm; - xpartorigine:=\useKV[ClesStat]{Origine}; - AngleRotation=\useKV[ClesStat]{AngleRotationAbscisse}; - boolean Rotation,Lecture,LectureFine,AideLecture,DonneesSup,Reponses,Qualitatif,Tiret,LegendeVide,Retour,GrandNombrex,GrandNombrey,Date; - GrandNombrex=\useKV[ClesStat]{GrandNombrex}; - GrandNombrey=\useKV[ClesStat]{GrandNombrey}; - if GrandNombrex: - GrandNombreA=\useKV[ClesStat]{GrandNombreA}; - fi; - if GrandNombrey: - GrandNombreO=\useKV[ClesStat]{GrandNombreO}; - fi; - Date:=\useKV[ClesStat]{Date}; - Rotation=\useKV[ClesStat]{AbscisseRotation}; - Lecture:=\useKV[ClesStat]{Lecture}; - LectureFine:=\useKV[ClesStat]{LectureFine}; - AideLecture:=\useKV[ClesStat]{AideLecture}; - DonneesSup:=\useKV[ClesStat]{DonneesSup}; - Reponses:=\useKV[ClesStat]{Reponses}; - LegendeVide=\useKV[ClesStat]{LegendeVide}; - epaisseurbatons=\useKV[ClesStat]{EpaisseurBatons}; - Qualitatif=\useKV[ClesStat]{Qualitatif}; - Tiret=\useKV[ClesStat]{Tiret}; - Retour=false; - color CoulDefaut; - CoulDefaut=\useKV[ClesStat]{CouleurDefaut}; - Depart=\useKV[ClesStat]{Depart}; - % - pair A[],B[],P[]; - vardef toto(text t)=%points quantitatif - n:=0; - for p_=t: - if pair p_: - n:=n+1; - P[n]=((xpart(p_)-(xpartorigine))*unitex,ypart(p_)*unitey); - if xpart(p_)>maxx: - maxx:=xpart(p_)-(xpartorigine); - fi; - if ypart(p_)>maxy: - maxy:=ypart(p_); - fi; - A[n]=unitex*(xpart(p_)-(xpartorigine),0); - B[n]=unitey*(0,ypart(p_)); - fi; - endfor; - enddef; - vardef tutu(text t)=%points qualitatif - n:=0; - for p_=t: - if numeric p_: - P[n]=((n)*unitex,unitey*(p_-Depart)); - B[n]=(0,unitey*(p_-Depart)); - if p_>maxy: - maxy:=p_; - fi; - else: - n:=n+1; - A[n]=unitex*(n,0); - fi; - endfor; - maxy:=maxy-Depart; - maxx:=n; - enddef; -} - -% Construction du graphique en bâtons -\newcommand\MPStatNew[3]{% - \ifluatex - \mplibforcehmode - \begin{mplibcode} - \MPStatNewCode - % - vardef Test(expr nb)= - Retour:=false; - op:=0; - for l_=#3: - if l_=nb: - op:=op+1; - fi; - endfor; - if op>0: - Retour:=true; - fi; - enddef; - % - % on r\'ecup\`ere les couleurs - color Col[]; - n:=0; - for p_=#2: - n:=n+1; - if color p_: - Col[n]=p_; - else: - Col[n]=CoulDefaut; - fi; - endfor; - vardef tata(text t)=%affichage quantitatif - l=0; - for p_=t: - if pair p_: - l:=l+1; - if Rotation: - if Date: - label.bot(TEX(decimal(xpart(p_))) rotated AngleRotation,A[l]); - else: - label.bot(TEX("\num{"&decimal(xpart(p_))&"}") rotated AngleRotation,A[l]); - fi; - else : - if Date: - label.bot(TEX(decimal(xpart(p_))),A[l]); - else: - label.bot(TEX("\num{"&decimal(xpart(p_))&"}"),A[l]); - fi; - fi; - if Reponses: - if DonneesSup: - Test(l); - if Retour=false: - if GrandNombrey: - label.top(TEX("\num{"&decimal(ypart(p_))&"}"),P[l]); - else: - label.top(TEX("\num{"&decimal(ypart(p_))&"}"),P[l]); - fi; - fi; - else: - if Tiret: - trace (B[l]+(-1pt,0))--(B[l]+(1pt,0)); - label.lft(TEX("\num{"&decimal(p_)&"}"),B[l]); - else: - dotlabel.lft(TEX("\num{"&decimal(ypart(p_))&"}"),B[l]); - fi; - fi; - fi; - fi; - endfor; - enddef; - vardef titi(text t)=%affichage qualitatif - l:=0; - for p_=t: - if numeric p_: - if Reponses: - if DonneesSup: - Test(l); - if Retour=false: - label.top(TEX("\num{"&decimal(p_)&"}"),P[l]); - fi; - else: - if Tiret: - trace (B[l]+(-1pt,0))--(B[l]+(1pt,0)); - label.lft(TEX("\num{"&decimal(p_)&"}"),B[l]); - else: - dotlabel.lft(TEX("\num{"&decimal(p_)&"}"),B[l]); - fi; - fi; - fi; - else: - l:=l+1; - if Rotation: - if AngleRotation<>0: - picture TEXTELABEL; - TEXTELABEL=image( - labeloffset:=labeloffset*2; - label.lft(TEX(p_),A[l]); - labeloffset:=labeloffset/2; - ); - trace rotation(TEXTELABEL,A[l],AngleRotation); - else : - label.bot(TEX(p_),A[l]); - fi; - fi; - fi; - endfor; - enddef; - if Qualitatif: tutu(#1); else: toto(#1); fi; - boolean Grille; - Grille:=\useKV[ClesStat]{Grille}; - Pasx:=\useKV[ClesStat]{Pasx}; - Pasy:=\useKV[ClesStat]{Pasy}; - if Grille: - drawoptions(withcolor 0.75white); - for k=0 step Pasx until ((maxx+1)): - trace (k*unitex,0)--(k*unitex,unitey*(maxy+2*Pasy)); - endfor; - for k=0 step Pasy until ((maxy+2*Pasy)): - trace (0,k*unitey)--(unitex*(maxx+1),k*unitey); - endfor; - drawoptions(); - fi; - if epaisseurbatons<>0: - for k=1 upto n: - fill polygone(A[k]-(epaisseurbatons*1pt,0),A[k]+(epaisseurbatons*1pt,0),P[k]+(epaisseurbatons*1pt,0),P[k]-(epaisseurbatons*1pt,0)) withcolor if unknown Col[k]: CoulDefaut else:Col[k] fi; - if AideLecture: - draw B[k]--P[k] dashed evenly; - fi; - endfor; - fi; - if LectureFine: - for k=0 step Pasy until ((maxy+1*Pasy)): - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - if GrandNombrey: - label.lft(TEX("\num{\fpeval{\useKV[ClesStat]{GrandNombreO}*"&decimal(k+Depart)&"}}"),(0,k*unitey)); - else: - label.lft(TEX("\num{"&decimal(k+Depart)&"}"),(0,k*unitey)); - fi; - else: - if GrandNombrey: - dotlabel.lft(TEX("\num{\fpeval{\useKV[ClesStat]{GrandNombreO}*"&decimal(k+Depart)&"}}"),(0,k*unitey)); - else: - dotlabel.lft(TEX("\num{"&decimal(k+Depart)&"}"),(0,k*unitey)); - fi; - fi; - endfor; - fi; - if Lecture: - for k=0 step Pasy until Pasy: - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - if GrandNombrey: - label.lft(TEX("\num{\fpeval{\useKV[ClesStat]{GrandNombreO}*"&decimal(k)&"}}"),(0,k*unitey)); - else: - label.lft(TEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - fi; - else: - if GrandNombrey: - dotlabel.lft(TEX("\num{\fpeval{\useKV[ClesStat]{GrandNombreO}*"&decimal(k)&"}}"),(0,k*unitey)); - else: - dotlabel.lft(TEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - fi; - fi; - endfor; - fi; - drawarrow (0,0)--unitex*(maxx+1,0); - drawarrow (0,0)--unitey*(0,maxy+2*Pasy); - label.lrt(btex \useKV[ClesStat]{Donnee} etex,unitex*(maxx+1,0)); - label.urt(btex \useKV[ClesStat]{Effectif} etex,unitey*(0,maxy+2*Pasy)); - if Qualitatif: titi(#1); else:tata(#1); fi; - \end{mplibcode} - \else - \begin{mpost}[mpsettings={\MPStatNewCode}] - % on r\'ecup\`ere les couleurs - color Col[]; - n:=0; - for p_=#2: - n:=n+1; - if color p_: - Col[n]=p_; - else: - Col[n]=CoulDefaut; - fi; - endfor; - % - vardef tata(text t)=%affichage quantitatif - l=0; - for p_=t: - if pair p_: - l:=l+1; - if Rotation: - label.bot(LATEX("\num{"&decimal(xpart(p_))&"}") rotated AngleRotation,A[l]); - else : - label.bot(LATEX("\num{"&decimal(xpart(p_))&"}"),A[l]); - fi; - if Reponses: - if DonneesSup: - label.top(LATEX("\num{"&decimal(ypart(p_))&"}"),P[l]); - else: - if Tiret: - trace (B[l]+(-1pt,0))--(B[l]+(1pt,0)); - label.lft(LATEX("\num{"&decimal(p_)&"}"),B[l]); - else: - dotlabel.lft(LATEX("\num{"&decimal(ypart(p_))&"}"),B[l]); - fi; - fi; - fi; - fi; - endfor; - enddef; - vardef titi(text t)=%affichage qualitatif - l:=0; - for p_=t: - if numeric p_: - if Reponses: - if DonneesSup: - label.top(LATEX("\num{"&decimal(p_)&"}"),P[l]); - else: - if Tiret: - trace (B[l]+(-1pt,0))--(B[l]+(1pt,0)); - label.lft(LATEX("\num{"&decimal(p_)&"}"),B[l]); - else: - dotlabel.lft(LATEX("\num{"&decimal(p_)&"}"),B[l]); - fi; - fi; - fi; - else: - l:=l+1; - if Rotation: - if AngleRotation<>0: - picture TEXTELABEL; - TEXTELABEL=image( - labeloffset:=labeloffset*2; - label.lft(LATEX(p_),A[l]); - labeloffset:=labeloffset/2; - ); - trace rotation(TEXTELABEL,A[l],AngleRotation); - else : - label.bot(LATEX(p_),A[l]); - fi; - fi; - fi; - endfor; - enddef; - if Qualitatif: tutu(#1); else: toto(#1); fi; - boolean Grille; - Grille:=\useKV[ClesStat]{Grille}; - Pasx:=\useKV[ClesStat]{Pasx}; - Pasy:=\useKV[ClesStat]{Pasy}; - if Grille: - drawoptions(withcolor 0.75white); - for k=0 step Pasx until ((maxx+1)): - trace (k*unitex,0)--(k*unitex,unitey*(maxy+2*Pasy)); - endfor; - for k=0 step Pasy until ((maxy+2*Pasy)): - trace (0,k*unitey)--(unitex*(maxx+1),k*unitey); - endfor; - drawoptions(); - fi; - if epaisseurbatons<>0: - for k=1 upto n: - fill polygone(A[k]-(epaisseurbatons*1pt,0),A[k]+(epaisseurbatons*1pt,0),P[k]+(epaisseurbatons*1pt,0),P[k]-(epaisseurbatons*1pt,0)) withcolor if unknown Col[k]: CoulDefaut else:Col[k] fi; - if AideLecture: - draw B[k]--P[k] dashed evenly; - fi; - endfor; - fi; - if LectureFine: - for k=0 step Pasy until ((maxy+1*Pasy)): - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - label.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - else: - dotlabel.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - fi; - endfor; - fi; - if Lecture: - for k=0 step Pasy until Pasy: - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - label.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - else: - dotlabel.lft(LATEX("\num{"&decimal(k)&"}"),(0,k*unitey)); - fi; - endfor; - fi; - drawarrow (0,0)--unitex*(maxx+1,0); - drawarrow (0,0)--unitey*(0,maxy+2*Pasy); - label.lrt(btex \useKV[ClesStat]{Donnee} etex,unitex*(maxx+1,0)); - label.urt(btex \useKV[ClesStat]{Effectif} etex,unitey*(0,maxy+2*Pasy)); - if Qualitatif: titi(#1); else:tata(#1); fi; - \end{mpost} - \fi -} - -\def\NewMPStatCirculaireCodeQ{% - Rayon:=\useKV[ClesStat]{Rayon}; - ecarthachures=\useKV[ClesStat]{EcartHachures}; - epaisseurhachures=\useKV[ClesStat]{EpaisseurHachures}; - boolean AffichageAngle,AffichageDonnee,Hachures,Inverse,Legende,LegendeVide,Retour,ACompleter; - AffichageAngle=\useKV[ClesStat]{AffichageAngle}; - AffichageDonnee=\useKV[ClesStat]{AffichageDonnee}; - Hachures=\useKV[ClesStat]{Hachures}; - Inverse=\useKV[ClesStat]{LectureInverse}; - Legende=\useKV[ClesStat]{Legende}; - LegendeVide=\useKV[ClesStat]{LegendeVide}; - Retour=false; - ACompleter=\useKV[ClesStat]{ACompleter}; - % - pair A[],O,B[],C[],D[]; - O=(0,0); - n:=0; - numeric total[],ang[]; - total[0]=0; - ang[0]:=0; - path cc; - cc=(fullcircle scaled (2*Rayon)); - % - vardef AfficheLegende(text t)= - picture ResultatLegende; - ResultatLegende=image( - for p_=t: - if string p_: - n:=n+1; - C[n]=A[n-1] rotatedabout(O,if Inverse:-1* fi(ang[n]-ang[n-1])/2); - draw 0.95[O,C[n]]--1.05[O,C[n]]; - C[n]:=1.05[O,C[n]]; - Test(n); - if ((xpart(C[n])>xpart(O)) or (xpart(C[n])=xpart(O))) and ((ypart(C[n])>ypart(O)) or (ypart(C[n])=ypart(O))): - D[n]=C[n]+(0.5cm,0); - draw C[n]--D[n]; - if Retour=false:label.urt(TEX(p_),D[n]);fi; - fi; - if (xpart(C[n])ypart(O)) or (ypart(C[n])=ypart(O))): - D[n]=C[n]-(0.5cm,0); - draw C[n]--D[n]; - if Retour=false:label.ulft(TEX(p_),D[n]);fi; - fi; - if (xpart(C[n])xpart(O)) or (xpart(C[n])=xpart(O))) and (ypart(C[n])xpart(O)) and ((ypart(C[n])>ypart(O)) or (ypart(C[n])=ypart(O))): - D[n]=C[n]+(0.5cm,0); - draw C[n]--D[n]; - if Retour=false:label.urt(LATEX(p_),D[n]);fi; - fi; - if (xpart(C[n])ypart(O)) or (ypart(C[n])=ypart(O))): - D[n]=C[n]-(0.5cm,0); - draw C[n]--D[n]; - if Retour=false:label.ulft(LATEX(p_),D[n]);fi; - fi; - if (xpart(C[n])xpart(O)) and (ypart(C[n])15: - if (n mod 2)=0: - marque_a:=20*0.75*Rayon/cm; - else: - marque_a:=20*0.5*Rayon/cm; - fi; - if Hachures: - if Inverse=false: - undraw - Codeangle(A[n-1],O,A[n],0,(((TEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - else: - undraw - Codeangle(A[n],O,A[n-1],0,(((TEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - fi; - fill cercles(w shifted(marque_ang*unitvector(w-O)),3mm) withcolor - blanc; - fi; - if Inverse=false: - draw - Codeangle(A[n-1],O,A[n],0,(((TEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - else: - draw - Codeangle(A[n],O,A[n-1],0,(((TEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - fi; - fi; - elseif AffichageDonnee: - if round(p_*(#2/total[N]))>15: - if (n mod 2)=0: - marque_a:=20*0.75*Rayon/cm; - else: - marque_a:=20*0.5*Rayon/cm; - fi; - if Hachures: - if Inverse=false: - undraw - Codeangle(A[n-1],O,A[n],0,TEX(""&decimal(p_)&"")); - else: - undraw - Codeangle(A[n],O,A[n-1],0,(((TEX(""&decimal(p_)&""))))); - fi; - fill cercles(w shifted(marque_ang*unitvector(w-O)),3mm) withcolor - blanc; - fi; - if Inverse=false: - draw - Codeangle(A[n-1],O,A[n],0,(((TEX(""&decimal(p_)&""))))); - else: - draw - Codeangle(A[n],O,A[n-1],0,(((TEX(""&decimal(p_)&""))))); - fi; - fi; - fi; - % - fi; - endfor; - if #2=360: - draw cc if Hachures: withpen pencircle scaled2 fi; - else: - draw (subpath(0,length cc/2) of cc)--cycle if Hachures: withpen pencircle scaled2 fi;; - fi; - n:=0; - enddef; - vardef Test(expr nb)= - Retour:=false; - op:=0; - for l_=#4: - if l_=nb: - op:=op+1; - fi; - endfor; - if op>0: - Retour:=true; - fi; - enddef; - Figure(-10u,-10u,10u,10u); - toto(#1); - if Legende: - n:=0; - draw AfficheLegende(#1); - fi; - \end{mplibcode} - \else - \begin{mpost}[mpsettings={\NewMPStatCirculaireCodeQ}] - pair A[],O,B[],C[],D[]; - O=(0,0); - n:=0; - numeric total[],ang[]; - total[0]=0; - ang[0]:=0; - path cc; - cc=(fullcircle scaled (2*Rayon)); - % on r\'ecup\`ere les couleurs - color Col[]; - n:=0; - for p_=#3: - n:=n+1; - Col[n]=p_; - endfor; - if Inverse=false: - A[0]=point(0) of cc; - else: - A[0]=point(180) of cc; - fi; - vardef toto(text t)= - n:=0; - for p_=t: - if numeric p_: - n:=n+1; - total[n]:=total[n-1]+p_; - fi; - endfor; - N=n; - for k=1 upto N: - ang[k]=(#2/total[N])*total[k]; - endfor; - n:=0; - for p_=t: - if numeric p_: - n:=n+1; - if Inverse=false: - A[n]=A[n-1] rotatedabout(O,p_*(#2/total[N])); - else: - A[n]=A[n-1] rotatedabout(O,-p_*(#2/total[N])); - fi; - %hachure ou pas ? - if Hachures=false: - fill (O--if Inverse=false:arccercle(A[n-1],A[n],O) else: - arccercle(A[n],A[n-1],O) fi--cycle) withcolor if unknown Col[n]: white else:Col[n] fi; - else: - draw - Hachurage((O--if Inverse=false:arccercle(A[n-1],A[n],O) - else:arccercle(A[n],A[n-1],O) fi--cycle),p_*(#2/total[N]) if - (n mod 2)=0: +90 else: -90 fi,ecarthachures,if (n mod 2)=0 : 0 else: 1 fi) - withpen pencircle scaled epaisseurhachures if AffichageAngle: withcolor 0.5white fi; - fi; - if ACompleter=false: - draw A[n-1]--O--A[n] if Hachures: withpen pencircle scaled2 fi; - fi; - % Affichage des angles associ\'es - if AffichageAngle: - if round(p_*(#2/total[N]))>15: - if (n mod 2)=0: - marque_a:=20*0.75*Rayon/cm; - else: - marque_a:=20*0.5*Rayon/cm; - fi; - if Hachures: - if Inverse=false: - undraw - Codeangle(A[n-1],O,A[n],0,(((LATEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - else: - undraw - Codeangle(A[n],O,A[n-1],0,(((LATEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - fi; - fill cercles(w shifted(marque_ang*unitvector(w-O)),3mm) withcolor - blanc; - fi; - if Inverse=false: - draw - Codeangle(A[n-1],O,A[n],0,(((LATEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - else: - draw - Codeangle(A[n],O,A[n-1],0,(((LATEX("\ang{"&decimal(round(p_*(#2/total[N])))&"}"))))); - fi; - fi; - elseif AffichageDonnee: - if round(p_*(#2/total[N]))>15: - if (n mod 2)=0: - marque_a:=20*0.75*Rayon/cm; - else: - marque_a:=20*0.5*Rayon/cm; - fi; - if Hachures: - if Inverse=false: - undraw - Codeangle(A[n-1],O,A[n],0,LATEX(""&decimal(p_)&"")); - else: - undraw - Codeangle(A[n],O,A[n-1],0,(((LATEX(""&decimal(p_)&""))))); - fi; - fill cercles(w shifted(marque_ang*unitvector(w-O)),3mm) withcolor - blanc; - fi; - if Inverse=false: - draw - Codeangle(A[n-1],O,A[n],0,(((LATEX(""&decimal(p_)&""))))); - else: - draw - Codeangle(A[n],O,A[n-1],0,(((LATEX(""&decimal(p_)&""))))); - fi; - fi; - fi; - % - fi; - endfor; - if #2=360: - draw cc if Hachures: withpen pencircle scaled2 fi; - else: - draw (subpath(0,length cc/2) of cc)--cycle if Hachures: withpen pencircle scaled2 fi;; - fi; - enddef; - vardef Test(expr nb)= - Retour:=false; - op:=0; - for l_=#4: - if l_=nb: - op:=op+1; - fi; - endfor; - if op>0: - Retour:=true; - fi; - enddef; - Figure(-10u,-10u,10u,10u); - toto(#1); - if Legende: - n:=0; - draw AfficheLegendePDF(#1); - fi; - \end{mpost} - \fi -}% - -%Pour la m\'ediane. -\DTLgnewdb{mtdb}% -\dtlexpandnewvalue% -\newcount\nbdonnees% -% -\def\AjoutListEEaa#1\nil{\addtotok\tabtoksEEa{#1,}}% -\def\AjoutListEEab#1\nil{\addtotok\tabtoksEEa{#1/}}% -\def\AjoutListEEb#1\nil{\addtotok\tabtoksEEb{#1,}}% -\def\AjoutListEEx#1\nil{\addtotok\tabtoksEE{#1,}}% -\def\AjoutListEEy#1\nil{\addtotok\tabtoksEE{#1/}}% - -\DTLgnewdb{mtdbEE}% -\DTLgnewdb{mtdbEEqual}% -% - -% Pour les classes -% Pour construire l'histogramme -\def\UpdatetoksHisto#1/#2/#3\nil{\addtotok\toklisteelmtsclasse{#1,#2,}\addtotok\toklistedonhisto{#3,}} -\def\UpdatetoksECC#1\nil{\addtotok\toklistedonhisto{#1,}} - -\NewDocumentCommand\buildgraphhisto{}{% - \newtoks\toklisteelmtsclasse% - \newtoks\toklistedonhisto% - \newtoks\toklistecouleur% - \newtoks\toklistelegende% - \ifboolKV[ClesStat]{LegendeVide}{% - \xdef\foo{\useKV[ClesStat]{LegendesVides}}% - \readlist*\ListeLegendesAEffacer{\foo}% - }{\xdef\foo{-1}\readlist*\ListeLegendesAEffacer{\foo}% - }% - \foreachitem\compteur\in\ListeLegendesAEffacer{\expandafter\UpdateLegende\compteur\nil}% - \foreachitem\compteur\in\ListeDepart{\expandafter\UpdatetoksHisto\compteur\nil}% - \ifboolKV[ClesStat]{ECC}{% - \toklistedonhisto{}% - \xdef\PfCFooECC{\ListeDepart[1,3]}% - \xintFor* ##1 in{\xintSeq{2}{\ListeDepartlen}}\do{% - \xdef\PfCFooRetiens{0}% - \xintFor* ##2 in{\xintSeq{1}{##1}}\do{% - \xdef\PfCFooRetiens{\fpeval{\PfCFooRetiens+\ListeDepart[##2,3]}}% - }% - \xdef\PfCFooECC{\PfCFooECC,\PfCFooRetiens}% - }% - \readlist*\PfCListeECC{\PfCFooECC}% - \foreachitem\compteur\in\PfCListeECC{\expandafter\UpdatetoksECC\compteur\nil}% - }{}% - \xdef\PfCEcartClasse{\fpeval{\ListeDepart[1,2]-\ListeDepart[1,1]}}% - \foreachitem\compteur\in\ListeDepart{% - \xdef\PfCEcartClasse{\PfCEcartClasse,\fpeval{\ListeDepart[\compteurcnt,2]-\ListeDepart[\compteurcnt,1]}} - }% - \xintifboolexpr{\fpeval{min(\PfCEcartClasse)}==\fpeval{max(\PfCEcartClasse)}}{}{\setKV[ClesStat]{MemeAmpli=false}} - % Pour les couleurs - \xdef\ListeAvantCouleurs{\useKV[ClesStat]{ListeCouleurs}}% - \readlist*\ListeCouleur{\ListeAvantCouleurs}% - \foreachitem\couleur\in\ListeCouleur{\expandafter\UpdateCoul\couleur\nil}% - % - \MPBuildHisto{\the\toklisteelmtsclasse}{\the\toklistedonhisto}{\the\toklistecouleur}{\the\toklistelegende}% -} - -%% calcul des fr\'equences -\newcommand\CalculFrequenceClasses[1]{% - \fpeval{round(\ListeDepart[#1,3]*100/\EffectifTotal,\useKV[ClesStat]{PrecisionF})} -} - -\newcommand\CalculECCClasses[1]{% - \xdef\TotalECCC{0}% - \CompteurECCC=1% - \CompteurECCCTotal=\numexpr#1+1% - \whiledo{\CompteurECCC < \CompteurECCCTotal}{% - \xdef\TotalECCC{\fpeval{\TotalECCC+\ListeDepart[\the\CompteurECCC,3]}}% - \CompteurECCC=\numexpr\CompteurECCC+1% - }% - \num{\TotalECCC}% -} - -\NewDocumentCommand\buildtabclasses{}{% - \setcounter{PfCCompteLignes}{0}% - \renewcommand{\arraystretch}{\useKV[ClesStat]{Stretch}}% - \begin{NiceTabular}{l*{\ListeDepartlen}{c}}%[hvlines] - \CodeBefore% - \rowcolor{\useKV[ClesStat]{CouleurTab}}{1}% - \columncolor{\useKV[ClesStat]{CouleurTab}}{1}% - \Body - \useKV[ClesStat]{Donnee}\xintFor* ##1 in{\xintSeq{1}{\ListeDepartlen}}\do{% - &$\num{\ListeDepart[##1,1]}\leqslant\dots<\num{\ListeDepart[##1,2]}$ - }\\ - \useKV[ClesStat]{Effectif}\xintFor* ##1 in{\xintSeq{1}{\ListeDepartlen}}\do{% - &\ifboolKV[ClesStat]{EffVide}{}{\num{\ListeDepart[##1,3]}}% - }\\ - \ifboolKV[ClesStat]{Frequence}{\stepcounter{PfCCompteLignes}Fr\'equence (\%)\xintFor* ##1 in {\xintSeq {1}{\ListeDepartlen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{FreqVide}{}{\num{\CalculFrequenceClasses{##1}}}}}\\ - }{}% - \ifboolKV[ClesStat]{ECC}{\stepcounter{PfCCompteLignes}E.C.C.\xintFor* ##1 in {\xintSeq {1}{\ListeDepartlen}}\do{&\ifboolKV[ClesStat]{TableauVide}{}{\ifboolKV[ClesStat]{ECCVide}{}{\CalculECCClasses{##1}}}}\\}{}% - \CodeAfter% - % On crée la liste des colonnes à vider - \xintifboolexpr{\useKV[ClesStat]{ColVide}>0}{% - \xdef\FooStat{\useKV[ClesStat]{ColVide}}% - \setsepchar{,}% - \readlist*\ListeColonnesAVider{\FooStat}% - \foreachitem\compteur\in\ListeColonnesAVider{% - \tikz\fill[white] (row-2-|col-\fpeval{\compteur+1}) rectangle (last-|col-\fpeval{\compteur+2});% - }% - }{}% -% % On crée la liste des cases à vider - \ifboolKV[ClesStat]{CaseVide}{% - \xdef\FooStatCases{\useKV[ClesStat]{CasesVides}}% - \setsepchar[*]{,*/}% - \readlist*\ListeCasesAVider{\FooStatCases}% - \foreachitem\compteur\in\ListeCasesAVider{% - \tikz\fill[white] (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+1}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+1}) rectangle (row-\fpeval{\ListeCasesAVider[\compteurcnt,1]+2}-|col-\fpeval{\ListeCasesAVider[\compteurcnt,2]+2});% - }% - }{}% -% % On retrace le tableau -% % Les colonnes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\ListeDepartlen+2}}}\do{% - \tikz\draw (row-1-|col-##1) -- (last-|col-##1);% - }% -% % Les lignes - \xintFor* ##1 in {\xintSeq{1}{\fpeval{\thePfCCompteLignes+3}}}\do{% - \tikz\draw (row-##1-|col-1) -- (row-##1-|last);% - }% - \end{NiceTabular} -}% - -\NewDocumentCommand\MPBuildHisto{mmmm}{% - \ifluatex - \mplibforcehmode - \begin{mplibcode} - maxx:=-infinity; - minx:=infinity; - maxy:=-infinity; - miny:=0; - unitex:=\useKV[ClesStat]{Unitex}*cm; - unitey:=\useKV[ClesStat]{Unitey}*cm; - Pasx:=\useKV[ClesStat]{Pasx}; - Pasy:=\useKV[ClesStat]{Pasy}; - UniteAire=\useKV[ClesStat]{UniteAire}; - Ecarthachures=\useKV[ClesStat]{EcartHachures}; - Epaisseurhachures=\useKV[ClesStat]{EpaisseurHachures}; - boolean MemeAmpli,Hachures,Lecture,LectureFine,AideLecture,DonneesSup,Tiret,LegendeVide,Retour,Mediane,ECC; - ECC=\useKV[ClesStat]{ECC}; - Mediane=\useKV[ClesStat]{Mediane}; - MemeAmpli=\useKV[ClesStat]{MemeAmpli}; - Hachures:=\useKV[ClesStat]{Hachures}; - % - Lecture:=\useKV[ClesStat]{Lecture}; - LectureFine:=\useKV[ClesStat]{LectureFine}; - Tiret=\useKV[ClesStat]{Tiret}; - AideLecture:=\useKV[ClesStat]{AideLecture}; - DonneesSup:=\useKV[ClesStat]{DonneesSup}; - LegendeVide=\useKV[ClesStat]{LegendeVide}; - Retour=false; - % Test affichage - vardef Test(expr nb)= - Retour:=false; - op:=0; - for l_=#4: - if l_=nb: - op:=op+1; - fi; - endfor; - if op>0: - Retour:=true; - fi; - enddef; - %Affichage ou pas des légendes - vardef AfficheLegende(text t)= - l=0; - for p_=t: - l:=l+1; - if DonneesSup: - Test(l); - if Retour=false: - label.top(TEX("\num{"&decimal(Y[l])&"}"),(unitex*(Depart+(0.5*(X[2*l]+X[2*l-2])-X[1])/Pasx),unitey*Z[l])); - fi; - fi; - endfor; - enddef; - % on r\'ecup\`ere les couleurs - Depart=\useKV[ClesStat]{DepartHisto}; - color Col[],CoulDefaut; - CoulDefaut=white; - n:=0; - for p_=#3: - n:=n+1; - Col[n]=p_; - endfor; - % - numeric X[]; - numeric ecartabs[]; - vardef RecupValeursAbscisses(text t)= - p:=0; - for p_=t: - p:=p+1; - X[p]:=p_; - if X[p]maxx: - maxx:=X[p]; - fi; - endfor; - X[0]=X[1]; - TotalAbscisses=p; - enddef; - numeric Y[],Z[]; - numeric EffectifTotal[]; - numeric EffectifTotalA[]; - vardef RecupValeursDonnees(text t)= - p:=0; - EffectifTotal[0]:=0; - EffectifTotalA[0]:=0; - for p_=t: - p:=p+1; - EffectifTotal[p]:=p_; - EffectifTotalA[p]:=EffectifTotalA[p-1]+p_; - Y[p]:=p_; - Z[p]=(Y[p]/(UniteAire*(X[2*p]-X[2*p-1])/Pasx)); - R[p]=ceiling(Z[p]); - if R[p]>maxy: - maxy:=R[p]; - fi; - endfor; - NbDonnees:=p; - enddef; - %On affiche la médiane dans le cas des ECC - vardef AfficheMedianeECC(text t)= - YMed:=Z[NbDonnees]/2; - DemiDonnees:=EffectifTotal[NbDonnees]/2; - p:=0; - forever: - p:=p+1; - exitif EffectifTotal[p]>DemiDonnees; - endfor; - path MedHor,MedLineaire,MedVer; - MedLineaire=(unitex*(Depart+(X[2*p-2]-X[1]/Pasx)),unitey*Z[p-1])--(unitex*(Depart+(X[2*p]-X[1])/Pasx),unitey*Z[p]); - MedHor=((0,unitey*YMed)--(unitex*((maxx-minx)/Pasx+2),unitey*YMed)); - MedVer=(xpart(MedLineaire intersectionpoint MedHor),0)--(MedLineaire intersectionpoint MedHor); - draw MedLineaire; - draw MedHor; - draw MedVer; - enddef; - % On affiche la médiane dans le cas non ECC - vardef AfficheMediane(text t)= - DemiDonnees:=EffectifTotalA[NbDonnees]/2; - p:=0; - forever: - p:=p+1; - exitif EffectifTotalA[p]>DemiDonnees; - endfor; - path MedVer; - numeric CoefLineaire,pMed; - pMed=p; - CoefLineaire=(DemiDonnees-EffectifTotalA[p-1])/Y[p]; - MedVer=(unitex*(Depart+(X[2*p-2]-X[1])/Pasx+CoefLineaire*(X[2*p]-X[2*p-2])/Pasx),0)--(unitex*(Depart+(X[2*p-2]-X[1])/Pasx+CoefLineaire*(X[2*p]-X[2*p-2])/Pasx),unitey*Z[p]); - draw MedVer dashed evenly; - enddef; - % On commence le tracé : on récupère les informations - RecupValeursAbscisses(#1); - RecupValeursDonnees(#2); - % on définit une grille - vardef Grille= - if MemeAmpli: - Ajout:=1; - else: - Ajout:=3; - fi; - drawoptions(withcolor 0.7white); - for k=0 upto ((maxx-minx)/Pasx+2): - trace (unitex*k,0)--(unitex*k,(maxy+Ajout)*unitey);%withcolor red; - endfor; - for k=0 upto (maxy+Ajout): - trace (0,k*unitey)--(unitex*((maxx-minx)/Pasx+2),k*unitey);% withcolor blue; - endfor; - drawoptions(); - enddef; - % Fin Grille - % On trace les rectangles - vardef AfficheRectangles= - if Hachures: - Grille; - for k=2 step 2 until TotalAbscisses: - draw hachurage(polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)),60,0.2,0); - draw chemin(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - else: - for k=2 step 2 until TotalAbscisses: - fill polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)) withcolor if unknown Col[k/2]: CoulDefaut else: Col[k/2] fi; - endfor; - Grille; - for k=2 step 2 until TotalAbscisses: - draw chemin(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - fi; - enddef; - % Affichage final - if ECC: - AfficheRectangles; - if Mediane: - AfficheMedianeECC(#2); - fi; - else: - if Mediane: - AfficheMediane(#2); - if Hachures: - Grille; - %Partie gauche - for k=2 step 2 until (2*pMed-2): - draw hachurage(polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)),60,0.2,0); - draw chemin(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - draw hachurage(polygone(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx),unitey*Z[pMed])),60,0.2,0); - draw polygone(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx),unitey*Z[pMed])); - % Partie droite - for k=2*pMed+2 step 2 until TotalAbscisses: - draw hachurage(polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)),120,0.2,1); - draw chemin(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - draw hachurage(polygone(unitex*(Depart+(X[2*pMed]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed]-X[1])/Pasx),unitey*Z[pMed])),120,0.2,1); - draw polygone(unitex*(Depart+(X[2*pMed]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed]-X[1])/Pasx),unitey*Z[pMed])); - else: - %Partie gauche - for k=2 step 2 until (2*pMed-2): - fill polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)) withcolor if unknown Col[1]: CoulDefaut else: Col[1] fi; - endfor; - fill polygone(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx),unitey*Z[pMed])) withcolor if unknown Col[1]: CoulDefaut else: Col[1] fi ; - % Partie droite - for k=2*pMed+2 step 2 until TotalAbscisses: - fill polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)) withcolor if unknown Col[2]: CoulDefaut else: Col[2] fi; - endfor; - fill polygone(unitex*(Depart+(X[2*pMed]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed]-X[1])/Pasx),unitey*Z[pMed])) withcolor if unknown Col[2]: CoulDefaut else: Col[2] fi; - Grille; - %Partie Gauche - for k=2 step 2 until (2*pMed-2): - trace polygone(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - trace polygone(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed-2]-X[1])/Pasx),unitey*Z[pMed]));%(Y[pMed]/(UniteAire*(X[2*pMed-2]-X[2*pMed-3])/Pasx)))); - for k=2*pMed+2 step 2 until TotalAbscisses: - draw chemin(unitex*(Depart+(X[k]-X[1])/Pasx,0),(unitex*(Depart+(X[k]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),unitey*(Y[k/2]/(UniteAire*(X[k]-X[k-1])/Pasx))),(unitex*(Depart+(X[k-1]-X[1])/Pasx),0)); - endfor; - draw polygone(unitex*(Depart+(X[2*pMed]-X[1])/Pasx,0),point(0) of MedVer,point(1) of MedVer,(unitex*(Depart+(X[2*pMed]-X[1])/Pasx),unitey*Z[pMed])); - fi; - draw MedVer withpen pencircle scaled 2; - else: - AfficheRectangles; - fi; - fi; - %Affichage ou pas des axes, de la médiane - if MemeAmpli: - drawarrow (0,0)--unitey*(0,maxy+1); - EcartAmpli:=(X[2]-X[1])/Pasx; - if AideLecture: - for k=2 step 2 until TotalAbscisses: - trace ((unitex*(Depart+(X[k]-X[1])/Pasx),unitey*Z[k/2]))--(unitey*(0,Z[k/2])) dashed evenly; - endfor; - fi; - if LectureFine: - for k=0 upto ((maxy+1)): - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - label.lft(TEX("\num{"&decimal(k*UniteAire*EcartAmpli)&"}"),(0,k*unitey)); - else: - dotlabel.lft(TEX("\num{"&decimal(k*UniteAire*EcartAmpli)&"}"),(0,k*unitey)); - fi; - endfor; - fi; - if Lecture: - for k=0 upto 1: - if Tiret: - trace (1pt,k*unitey)--(-1pt,k*unitey); - label.lft(TEX("\num{"&decimal(k*UniteAire*EcartAmpli)&"}"),(0,k*unitey)); - else: - dotlabel.lft(TEX("\num{"&decimal(k*UniteAire*EcartAmpli)&"}"),(0,k*unitey)); - fi; - endfor; - fi; - else:%Pas même ampli : on n'affiche pas l'axe vertical - trace hachurage(polygone((unitex,unitey*(maxy+2)),(unitex*2,unitey*(maxy+2)),(unitex*2,unitey*(maxy+1)),(unitex,unitey*(maxy+1))),60,0.2,0); - trace polygone((unitex,unitey*(maxy+2)),(unitex*2,unitey*(maxy+2)),(unitex*2,unitey*(maxy+1)),(unitex,unitey*(maxy+1))); - label.rt(TEX(decimal(UniteAire)&"~\useKV[ClesStat]{Effectif}"),(unitex*2,unitey*(maxy+1.5))); -% if Mediane: -% AfficheMediane(#2); -% fi; - fi; - % On trace l'axe des abscisses - drawarrow (0,0)--unitex*((maxx-minx)/Pasx+2,0); - %On labelise l'axe des abscisses - dotlabel.bot(TEX("\num{"&decimal(X[1])&"}"),unitex*(Depart,0)); - for k=2 step 2 until TotalAbscisses: - dotlabel.bot(TEX("\num{"&decimal(X[k])&"}"),unitex*(Depart+(X[k]-X[1])/Pasx,0)); - endfor; - label.rt(TEX("\useKV[ClesStat]{Donnee}"),(unitex*((maxx-minx)/Pasx+2),0)); - %On affiche les données sup ou pas. - AfficheLegende(#2); - \end{mplibcode} - \fi -} -% - -\newcommand\Stat[2][]{% - \useKVdefault[ClesStat]% - \setKV[ClesStat]{#1}% - \ifboolKV[ClesStat]{UneMediane}{\renewcommand{\PfCArticleMediane}{une}}{\renewcommand{\PfCArticleMediane}{la}}% - \setsepchar[*]{,*/}% - \readlist*\ListeAvantUtilisation{#2}% - \xintifboolexpr{\listlen\ListeAvantUtilisation[1]==3}{\setKV[ClesStat]{Classes}}{}% - \ifboolKV[ClesStat]{Classes}{% - \setsepchar[*]{,*/}% - \readlist*\ListeDepart{#2}% - \xdef\EffectifTotal{0}% - \xintFor* ##1 in{\xintSeq{1}{\ListeDepartlen}}\do{% - \xdef\EffectifTotal{\fpeval{\EffectifTotal+\ListeDepart[##1,3]}}% - }% - \ifboolKV[ClesStat]{Histogramme}{% - \buildgraphhisto% - }{% - \ifboolKV[ClesStat]{Tableau}{% - \buildtabclasses% - }{}% - }% - }{% - \setsepchar{,}% - \ifboolKV[ClesStat]{Representation}{% - \setKV[TraceG]{Xmin=0,Ymin=0}% - \setKV[TraceG]{#1}% - \readlist*\ListePointsPlaces{#2}% - \newtoks\toklistepoint% - \foreachitem\compteur\in\ListePointsPlaces{\expandafter\Updatetoks\compteur\nil}% - \MPPlacePoint[#1]{\the\toklistepoint}% - }{% - \ifboolKV[ClesStat]{Liste}{% - \setsepchar{,}\ignoreemptyitems% - \readlist*\Liste{#2}% - \xdef\foo{}% - \setsepchar[*]{,*/}\ignoreemptyitems% - \xintFor* ##1 in {\xintSeq {1}{\Listelen}}\do{% - \xdef\foo{\foo 1/\Liste[##1],}% - }% - \readlist*\ListeComplete{\foo}% - \setKV[ClesStat]{Qualitatif}% - }{% - \ifboolKV[ClesStat]{Sondage}{% - \setsepchar{,}\ignoreemptyitems% - \readlist*\Liste{#2}% - % "liste vide" - \newtoks\tabtoksEEa% - \tabtoksEEa{}% - % - % "liste vide" - \newtoks\tabtoksEEb% - \tabtoksEEb{}% - % - \readlist*\ListeSansDoublonsEE{999}% %% Pour ne pas avoir une liste vide - % - \newcount\cmptEE% - \newcount\PasNumEE% %% Permettra de savoir si ce sondage est qualitatif ou quantitatif - \PasNumEE=0\relax% - \DTLcleardb{mtdbEE}% - % on range les resultats du sondage par ordre croissant. - \foreachitem\x\in\Liste{% - \DTLnewrow{mtdbEE}% - \DTLnewdbentry{mtdbEE}{Numeric}{\x}% - }% - \dtlsort{Numeric}{mtdbEE}{\dtlicompare}% - \DTLforeach{mtdbEE}{\nba=Numeric}{% - \IfDecimal{\nba}{}{\PasNumEE=\numexpr\PasNumEE+1\relax}% - \cmptEE=0\relax% - \foreachitem\nbb\in\ListeSansDoublonsEE{% - \ifthenelse{\equal{\nba}{\nbb}}{\cmptEE=\numexpr\cmptEE+1\relax}{}% - }% - \ifthenelse{\equal{\the\cmptEE}{0}}{% - \expandafter\AjoutListEEb\nba\nil% - \xdef\listEEa{\the\tabtoksEEb}% - \ignoreemptyitems% - \setsepchar{,}% - \readlist*\ListeSansDoublonsEE\listEEa% %%% Enl\`eve tous les \'elements - %%% identiques de Liste - }{}% - }% - \foreachitem\nba\in\ListeSansDoublonsEE{% - \cmptEE=0\relax% - \DTLforeach{mtdbEE}{\nbb=Numeric}{% - \ifthenelse{\equal{\nba}{\nbb}}{\cmptEE=\numexpr\cmptEE+1\relax}{}% - }% - \expandafter\AjoutListEEab\nba\nil% - \expandafter\AjoutListEEaa\the\cmptEE\nil% %%% Compte tous les \'elements - %%% identiques de Liste - }% - \xdef\listEEb{\the\tabtoksEEa} - \ignoreemptyitems% - \setsepchar[*]{,*/}% - \readlist*\ListeComplete\listEEb% - % - \ifthenelse{\equal{\the\PasNumEE}{0}}{\setKV[ClesStat]{Quantitatif}}{\setKV[ClesStat]{Qualitatif}}% - }{% - \ifboolKV[ClesStat]{Qualitatif}{% - % % on lit la liste \'ecrite sous la forme valeur/effectif - \setsepchar[*]{,*/}\ignoreemptyitems% - \readlist*\ListeInitiale{#2}% - % "liste vide" - \newtoks\tabtoksEE% - \tabtoksEE{}% - \DTLcleardb{mtdbEEqual}% - \foreachitem\x\in\ListeInitiale{% - \DTLnewrow{mtdbEEqual}% - \itemtomacro\ListeInitiale[\xcnt,1]\x% - \DTLnewdbentry{mtdbEEqual}{Val}{\x}% - \itemtomacro\ListeInitiale[\xcnt,2]\y% - \DTLnewdbentry{mtdbEEqual}{Eff}{\y}% - }% - \DTLforeach{mtdbEEqual}{\Val=Val,\Eff=Eff}{% - \expandafter\AjoutListEEy\Val\nil% - \expandafter\AjoutListEEx\Eff\nil% - }% - \xdef\listEE{\the\tabtoksEE} - \ignoreemptyitems% - \setsepchar[*]{,*/}% - \readlist*\ListeComplete\listEE% - }{% Dans le qualitatif, on trie d'abord les valeurs. - \setsepchar[*]{,*/}\ignoreemptyitems% - \readlist*\ListeInitiale{#2}% - % "liste vide" - \newtoks\tabtoksEE% - \tabtoksEE{}% - \DTLcleardb{mtdbEEqual}% - \foreachitem\x\in\ListeInitiale{% - \DTLnewrow{mtdbEEqual}% - \itemtomacro\ListeInitiale[\xcnt,1]\x% - \DTLnewdbentry{mtdbEEqual}{Val}{\x}% - \itemtomacro\ListeInitiale[\xcnt,2]\y% - \DTLnewdbentry{mtdbEEqual}{Eff}{\y}% - }% - \dtlsort{Val}{mtdbEEqual}{\dtlicompare}% - \DTLforeach{mtdbEEqual}{\Val=Val,\Eff=Eff}{% - \expandafter\AjoutListEEy\Val\nil% - \expandafter\AjoutListEEx\Eff\nil% - }% - \xdef\listEE{\the\tabtoksEE} - \ignoreemptyitems% - \setsepchar[*]{,*/}% - \readlist*\ListeComplete\listEE% - }}}% - % on cr\'ee la base de donn\'ees des valeurs dans le cas qualitatif - \DTLcleardb{mtdb}% - % on les trie pour la m\'ediane dans le cas qualitatif % Touhami / Texnique.fr - \foreachitem\x\in\ListeComplete{% - \DTLnewrow{mtdb}% - \itemtomacro\ListeComplete[\xcnt,2]\y% - \DTLnewdbentry{mtdb}{Numeric}{\y}% - }% - \dtlsort{Numeric}{mtdb}{\dtlicompare}% - % % on r\'einitialise les valeurs des crit\`eres de position et de - % dispersion - \renewcommand\NbDonnees{}% - \renewcommand\SommeDonnees{}% - \renewcommand\EffectifTotal{}% - \renewcommand\Moyenne{}% - \renewcommand\Etendue{}% - \renewcommand\Mediane{}% - \renewcommand\DonneeMax{0}% - \renewcommand\EffectifMax{0}% - \renewcommand\DonneeMin{999999999}% - \ifboolKV[ClesStat]{Qualitatif}{%D\'ebut qualitatif - % Calculs - % %% celui de la somme des donn\'ees - \foreachitem\don\in\ListeComplete{\xdef\SommeDonnees{\fpeval{\SommeDonnees+\ListeComplete[\doncnt,2]}}}% - % %% celui de l'effectif total - \ifboolKV[ClesStat]{EffectifTotal}{% - \ifboolKV[ClesStat]{Liste}{L'effectif total de la s\'erie est - \num{\ListeCompletelen}.\par}{% - \foreachitem\don\in\ListeComplete{\xdef\EffectifTotal{\fpeval{\EffectifTotal+\ListeComplete[\doncnt,2]}}}% - L'effectif total de la s\'erie est : \[\ListeComplete[1,2]\xintFor* ##1 in - {\xintSeq {2}{\ListeCompletelen}}\do{% - +\ListeComplete[##1,2]}=\num{\EffectifTotal}\]} - }{}% - \ifboolKV[ClesStat]{Liste}{\xdef\EffectifTotal{\ListeCompletelen}}{\xdef\EffectifTotal{\SommeDonnees}}% - % %% celui de la moyenne - \xdef\Moyenne{\fpeval{\SommeDonnees/\ListeCompletelen}}% - \ifboolKV[ClesStat]{Moyenne}{% - \ifboolKV[ClesStat]{Liste}{% - La somme des donn\'ees de la s\'erie est :% - \xintifboolexpr{\ListeCompletelen<\useKV[ClesStat]{Coupure}}{% - \[ - \num{\ListeComplete[1,2]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\xintFor* ##1 in {\xintSeq {2}{\ListeCompletelen}}\do{% - +\num{\ListeComplete[##1,2]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - }=\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}% - \]}{% - \[ - \num{\ListeComplete[1,2]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\xintFor* ##1 in {\xintSeq {2}{3}}\do{% - +\num{\ListeComplete[##1,2]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}}+\dots\xintFor* ##1 in {\xintSeq {\ListeCompletelen-1}{\ListeCompletelen}}\do{% - +\num{\ListeComplete[##1,2]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - }=\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}% - \]% - }% - \ifboolKV[ClesStat]{SET}{}{Le nombre de donn\'ees de la s\'erie est \num{\ListeCompletelen}.\\}% - Donc la moyenne de la s\'erie est \'egale \`a :% - \[\frac{\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}}{\num{\ListeCompletelen}}%\IfInteger{\fpeval{round(\fpeval{\SommeDonnees/\ListeCompletelen},\useKV[ClesStat]{Precision})}}{=}{\approx} - \ifboolKV[ClesStat]{ValeurExacte}{}{% - \opdiv*{\SommeDonnees}{\ListeCompletelen}{resultatmoy}{restemoy}% - \opround{resultatmoy}{\useKV[ClesStat]{Precision}}{resultatmoy1}% - \opcmp{resultatmoy}{resultatmoy1}\ifopeq=\else\approx\fi% - \num{\fpeval{round(\SommeDonnees/\ListeCompletelen,\useKV[ClesStat]{Precision})}}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}% - }% - \]% - }{Pas de moyenne possible pour une s\'erie de donn\'ees \`a caract\`ere qualitatif.}}{}% - % % %% celui de l'\'etendue - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintifboolexpr{\ListeComplete[##1,2]>\DonneeMax}{% - \xdef\DonneeMax{\ListeComplete[##1,2]}% - }{}% - \xintifboolexpr{\ListeComplete[##1,2]<\DonneeMin}{% - \xdef\DonneeMin{\ListeComplete[##1,2]}% - }{}% - }% - \xdef\EffectifMax{\DonneeMax}% - \xdef\Etendue{\fpeval{\DonneeMax-\DonneeMin}}% - \ifboolKV[ClesStat]{Etendue}{% - \ifboolKV[ClesStat]{Liste}{% - L'\'etendue de la s\'erie est \'egale \`a $\num{\DonneeMax}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}-\num{\DonneeMin}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}=\num{\Etendue}$\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}% - }{Pas d'\'etendue possible pour une s\'erie de donn\'ees \`a caract\`ere qualitatif.}}{}% - % celui de la mediane - %%% Recuperation de la mediane %%%%%%%%%%%%%%%%%%%%% - \newcount\Recapmed% - \newcount\Recapmeda% - \ifodd\number\ListeCompletelen%odd impair - \Recapmed=\fpeval{(\ListeCompletelen+1)/2}\relax% - \else% - \Recapmed=\fpeval{\ListeCompletelen/2}\relax% - \Recapmeda=\numexpr\Recapmed+1\relax% - \fi% - \newcount\Recapk% - \Recapk=0% - \DTLforeach{mtdb}{\numeroDonnee=Numeric}{\Recapk=\numexpr\Recapk+1\relax% - \ifnum\Recapk=\Recapmed% - \ifodd\number\ListeCompletelen% - \xdef\Mediane{\numeroDonnee}% - \else% - \xdef\Mediane{\numeroDonnee}% - \fi% - \fi% - \ifnum\Recapk=\Recapmeda% - \xdef\Mediane{\fpeval{(\Mediane+\numeroDonnee)/2}}% - \fi% - }% - %%% - \ifboolKV[ClesStat]{Mediane}{% - \ifboolKV[ClesStat]{Liste}{% - On range les donn\'ees par ordre croissant :% - \nbdonnees=0% - \xintifboolexpr{\ListeCompletelen<\useKV[ClesStat]{Coupure}}{% - \[\DTLforeach{mtdb}{\numeroDonnee=Numeric}{\num{\numeroDonnee}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\DTLiflastrow{.}{;}}\]% - }{% - \medskip% - \begin{center} - \begin{minipage}{0.9\linewidth} - \DTLforeach*{mtdb}{\numeroDonnee=Numeric}{\num{\numeroDonnee}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\DTLiflastrow{.}{; - }\nbdonnees=\fpeval{\nbdonnees+1}\modulo{\nbdonnees}{\useKV[ClesStat]{Coupure}}\xintifboolexpr{\remainder==0}{\\}{}} - \end{minipage} - \end{center}% - \medskip% - }% - \newcount\med% - \newcount\meda% - \ifodd\number\ListeCompletelen%odd impair - \med=\fpeval{(\ListeCompletelen+1)/2}\relax% - L'effectif total de la s\'erie est \num{\ListeCompletelen}. Or, $\num{\ListeCompletelen}=\num{\fpeval{\med-1}}+1+\num{\fpeval{\med-1}}$.\\ - \else% pair - \med=\fpeval{\ListeCompletelen/2}\relax% - \meda=\numexpr\med+1\relax% - L'effectif total de la s\'erie est \num{\ListeCompletelen}. Or, $\num{\ListeCompletelen}=\num{\the\med}+\num{\the\med}$.\\ - \fi% - \newcount\k% - \k=0% - \DTLforeach{mtdb}{\numeroDonnee=Numeric}{\k=\numexpr\k+1\relax% - \ifnum\k=\med %La m\'ediane vaut \numeroDonnee\fi - \ifodd\number\ListeCompletelen% - La m\'ediane de la s\'erie est la \the\med\ieme{} donn\'ee.\\Donc la m\'ediane de la s\'erie est \num{\numeroDonnee}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}% - \xdef\Mediane{\numeroDonnee}% - \else% - La \the\med\ieme{} donn\'ee est \num{\numeroDonnee}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}. }{. }\xdef\Mediane{\numeroDonnee}% - \fi% - \fi% - \ifnum\k=\meda - La \the\meda\ieme{} donn\'ee est \num{\numeroDonnee}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}\\Donc \PfCArticleMediane{} m\'ediane de la s\'erie est \xdef\Mediane{\fpeval{(\Mediane+\numeroDonnee)/2}}$\ifboolKV[ClesStat]{DetailsMediane}{\dfrac{\num{\Mediane}+\num{\numeroDonnee}}{2}=}{}\num{\Mediane}$\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}% - \fi% - }% - %%%%%%% - }{Pas de m\'ediane possible pour une s\'erie de donn\'ees \`a caract\`ere qualitatif.}}{} - %%% Quartile un - \newcount\PfCQuartileUn% - \modulo{\ListeCompletelen}{4}\relax% - \ifnum\remainder=0% - \PfCQuartileUn=\fpeval{\ListeCompletelen/4}% - \else% - \PfCQuartileUn=\fpeval{ceil(\ListeCompletelen/4)}% - \fi% - \newcount\PfCQunk% - \PfCQunk=0% - \DTLforeach{mtdb}{\numeroDonnee=Numeric}{\PfCQunk=\numexpr\PfCQunk+1\relax% - \ifnum\PfCQunk=\PfCQuartileUn% - \xdef\QuartileUn{\numeroDonnee}% - \fi% - }% - %%% Quartile trois - \newcount\PfCQuartileTrois% - \modulo{\ListeCompletelen}{4}\relax% - \ifnum\remainder=0% - \PfCQuartileTrois=\fpeval{3*\ListeCompletelen/4}% - \else% - \PfCQuartileTrois=\fpeval{ceil(3*\ListeCompletelen/4)}% - \fi% - \newcount\PfCQtroisk% - \PfCQtroisk=0% - \DTLforeach{mtdb}{\numeroDonnee=Numeric}{\PfCQtroisk=\numexpr\PfCQtroisk+1\relax% - \ifnum\PfCQtroisk=\PfCQuartileTrois%La m\'ediane vaut \numeroDonnee\fi - \xdef\QuartileTrois{\numeroDonnee}% - \fi% - }% - % Construction du tableau - \ifboolKV[ClesStat]{Tableau}{% - \ifboolKV[ClesStat]{Liste}{Pas de tableau possible avec la cl\'e Liste.\\Utilisez plut\^ot la cl\'e Sondage si vous voulez un tableau avec cette liste.}{\BuildtabStat}}{}% - % Construction du graphique - \ifboolKV[ClesStat]{Graphique}{% - \ifboolKV[ClesStat]{Liste}{Pas de graphique possible avec la cl\'e Liste.\\Utilisez plut\^ot la cl\'e Sondage si vous voulez un graphique avec cette liste.}{% - \ifboolKV[ClesStat]{Barre}{% - \buildgraphbarhor% - }{% - \ifboolKV[ClesStat]{Angle}{% - \buildgraphcq{360}% - }{% - \ifboolKV[ClesStat]{SemiAngle}{% - \buildgraphcq{180}% - }{% - \buildgraphq[#1]% - }% - }% - }% - }% - }{}% - }{%%%%%%%%%%%%%%%%%%%%%D\'ebut quantitatif - % % on effectue les calculs - % %% celui de la somme des donn\'ees - \foreachitem\don\in\ListeComplete{\xdef\SommeDonnees{\fpeval{\SommeDonnees+\ListeComplete[\doncnt,1]*\ListeComplete[\doncnt,2]}}}% - % %% celui de l'effectif total - \foreachitem\don\in\ListeComplete{\xdef\EffectifTotal{\fpeval{\EffectifTotal+\ListeComplete[\doncnt,2]}}}% - % %% celui de l'\'etendue - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintifboolexpr{\ListeComplete[##1,1]>\DonneeMax}{% - \xdef\DonneeMax{\ListeComplete[##1,1]}% - }{}% - \xintifboolexpr{\ListeComplete[##1,1]<\DonneeMin}{% - \xdef\DonneeMin{\ListeComplete[##1,1]}% - }{}% - }% - % \xdef\EffectifMax{\DonneeMax}% - \xdef\Etendue{\fpeval{\DonneeMax-\DonneeMin}}%% - % %% celui de la moyenne - \xdef\Moyenne{\fpeval{\SommeDonnees/\EffectifTotal}}% - \ifboolKV[ClesStat]{EffectifTotal}{% - L'effectif total de la s\'erie est : \[\ListeComplete[1,2]\xintFor* ##1 in - {\xintSeq {2}{\ListeCompletelen}}\do{% - +\ListeComplete[##1,2]}=\num{\EffectifTotal}\] - }{}% - \ifboolKV[ClesStat]{Moyenne}{% - La somme des donn\'ees de la s\'erie est :% - \xintifboolexpr{\ListeCompletelen<\useKV[ClesStat]{Coupure}}{% - \[ - \ifnum\ListeComplete[1,2]=1\else\num{\ListeComplete[1,2]}\times\fi\num{\ListeComplete[1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\xintFor* ##1 in {\xintSeq {2}{\ListeCompletelen}}\do{% - +\ifnum\ListeComplete[##1,2]=1\else\num{\ListeComplete[##1,2]}\times\fi\num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - }=\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - \] - }{% - \[ - \ifnum\ListeComplete[1,2]=1\else\num{\ListeComplete[1,2]}\times\fi\num{\ListeComplete[1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}\xintFor* ##1 in {\xintSeq {2}{2}}\do{% - +\ifnum\ListeComplete[##1,2]=1\else\num{\ListeComplete[##1,2]}\times\fi\num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - }+\dots\xintFor* ##1 in {\xintSeq {\ListeCompletelen-1}{\ListeCompletelen}}\do{% - +\ifnum\ListeComplete[##1,2]=1\else\num{\ListeComplete[##1,2]}\times\fi\num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - }=\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{} - \] - }% - \ifboolKV[ClesStat]{SET}{}{L'effectif total de la s\'erie est :% - \ifboolKV[ClesStat]{Liste}{ \num{\EffectifTotal}\\}{% - \[\num{\ListeComplete[1,2]}\xintFor* ##1 in {\xintSeq {2}{\ListeCompletelen}}\do{% - +\num{\ListeComplete[##1,2]} - }=\num{\EffectifTotal} - \]% - }% - }% - Donc la moyenne de la s\'erie est \'egale \`a :% - \[\frac{\num{\SommeDonnees}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}}{\num{\EffectifTotal}}% - \ifboolKV[ClesStat]{ValeurExacte}{}{% - \opdiv*{\SommeDonnees}{\EffectifTotal}{resultatmoy}{restemoy}% - \opround{resultatmoy}{\useKV[ClesStat]{Precision}}{resultatmoy1}% - \opcmp{resultatmoy}{resultatmoy1}\ifopeq=\else\approx\fi% - \num{\fpeval{round(\SommeDonnees/\EffectifTotal,\useKV[ClesStat]{Precision})}}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}% - }% - \]% - }{}% - % % Affichage des r\'eponses. - % %% pour l'\'etendue - \ifboolKV[ClesStat]{Etendue}{L'\'etendue de la s\'erie est \'egale \`a $\num{\ListeComplete[\ListeCompletelen,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}-\num{\ListeComplete[1,1]}\ifboolKV[ClesStat]{Concret}{~\text{\useKV[ClesStat]{Unite}}}{}=\num{\Etendue}$\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}}{}% - % pour la m\'ediane - %%% Recuperation Mediane - \newcount\Recupmed% - \newcount\Recupmeda% - \ifodd\number\EffectifTotal%odd impair - \Recupmed=\fpeval{(\EffectifTotal+1)/2}\relax% - \else% pair - \Recupmed=\fpeval{\EffectifTotal/2}\relax% - \Recupmeda=\numexpr\Recupmed+1\relax% - \fi% - \newcount\Recupk% - \Recupk=0% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintFor* ##2 in {\xintSeq {1}{\ListeComplete[##1,2]}}\do{% - \Recupk=\numexpr\Recupk+1\relax% - \ifnum\Recupk=\Recupmed% - \ifodd\number\EffectifTotal% - \xdef\Mediane{\ListeComplete[##1,1]}% - \else% - \xdef\Mediane{\ListeComplete[##1,1]}% - \fi% - \fi% - \ifnum\Recupk=\Recupmeda% - \xdef\Mediane{\fpeval{(\Mediane+\ListeComplete[##1,1])/2}}% - \fi% - }% - }% - %%% - \ifboolKV[ClesStat]{Mediane}{% - - \newcount\med% - \newcount\meda% - \ifodd\number\EffectifTotal%odd impair - \med=\fpeval{(\EffectifTotal+1)/2}\relax% - L'effectif total de la s\'erie est \num{\EffectifTotal}. Or, $\num{\EffectifTotal}=\num{\fpeval{\med-1}}+1+\num{\fpeval{\med-1}}$. % - \else% pair - \med=\fpeval{\EffectifTotal/2}\relax% - \meda=\numexpr\med+1\relax% - L'effectif total de la s\'erie est \num{\EffectifTotal}. Or, $\num{\EffectifTotal}=\num{\fpeval{\med}}+\num{\fpeval{\med}}$. % - \fi% - \newcount\k% - \k=0% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintFor* ##2 in {\xintSeq {1}{\ListeComplete[##1,2]}}\do{% - \k=\numexpr\k+1\relax% - \ifnum\k=\med% - \ifodd\number\EffectifTotal% - La m\'ediane de la s\'erie est la \the\med\ieme{} donn\'ee. Donc la m\'ediane de la s\'erie est \num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}% - \else% - La \the\med\ieme{} donn\'ee est \num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}. }{. }\xdef\Mediane{\ListeComplete[##1,1]}% - \fi% - \fi% - \ifnum\k=\meda% - La \the\meda\ieme{} donn\'ee est \num{\ListeComplete[##1,1]}\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}\\Donc \PfCArticleMediane{} m\'ediane de la s\'erie est $\ifboolKV[ClesStat]{DetailsMediane}{\dfrac{\num{\Mediane}+\num{\ListeComplete[##1,1]}}2=}{}\xdef\Mediane{\fpeval{(\Mediane+\ListeComplete[##1,1])/2}}\num{\Mediane}$\ifboolKV[ClesStat]{Concret}{~\useKV[ClesStat]{Unite}.}{.}% - \fi% - }% - }% - }{}% - %%% Quartile un - \newcount\PfCQuartileUn% - \modulo{\EffectifTotal}{4}\relax% - \ifnum\remainder=0% - \PfCQuartileUn=\fpeval{\EffectifTotal/4}% - \else% - \PfCQuartileUn=\fpeval{ceil(\EffectifTotal/4)}% - \fi% - \newcount\PfCQunk% - \PfCQunk=0% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintFor* ##2 in {\xintSeq {1}{\ListeComplete[##1,2]}}\do{% - \PfCQunk=\numexpr\PfCQunk+1\relax% - \ifnum\PfCQunk=\PfCQuartileUn% - \xdef\QuartileUn{\ListeComplete[##1,1]}% - \fi% - }% - }% - %%% Quartile trois - \newcount\PfCQuartileTrois% - \modulo{\EffectifTotal}{4}\relax% - \ifnum\remainder=0% - \PfCQuartileTrois=\fpeval{3*\EffectifTotal/4}% - \else% - \PfCQuartileTrois=\fpeval{ceil(3*\EffectifTotal/4)}% - \fi% - \newcount\PfCQtroisk% - \PfCQtroisk=0% - \xintFor* ##1 in {\xintSeq {1}{\ListeCompletelen}}\do{% - \xintFor* ##2 in {\xintSeq {1}{\ListeComplete[##1,2]}}\do{% - \PfCQtroisk=\numexpr\PfCQtroisk+1\relax% - \ifnum\PfCQtroisk=\PfCQuartileTrois% - \xdef\QuartileTrois{\ListeComplete[##1,1]}% - \fi% - }% - }% - % Construction de tableau - \ifboolKV[ClesStat]{Tableau}{\BuildtabStat}{}% - % Construction du graphique ?? - \ifboolKV[ClesStat]{Graphique}{% - \ifboolKV[ClesStat]{Angle}{% - \buildgraphcq{360}% - }{% - \ifboolKV[ClesStat]{SemiAngle}{% - \buildgraphcq{180}% - }{% - \buildgraph[#1]% - }% - }% - }{}% - }% - }% - }% -}% \ No newline at end of file diff --git a/macros/latex/contrib/profcollege/latex/PfCTableauxUnites.tex b/macros/latex/contrib/profcollege/latex/PfCTableauxUnites.tex index 23f8e431fe..7cc556894d 100644 --- a/macros/latex/contrib/profcollege/latex/PfCTableauxUnites.tex +++ b/macros/latex/contrib/profcollege/latex/PfCTableauxUnites.tex @@ -959,7 +959,7 @@ % \xintFor* ##1 in {\xintSeq{1}{\useKV[ClesTableaux]{NbLignes}}}\do{% \ifboolKV[ClesTableaux]{Milliards}{% - &&&&&&}{}% + &&&&&&}{}% \ifboolKV[ClesTableaux]{Millions}{% &&&}{}% &&&&&&&&&&\\}% diff --git a/macros/latex/contrib/profcollege/latex/PfCThales.tex b/macros/latex/contrib/profcollege/latex/PfCThales.tex index 7e1583c23e..1b8ed8a5ba 100644 --- a/macros/latex/contrib/profcollege/latex/PfCThales.tex +++ b/macros/latex/contrib/profcollege/latex/PfCThales.tex @@ -678,7 +678,7 @@ \xdef\ResultatThalesz{\fpeval{round(#8*#3/#6,\useKV[ClesThales]{Precision})}}% }{}}{} }}{} - }% + }% %% \StrMid{\the\zzz}{1}{1}[\cmza]% \StrMid{\the\yyy}{1}{1}[\cmya]% @@ -903,7 +903,7 @@ \edef\Nomz{#5}\valz=#8\Valz=#3\denoz=#6% }{}}{} }}{} - }% + }% %% \StrMid{\the\zzz}{1}{1}[\cmza]% \StrMid{\the\yyy}{1}{1}[\cmya]% diff --git a/macros/latex/contrib/profcollege/latex/ProfCollege.sty b/macros/latex/contrib/profcollege/latex/ProfCollege.sty index 1a1ef8f18d..de1b3c5da0 100644 --- a/macros/latex/contrib/profcollege/latex/ProfCollege.sty +++ b/macros/latex/contrib/profcollege/latex/ProfCollege.sty @@ -2,9 +2,9 @@ % licence : Released under the LaTeX Project Public License v1.3c % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e}% -\def\filedate{2023/08/02}% +\def\filedate{2023/08/15}% \let\PfCfiledate\filedate% -\def\fileversion{0.99-z-q}% +\def\fileversion{0.99-z-r}% \let\PfCfileversion\fileversion% \ProvidesPackage{ProfCollege}[\filedate\space v\fileversion\space Aide pour utiliser LaTeX au college]% @@ -61,6 +61,7 @@ \ifluatex% \RequirePackage{luacas}% \RequirePackage{luamplib}% +\mplibtextextlabel{enable}%à partir de la v2.25 de mplibcode \everymplib{input PfCSvgnames; input PfCConstantes; input PfCGeometrie; input PfCAfficheur; beginfig(1);}% \everyendmplib{endfig;}% \else% @@ -135,15 +136,15 @@ %% Colorer en mode mathématique. \color ne gère pas les espaces propres au mode mathématique. Donc besoin de changer % https://tex.stackexchange.com/questions/21598/how-to-color-math-symbols -\makeatletter% -\def\mathcolor#1#{\@mathcolor{#1}}% -\def\@mathcolor#1#2#3{% - \protect\leavevmode% - \begingroup% - \color#1{#2}#3% - \endgroup% -}% -\makeatother% +%\makeatletter% +%\def\mathcolor#1#{\@mathcolor{#1}}% +%\def\@mathcolor#1#2#3{% +% \protect\leavevmode% +% \begingroup% +% \color#1{#2}#3% +% \endgroup% +%}% +%\makeatother% % Pb ProfCollege<->Chinois soulev\'e par Denis % Solution by egreg :) @@ -572,6 +573,7 @@ }%\emoticon }%\raisebox }% +\input{PfCMulArt} \input{PfCGrimuku} \input{PfCHorloge} \input{PfCCible} diff --git a/macros/latex/contrib/profcollege/metapost/PfCGeometrie.mp b/macros/latex/contrib/profcollege/metapost/PfCGeometrie.mp index 52869904af..95c18757f1 100644 --- a/macros/latex/contrib/profcollege/metapost/PfCGeometrie.mp +++ b/macros/latex/contrib/profcollege/metapost/PfCGeometrie.mp @@ -1315,19 +1315,19 @@ enddef; %Outils numeric echelleequerre; -echelleequerre=2; -vardef equerre(expr dte,drte,perpe,sens)= +echelleequerre=0.5; +vardef equerreold(expr dte,drte,perpe,sens)= save picequerre; picture picequerre; pair ww,t[]; path intermede; pair perpen,ptt,pttt; perpen:=projection(perpe,dte,drte); - %if sens=1 : - ptt:=longueurequerre*(drte-dte) rotated 90 shifted perpen; - %else : -% ptt:=longueurequerre*(drte-dte) rotated (-90) shifted perpen; - %fi; + if sens=1 : + ptt:=echelleequerre*(drte-dte) rotated 90 shifted perpen; + else : + ptt:=echelleequerre*(drte-dte) rotated (-90) shifted perpen; + fi; ww=unitvector(drte-dte); intermede=ptt--(10[ptt,(perpen rotatedabout(ptt,if sens=1: 30 else:-30 fi))]); pttt=intermede intersectionpoint (10[dte,drte]--10[drte,dte]); @@ -1338,6 +1338,78 @@ vardef equerre(expr dte,drte,perpe,sens)= picequerre enddef; +vardef equerre(text gradua)(expr ea,eb,ec)= + save picequerre; + picture picequerre; + pair EA,EB,EC,ED,EE,EF,EI; + EA:=ea; + EB:=eb; + EC:=ec; + ED=projection(EC,EA,EB); + EE-ED=EB-EA; + EF-ED=echelleequerre*abs(EE-ED)*(unitvector(EE-ED) rotated 90); + EI=CentreCercleI(EE,ED,EF); + picequerre=image( + fill (EE--ED--EF--cycle) withcolor 0.7white; + draw codeperp(EE,ED,EF,5); + draw EE--ED--EF--cycle; + fill ((((EE--ED--EF--cycle) shifted ((0,0)-EI)) scaled 0.5) shifted EI) withcolor white; + trace (((EE--ED--EF--cycle) shifted ((0,0)-EI)) scaled 0.5) shifted EI; + % if abs(EE-ED)>abs(EF-ED): +% for k=10 upto 50:% +% trace (ED+k*1mm*unitvector(EE-ED))--(ED+k*1mm*unitvector(EE-ED)+1mm*unitvector(EF-ED)); +% endfor; +% else: +% for k=10 upto 50:% +% trace (ED+k*1mm*unitvector(EF-ED))--(ED+k*1mm*unitvector(EF-ED)+1mm*unitvector(EE-ED)); +% endfor; +% fi; + ); + picequerre +enddef; + + +% ww; +% pair Intermede; +% pair perpen,I,ptt;%,pttt +% perpen:=projection(perpe,dte,drte); +% Intermede:=echelleequerre[dte,drte]; +% ptt-perpen=abs(Intermede-perpen)*0.5*unitvector(perpe-perpen); +% I:=CentreCercleI(perpen,ptt,Intermede); +% ww=unitvector(drte-dte); +% intermede=ptt--(10[ptt,(perpen rotatedabout(ptt,if sens=1: 30 else:-30 fi))]); +% pttt=intermede intersectionpoint (10[dte,drte]--10[drte,dte]); +% picequerre=image( +% +% draw codeperp(ptt,perpen,Intermede,5); +% k=0; +% pair Equa,Equb,Equc; +% Equa:=perpen; +% boolean Stop; +% Stop=false; +% forever: +% label.top(TEX(decimal(angle(drte-perpen)-angle(perpe-perpen))),A); +% for k=1 upto 100: +% k:=k+1; +% Equa:=perpen+k*1mm*unitvector(drte-perpen); +% dotlabel("",Equa); +% Equb:=Equa+1mm*unitvector(drte-perpen); +% Equc:=rotation(Equb,Equa,-angle((drte-perpen)-(perpe-perpen))); +% drawoptions(withcolor red); +% dotlabel("",Equc); +% drawoptions(); +% if abs(Equa-perpen)>9mm:% +% trace Equa--Equc; +% fi; + % if abs(drte-Equa)<1cm: +% Stop:=false; +% fi; +% exitif: Stop; +% endfor; +% ); +% picequerre +%enddef; + vardef regle(expr depart,arrivee,rr)= save picregle; picture picregle,grad[],gradu[],final; @@ -1425,16 +1497,167 @@ vardef crayon(expr depart,arrive,ptplace,nbechelle)= piccray enddef; -boolean Simple; -Simple=false; +boolean Simpleold; +Simpleold=false; + +vardef Rapporteur(text t)(expr rapcentre,pointsupport,rr,pasgrad)= + picture rap; + path cc,cd,cent; + pair grada[],gradb[],rapv,rapw,rapt,rapww,rapvv,rap[],rapp[],RA[],RB[]; + boolean Simple,Double,Aleph,Tiret; + Simple=true; + Double=false; + Aleph=false; + Tiret=false; + for p_=t: + if p_="Double": + Double:=true; + Simple:=false; + elseif p_="Aleph": + Aleph:=true; + Tiret:=true; + elseif p_="Tiret": + Tiret:=true; + fi; + endfor; + % Le cercle + RA1=0.3[rapcentre,pointsupport]; + RA2=0.375[rapcentre,pointsupport]; + RA3=0.45[rapcentre,pointsupport]; + RB1=rotation(RA1,rapcentre,rr*45); + RB2=rotation(RA2,rapcentre,rr*45); + RB3=rotation(RA3,rapcentre,rr*45); + cc=cercles(rapcentre,0.75*abs(rapcentre-pointsupport)); + rapt=cc intersectionpoint (rapcentre--pointsupport); + rapw=rapt-2*unitvector(pointsupport-rapcentre);rapv=symetrie(rapw,rapt); + rapww=rapt-5*unitvector(pointsupport-rapcentre);rapvv=symetrie(rapww,rapt); + grada0=(rapww-rapcentre) shifted rapcentre; + gradb0=(rapvv-rapcentre) shifted rapcentre; + path cerc; + cerc=subpath((angle(pointsupport-rapcentre)*(length cc))/360,((length cc)/2)+(angle(pointsupport-rapcentre)*(length cc))/360) of cc; + % On trace les graduations + for i=0 upto 71 : + for j=1 upto 4 : + grada[5*i+j]=(rapw-rapcentre) rotated (rr*(5*i+j)) shifted rapcentre; + gradb[5*i+j]=(rapv-rapcentre) rotated (rr*(5*i+j)) shifted rapcentre; + endfor; + grada[5*(i+1)]=(rapww-rapcentre) rotated (rr*(5*(i+1))) shifted rapcentre; + gradb[5*(i+1)]=(rapvv-rapcentre) rotated (rr*(5*(i+1))) shifted rapcentre; + endfor; + if Aleph: + fincompteur:=72; + else: + fincompteur:=36; + fi; + if (pasgrad=10) or (pasgrad=5) or (pasgrad=1): + for i=0 upto (fincompteur-1)/2: + draw grada[10*i]--gradb[10*i] withpen pencircle scaled 1.15; + endfor; + fi; + if (pasgrad=5) or (pasgrad=1): + for i=1 step 2 until (fincompteur-1): +% draw grada[5*i]--gradb[5*i]; + draw 0.9[grada[5*i],gradb[5*i]]--0.9[gradb[5*i],grada[5*i]]; + endfor; + fi; + if pasgrad=1: + for i=0 upto (fincompteur-1) : + for j=1 upto 4 : + draw grada[5*i+j]--gradb[5*i+j]; + endfor; + endfor; + fi; + % On affiche les graduations + picture nomb[],nombre[]; + if Aleph: + for j=0 upto (fincompteur/2): + nombre[10*j]=image( + label.top(TEX("\fontsize{4}{4}\selectfont"&decimal(10*j)&""),gradb[10*j]); + currentpicture:=currentpicture rotatedabout(gradb[10*j],angle(gradb[10*j]-rapcentre)-90); + ); + endfor; + else: + if rr=1: + for j=0 upto 18: + nombre[10*j]=image( + label.bot(TEX("\fontsize{4}{4}\selectfont"&decimal(10*j)&""),grada[10*j]); + currentpicture:=currentpicture rotatedabout(grada[10*j],angle(grada[10*j]-rapcentre)-90); + ); + endfor + for j=0 upto 18: + nombre[10*j+1]=image( + label.top(TEX("\fontsize{4}{4}\selectfont"&decimal(180-10*j)&""),gradb[10*j]); + currentpicture:=currentpicture rotatedabout(gradb[10*j],angle(gradb[10*j]-rapcentre)-90); + ); + endfor + else: + for j=0 upto 18: + nombre[10*j]=image( + label.bot(TEX("\fontsize{4}{4}\selectfont"&decimal(180-10*j)&""),grada[10*j]); + currentpicture:=currentpicture rotatedabout(grada[10*j],angle(grada[10*j]-rapcentre)-90); + ); + endfor + for j=18 downto 0: + nombre[10*j+1]=image( + label.top(TEX("\fontsize{4}{4}\selectfont"&decimal(10*j)&""),gradb[10*j]); + currentpicture:=currentpicture rotatedabout(gradb[10*j],angle(gradb[10*j]-rapcentre)-90); + ); + endfor + fi; + fi; + picture $; + $=image( + if Aleph: + for i=0 upto (fincompteur/2)-1 : + draw nombre[10*i]; + endfor; + else: + for i=0 upto (fincompteur/2) : + draw nombre[10*i+1]; + if Simple=false: + draw nombre[10*i]; + fi; + endfor; + fi; + if Aleph: + draw cc; + draw grada[0]--grada[180]; + else: + if rr=-1: + draw cerc reflectedabout(pointsupport,rapcentre)--cycle; + else: + draw cerc--cycle; + fi; + fi; + cent=cercle(rapcentre,0.05*u); + if Tiret: + trace ((0.05[rapcentre,grada[0]])--(0.05[rapcentre,grada[180]])) withpen pencircle scaled 1.25; + trace rotation(((0.05[rapcentre,grada[0]])--(0.05[rapcentre,grada[180]])),rapcentre,90) withpen pencircle scaled 1.25; + else: + fill cent withcolor if unknown fillrap: 0.9white else: fillrap fi; + fi; + if Aleph=true: + if rr=1: + for k=1 upto 3: + drawarrow arccercle(RA[k],RB[k],rapcentre); + endfor; + else: + for k=1 upto 3: + drawarrow reverse(arccercle(RB[k],RA[k],rapcentre)); + endfor; + fi; + fi; + ); + $ + enddef; vardef rapporteur(expr centre,segment,rr)= save raps; picture raps; raps=image( - Simple:=true; + Simpleold:=true; trace rapporteurdouble(centre,segment,rr); - Simple:=false; + Simpleold:=false; ); raps enddef; @@ -1491,7 +1714,7 @@ vardef rapporteurdouble(expr centre,segment,rr)= rap=image( for i=0 upto 18 : draw nombre[10*i+1]; - if Simple=false: + if Simpleold=false: draw nombre[10*i]; fi; endfor; diff --git a/macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf b/macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf index f07591d735..07505355dc 100644 Binary files a/macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf and b/macros/latex/contrib/profmaquette/doc/profmaquette-doc.pdf differ diff --git a/macros/latex/contrib/profmaquette/doc/profmaquette-doc.tex b/macros/latex/contrib/profmaquette/doc/profmaquette-doc.tex index b8eddd64a9..119220d8f1 100644 --- a/macros/latex/contrib/profmaquette/doc/profmaquette-doc.tex +++ b/macros/latex/contrib/profmaquette/doc/profmaquette-doc.tex @@ -1,7 +1,7 @@ % with lualatex \documentclass[12pt,french]{article} -\usepackage[nonamssymb]{ProfCollege} -\usepackage{ProfMaquette} +\usepackage[nonamssymb]{ProfCollegeT} +\usepackage{ProfMaquetteT} \input{Christ7} \usepackage[warnings-off={mathtools-colon,mathtools-overbracket}]{unicode-math} \usepackage{fourier-otf} @@ -1055,7 +1055,7 @@ Cela engendre, si nécessaire, la création de fichier \lstinline!*.sol! pour le \clearpage \section*{Historique} \begin{description} -\item[\PfMfiledate{}--v \PfMfileversion] Adaptation du multicolonnage des corrections. +\item[\PfMfiledate{}--v \PfMfileversion] Amélioration de la gestion des parcours. \end{description} \end{document} %%% Local Variables: diff --git a/macros/latex/contrib/profmaquette/latex/ProfMaquette.sty b/macros/latex/contrib/profmaquette/latex/ProfMaquette.sty index 7bf0695b40..5467145dca 100644 --- a/macros/latex/contrib/profmaquette/latex/ProfMaquette.sty +++ b/macros/latex/contrib/profmaquette/latex/ProfMaquette.sty @@ -2,9 +2,9 @@ % licence : Released under the LaTeX Project Public License v1.3c % or later, see http://www.latex-project.org/lppl.txtf \NeedsTeXFormat{LaTeX2e}% -\def\filedate{2023/08/11}% +\def\filedate{2023/08/15}% \let\PfMfiledate\filedate% -\def\fileversion{0.25}% +\def\fileversion{0.35}% \let\PfMfileversion\fileversion% \ProvidesPackage{ProfMaquette}[\filedate\space v\fileversion\space Maquettage de documents]% @@ -562,11 +562,12 @@ \setKV[SchemaParcours]{#1}% \setlength{\PfMLargeurSchemaParcours}{\useKV[SchemaParcours]{Largeur}}% \colorlet{PfMCouleurSP}{\useKV[SchemaParcours]{Couleur}}% - \@ifundefined{Op@ParcoursTotalExo}{Recompilez pour obtenir le parcours.}% + \@ifundefined{Op@\Alph{PfMMaquette}-ParcoursTotalExo}{Recompilez pour obtenir le parcours.}% {% - \opexport{ParcoursTotalExo}{\ParcoursTotalExo}% + \opexport{\Alph{PfMMaquette}-ParcoursTotalExo}{\ParcoursTotalExo}% +% Total Exo : \ParcoursTotalExo \setsepchar{,}\ignoreemptyitems% - \readlist*\ListeExercicesPA{\csname Parcours#2\endcsname} + \readlist*\ListeExercicesPA{\csname \Alph{PfMMaquette}Parcours#2\endcsname} \reademptyitems% \xdef\PfMFooTestA{\ListeExercicesPA[1]}% \ifnum\ListeExercicesPAlen>1\relax% @@ -633,14 +634,14 @@ }% \NewDocumentCommand\RemplisParcours{m}{% - \ifcsname trajet#1\endcsname - \expandafter\xdef\csname trajet#1\endcsname{\csname trajet#1\endcsname,\thePfMExo}% + \ifcsname \Alph{PfMMaquette}trajet#1\endcsname + \expandafter\xdef\csname \Alph{PfMMaquette}trajet#1\endcsname{\csname \Alph{PfMMaquette}trajet#1\endcsname,\thePfMExo}% % Yes ! \else % No ! - \expandafter\xdef\csname trajet#1\endcsname{\thePfMExo}% + \expandafter\xdef\csname \Alph{PfMMaquette}trajet#1\endcsname{\thePfMExo}% \fi - \immediate\write\@auxout{\noexpand\expandafter\gdef\noexpand\csname Parcours#1\endcsname{\csname trajet#1\endcsname}}% + \immediate\write\@auxout{\noexpand\expandafter\gdef\noexpand\csname \Alph{PfMMaquette}Parcours#1\endcsname{\csname \Alph{PfMMaquette}trajet#1\endcsname}}% }% \def\exerciceParcoursPerso{% @@ -665,10 +666,11 @@ \refstepcounter{PfMSection}% \PfMChoixCorrection% \refstepcounter{PfMExo}% - \immediate\write\@auxout{\string\opcopy{\thePfMExo}{ParcoursTotalExo}}% + \immediate\write\@auxout{\string\opcopy{\thePfMExo}{\Alph{PfMMaquette}-ParcoursTotalExo}}% % Creation des parcours \ifboolKV[ClesExercices]{Parcours}{% - \setsepchar{,}% + % Remise à zéro de conteneurs des parcours + \setsepchar{,}% \xdef\PfMFooListeParcours{\useKV[ClesExercices]{Trajet}} \readlist*\ListeParcours{\PfMFooListeParcours}% \foreachitem\compteur\in\ListeParcours{% @@ -1623,10 +1625,10 @@ \ifboolKV[Boulot]{CorrigeFin}{% \AddToHook{env/Maquette/after}[Correction]{% \setKV[Boulot]{#1}% - \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% + \setlength{\columnseprule}{\useKV[Boulot]{Epaisseur}}% \TikzParcoursCor{#2} - \ifboolKV[Boulot]{CorrectionColonnes}{toto\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% - Ici titi \PfMAffichageCorrige% + \ifboolKV[Boulot]{CorrectionColonnes}{\begin{multicols}{\useKV[Boulot]{Colonnes}}}{}% + \PfMAffichageCorrige% \ifboolKV[Boulot]{CorrectionColonnes}{\end{multicols}}{}% }% }{}% diff --git a/macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf b/macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf index 5e909f2618..60338e42e3 100644 Binary files a/macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf and b/macros/latex/contrib/reledmac/doc-more/page-typesetting-columns.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf b/macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf index 7f1a3f2a21..ddf25cb1b1 100644 Binary files a/macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf and b/macros/latex/contrib/reledmac/examples/1-criticalendnotes.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf b/macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf index f4a5bb01cb..11dd132d39 100644 Binary files a/macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf and b/macros/latex/contrib/reledmac/examples/1-criticalnotes.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/1-sidenotes.pdf b/macros/latex/contrib/reledmac/examples/1-sidenotes.pdf index 987e032a3d..0447e70ff1 100644 Binary files a/macros/latex/contrib/reledmac/examples/1-sidenotes.pdf and b/macros/latex/contrib/reledmac/examples/1-sidenotes.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/1-tabular.pdf b/macros/latex/contrib/reledmac/examples/1-tabular.pdf index 85d0794e08..473b331ca4 100644 Binary files a/macros/latex/contrib/reledmac/examples/1-tabular.pdf and b/macros/latex/contrib/reledmac/examples/1-tabular.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf b/macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf index 4c42b3d749..33792294d3 100644 Binary files a/macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf and b/macros/latex/contrib/reledmac/examples/1-verses-doublenumbering.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/1-verses.pdf b/macros/latex/contrib/reledmac/examples/1-verses.pdf index 388cf73893..924b446177 100644 Binary files a/macros/latex/contrib/reledmac/examples/1-verses.pdf and b/macros/latex/contrib/reledmac/examples/1-verses.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-antilabe.pdf b/macros/latex/contrib/reledmac/examples/2-antilabe.pdf index 5388414b8f..402770d913 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-antilabe.pdf and b/macros/latex/contrib/reledmac/examples/2-antilabe.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf b/macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf index a4015e73f2..5954a2a351 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf and b/macros/latex/contrib/reledmac/examples/2-cross_referencing.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf b/macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf index da7f38b90f..9748d65ef8 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf and b/macros/latex/contrib/reledmac/examples/2-footnote_spacing.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-glossaries.pdf b/macros/latex/contrib/reledmac/examples/2-glossaries.pdf index c69e90fe7c..0b65e75e61 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-glossaries.pdf and b/macros/latex/contrib/reledmac/examples/2-glossaries.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-indexing.pdf b/macros/latex/contrib/reledmac/examples/2-indexing.pdf index c43f51792f..f4a3f666c6 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-indexing.pdf and b/macros/latex/contrib/reledmac/examples/2-indexing.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf b/macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf index dc32c431d4..b8edca611d 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf and b/macros/latex/contrib/reledmac/examples/2-lemma_disambigution.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf b/macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf index 8e019018a7..47faba3add 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf and b/macros/latex/contrib/reledmac/examples/2-line_numbers_in_header.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-linespacing.pdf b/macros/latex/contrib/reledmac/examples/2-linespacing.pdf index 0a2959a973..4229efb7d3 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-linespacing.pdf and b/macros/latex/contrib/reledmac/examples/2-linespacing.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf b/macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf index 68db151c62..d8b637f78e 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf and b/macros/latex/contrib/reledmac/examples/2-manuscript-apparatus.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-notes-width.pdf b/macros/latex/contrib/reledmac/examples/2-notes-width.pdf index b4fa1ad4ec..bea9f2fabe 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-notes-width.pdf and b/macros/latex/contrib/reledmac/examples/2-notes-width.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf b/macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf index a8a7e0d133..da6d64d0ad 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf and b/macros/latex/contrib/reledmac/examples/2-one_series_per_pstart.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-performances.pdf b/macros/latex/contrib/reledmac/examples/2-performances.pdf index 04dcd59a4b..2919633fe7 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-performances.pdf and b/macros/latex/contrib/reledmac/examples/2-performances.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf b/macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf index f73c0d2746..2f4ae19f60 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf and b/macros/latex/contrib/reledmac/examples/2-reledmac-right-to-left.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf b/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf index 5a0ac5cfd0..4cceacd00e 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf and b/macros/latex/contrib/reledmac/examples/2-subdivision-number-in-header.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf b/macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf index a5a33ef242..ae56460969 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf and b/macros/latex/contrib/reledmac/examples/2-titles_in_line_numbering_with_notes.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf b/macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf index bafc56551b..86ad69706f 100644 Binary files a/macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf and b/macros/latex/contrib/reledmac/examples/2-titles_not_in_line_numbering.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf index 3d2c7279cc..3674f61d90 100644 Binary files a/macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf and b/macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf index 6284f80796..9c59e861ac 100644 Binary files a/macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf and b/macros/latex/contrib/reledmac/examples/3-reledpar_mwe.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf index 608d2c1994..bdb75fa784 100644 Binary files a/macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf and b/macros/latex/contrib/reledmac/examples/3-reledpar_pages_different_languages_lualatex.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf index f5c722af26..d5c03f495b 100644 Binary files a/macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf and b/macros/latex/contrib/reledmac/examples/3-reledpar_same_page_number_in_both_side.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf index a2b226dedd..a63bb77d7f 100644 Binary files a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf and b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted-nomax.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf index acca2243d0..4357102511 100644 Binary files a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf and b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_advancedshifted.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf index 3844975323..a1492b7e89 100644 Binary files a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf and b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_default.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf index fe2d44821c..5d02c56e1a 100644 Binary files a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf and b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax-shifted.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf index 4b089e7d9e..ed296ca882 100644 Binary files a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf and b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nomax.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf index 884217598a..4729d30c66 100644 Binary files a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf and b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_nosync.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf index cf173f73a9..53ae862348 100644 Binary files a/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf and b/macros/latex/contrib/reledmac/examples/3-reledpar_sync_setting_shifted.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf index a0b156c7c5..233d271669 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column-continuous-numbering.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf index 0f3be6d960..ef4dfaf6fa 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_column_mix_with_not_column.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf index 93aa647613..692814022a 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_columns_alignment.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf index 32807ea89d..c9e12f6e0c 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_columns_titles_in_line_numbering_with_notes.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf index 0c4545c50f..19a20c4b69 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_inside-outside-columns.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf index 222b4e5363..9d7f56f3e9 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf index 2cf058f3fe..6fd0abd546 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_long_notes.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf index 3b8845b3b4..e0ef394cfc 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_notes_leftpage.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf index 91ce4b624e..acecb25046 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_paragraph_separator_between.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf index 4f4c9481f5..3c70dc6a17 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_pages_titles_in_line_numbering_with_notes.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf index 729345b91f..40265033d5 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_titles_not_in_line_numbering.pdf differ diff --git a/macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf b/macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf index 2b7f0ea220..92521b0f5e 100644 Binary files a/macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf and b/macros/latex/contrib/reledmac/examples/4-reledpar_verse_text_between.pdf differ diff --git a/macros/latex/contrib/reledmac/migration.pdf b/macros/latex/contrib/reledmac/migration.pdf index 84f43f9641..afc3bc1eb4 100644 Binary files a/macros/latex/contrib/reledmac/migration.pdf and b/macros/latex/contrib/reledmac/migration.pdf differ diff --git a/macros/latex/contrib/reledmac/reledmac.dtx b/macros/latex/contrib/reledmac/reledmac.dtx index 938d323c0f..111de50ddd 100644 --- a/macros/latex/contrib/reledmac/reledmac.dtx +++ b/macros/latex/contrib/reledmac/reledmac.dtx @@ -597,6 +597,7 @@ % \changes{v2.39.3}{2023/07/08}{Fix bug with \protect\cs{edlabel} after tabular environment (added by v2.39.2).} % \changes{v2.39.4}{2023/07/20}{Fix bug with hyperlink when using \protect\cs{footnoteXmark} and \protect\cs{footnoteXtext}.} % \changes{v2.39.5}{2023/07/21}{The fix in v2.39.4 did'nt work well in tabular environment.} +% \changes{v2.39.6}{2023/08/14}{Fix compatibility with memoir v3.8.} % Typeset scholarly editions with \LaTeX\thanks{This file (\dtxfilename) % has version number \fileversion, last revised \filedate.}} % @@ -4509,7 +4510,7 @@ % \begin{macrocode} %<*code> \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{reledmac}[2023/07/21 v2.39.5 typesetting critical editions]% +\ProvidesPackage{reledmac}[2023/08/15 v2.39.6 typesetting critical editions]% % \end{macrocode} % % \subsection{Package options} @@ -5165,6 +5166,13 @@ }% % \end{macrocode} % \end{macro} +% \begin{macro}{\led@error@fail@patch@mempnum} +% \begin{macrocode} +\newcommand{\led@error@fail@patch@mempnum}{% + \reledmac@error{Fail to patch \string\@mempnum\space command}{\@ehc}% +}% +% \end{macrocode} +% \end{macro} % \begin{macro}{\led@warn@edinde@outsidenumbering} % \begin{macrocode} \newcommand{\led@warn@edinde@outsidenumbering}{% @@ -16658,18 +16666,21 @@ \par@patch@thepage% }% -\ifl@dmemoir% +\ifboolexpr{% + bool {l@dmemoir}% + and test {\ifdef{\@mempnum}}%Only with memoir < 3.8 +}{% \apptocmd{\@mempnum}% {\par@patch@pagenumbering}% {}%% - {\led@error@fail@patch@@mempnum}% - -\else% + {\led@error@fail@patch@mempnum}% + }% + {% \apptocmd{\pagenumbering}% {\par@patch@pagenumbering}% {}% {\led@error@fail@patch@pagenumbering}% -\fi% + }% \AtBeginDocument{\par@patch@thepage}% % \end{macrocode} diff --git a/macros/latex/contrib/reledmac/reledmac.pdf b/macros/latex/contrib/reledmac/reledmac.pdf index 6352d4da46..4e8e834c1b 100644 Binary files a/macros/latex/contrib/reledmac/reledmac.pdf and b/macros/latex/contrib/reledmac/reledmac.pdf differ diff --git a/macros/latex/contrib/reledmac/reledpar.pdf b/macros/latex/contrib/reledmac/reledpar.pdf index ee5dd56dfc..437e917b6c 100644 Binary files a/macros/latex/contrib/reledmac/reledpar.pdf and b/macros/latex/contrib/reledmac/reledpar.pdf differ diff --git a/macros/latex/contrib/substitutefont/README b/macros/latex/contrib/substitutefont/README deleted file mode 100644 index 61c4a1416e..0000000000 --- a/macros/latex/contrib/substitutefont/README +++ /dev/null @@ -1,101 +0,0 @@ -substitutefont --------------- -Combine font families -********************* - -:Copyright: © 2010 Günter Milde -:Contributor: Special thanks to Ulrike Fischer who provided - the indirect definition with active ``\nfss@catcodes``. -:Licence: This work may be distributed and/or modified under the - conditions of the `LaTeX Project Public License`_, - either version 1.3 of this license or (at your option) - any later version. - -.. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt - -In traditional 8-bit LaTeX, fonts are restricted to 256 glyphs per file. -To support different languages and scripts, the New Font Selection Scheme -uses a set of TeX font encodings [encguide]_. - -Many Latin TeX fonts do not support Greek or Cyrillic, while many non-Latin -fonts are extensions of a Latin font family but use a different family name -due to license reasons or the creators preference. - -The `substitutefont` package facilitates the task to set up a font family as -substitute for another one in a specified `font encoding `_. - -:News: 2013-11-04 Documentation/Test fixes. - -:Source: ``_ - - The literate source was converted with PyLit_ to reStructuredText_ and - with Docutils_ to the HTML documentation ``__. - -Usage -===== - -The macro ``\substitutefont{}{}{}`` selects -the font family as replacement for in the font -encoding . The substitution must be defined before the first use -of the specified font encoding, preferably in the document preamble. -In contrast to the (deprecated) ``\substitutefontfamily`` macro provided by -Babel_, ``\substitutefont`` does not write auxiliary files. - -The ```` is one of the LaTeX font encodings [encguide]_, e.g., T1 -for Latin, T2A for Cyrillic(Russian), or LGR for Greek. - -For ```` and ````, use the «TeX names» of the font. -There are defined by a TeX font package's ``*.fd`` or ``*.sty`` file(s). -LaTeX stores the default family names for Roman, Sans-Serif, and Teletype -fonts in the ``\rmdefault``, ``\sfdefault``, and ``\ttdefault`` macros -respectively. - -Example: Set the font family to Palatino using the standard package -`mathpazo` for Latin and `GFS Didot`_ for Greek:: - - \usepackage[sc,slantedGreek]{mathpazo} - \usepackage{substitutefont} - \substitutefont{LGR}{\rmdefault}{udidot} - -For details on LaTeX font selection, see [encguide]_ and [fntguide]_. - -Tests/Examples -============== - -* Simple test with Latin fonts: - ``__, ``__ -* Palatino with Greek from `GFS Didot`_: - ``__, ``__ -* Times/Helvetica/Courier (newtx_) with `GFS Artemisia`_, `GFS - Neohellenic`_, and teletype from the CB_ fonts: txfontsb_ - ``__, ``__ -* Latin Modern with Cyrillic from `CM LGC`_: - ``__, ``__ -* Times/Helvetica/Courier (TeX Gyre) with Cyrillic ParaType_ fonts: - ``__, ``__ - - -References -========== - -.. [encguide] Frank Mittelbach, Robin Fairbairns, Werner Lemberg, - LaTeX3 Project Team, `LaTeX font encodings`: - http://mirror.ctan.org/macros/latex/doc/encguide.pdf. - -.. [fntguide] LaTeX3 Project Team, `LaTeX 2e font selection`: - http://mirror.ctan.org/macros/latex/doc/fntguide.pdf. - -.. _Babel: http://www.ctan.org/pkg/babel -.. _CM LGC: http://www.ctan.org/pkg/cm-lgc -.. _CB: http://www.ctan.org/pkg/cbgreek-complete -.. _GFS Artemisia: http://www.ctan.org/pkg/gfsartemisia -.. _GFS Didot: http://www.ctan.org/pkg/gfsdidot -.. _GFS Neohellenic: http://www.ctan.org/pkg/gfsneohellenic -.. _mathpazo: http://www.ctan.org/pkg/mathpazo -.. _newtx: http://www.ctan.org/pkg/newtx -.. _txfontsb: http://www.ctan.org/pkg/txfontsb -.. _ParaType: http://www.ctan.org/pkg/paratype - -.. _PyLit: http://pylit.berlios.de -.. _reStructuredText: http://docutils.sourceforge.net/rst.html -.. _Docutils: http://docutils.sourceforge.net/rst.html diff --git a/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.pdf b/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.pdf deleted file mode 100644 index 027656c642..0000000000 Binary files a/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.pdf and /dev/null differ diff --git a/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.tex b/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.tex deleted file mode 100644 index 2e68c7b876..0000000000 --- a/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.tex +++ /dev/null @@ -1,87 +0,0 @@ -\documentclass[a4paper]{scrartcl} -\usepackage{fixltx2e} % LaTeX patches, \textsubscript -\usepackage[T2A, T1]{fontenc} -\usepackage[utf8]{inputenc} -\usepackage[russian,english]{babel} -\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} -\usepackage{bookmark} -\usepackage{parskip} -\pagestyle{empty} - -% Combine "Latin Modern" fonts for Latin and -% "CLG" fonts for Cyrillic. -\usepackage{substitutefont} -\usepackage{lmodern} -\substitutefont{T2A}{lmr}{fcm} -\substitutefont{T2A}{lmss}{fcs} -\substitutefont{T2A}{lmtt}{fct} - -\begin{document} - -\section*{Cyrillic fonts to match Latin Modern} - -Declaring the font encoding T1 (by inclusion in the option list for fontenc) -is recommended, if the text contains accented Latin characters as is usual -in most European languages and even in some English words (e.g. \emph{Résumé -of Nathan Söderblom}). However, the original Computer Modern fonts (CM) are -not available in T1 encoding. There are two alternative CM-compatible vector -fonts supporting T1: - -\begin{itemize} - -\item The \href{http://www.ctan.org/pkg/cm-super}{CM-Super} package installes - itself as CM substitute and is used for Cyrillic text, too. - -\item \href{http://www.ctan.org/pkg/lm}{Latin Modern} does not include Cyrillic - fonts. The default substitution is CM, either CM-Super or - \href{http://www.ctan.org/pkg/LH}{LH} bitmap fonts. -\end{itemize} - -The preamble code of this document uses \emph{substitutefont} to set up the -vector-fonts from the \href{http://www.ctan.org/pkg/cm-lgc}{cm-lgc} -package as a Cyrillic replacement for Latin Modern. - -\section{\foreignlanguage{russian}{Тест шрифтов}} - -\newcommand{\teststring}{Hello world! - \foreignlanguage{russian}{Здравствуй, мир!}} - -\begin{description} - \item [Normal:] \teststring - - \item [it:] \textit{\teststring} - - \item [sl:] \textsl{\teststring} - - \item [bf:] \textbf{\teststring} - - \item [bf it:] \textbf{\textit\teststring} - - \item [sc:] \textsc{\teststring} - - % \item [bf sc:] \textsc{\textbf\teststring} missing in Didot - - \item [sf:] \textsf{\teststring} - - \item [sf bf:] \textsf{\textbf\teststring} - - \item [sf sl:] \textsf{\textsl\teststring} - - \item [sf sc:] \textsf{\textsc\teststring} - - \item [tt:] \texttt{\teststring} - -\end{description} - -\selectlanguage{english} - -The Russian language definition switches the font encoding from -\emph{cyrillicencoding} to \emph{latinencoding} when changing from Russian -to another language. Babel base sets the variable \emph{latinencoding} to T1 -if this font encoding is declared and to OT1 else. - -\selectlanguage{russian} - -До свидания! - -\end{document} diff --git a/macros/latex/contrib/substitutefont/cyrillic-paratype.pdf b/macros/latex/contrib/substitutefont/cyrillic-paratype.pdf deleted file mode 100644 index 98a826b890..0000000000 Binary files a/macros/latex/contrib/substitutefont/cyrillic-paratype.pdf and /dev/null differ diff --git a/macros/latex/contrib/substitutefont/cyrillic-paratype.tex b/macros/latex/contrib/substitutefont/cyrillic-paratype.tex deleted file mode 100644 index d5a4ac2a9f..0000000000 --- a/macros/latex/contrib/substitutefont/cyrillic-paratype.tex +++ /dev/null @@ -1,95 +0,0 @@ -\documentclass[a4paper]{article} -\usepackage{fixltx2e} % LaTeX patches, \textsubscript -\usepackage[T2A,T1]{fontenc} -\usepackage[utf8]{inputenc} -\usepackage[russian,english]{babel} -\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} -\usepackage{bookmark} - -\pagestyle{empty} - -% Combine "TeX Gyre" fonts for Latin and "ParaType" fonts for Cyrillic: - -% 1. Load paratype font-packages to get scaled Paratype fonts -\usepackage[scaled=0.9]{PTSerif} -\usepackage[scaled=0.9]{PTSans} -\usepackage[scaled=0.87]{PTMono} - -% 2. Load TeX Gyre font-packages (after Paratype to use them as default fonts) -\usepackage{tgtermes} -\usepackage[scale=.90]{tgheros} -\usepackage{tgcursor} - -% 3. Set up the substitutions: -\usepackage{substitutefont} -\substitutefont{T2A}{\rmdefault}{PTSerif-TLF} -\substitutefont{T2A}{\sfdefault}{PTSans-TLF} -\substitutefont{T2A}{\ttdefault}{PTMono-TLF} - - -\begin{document} - -\section*{Cyrillic fonts to match Times/Helvetica/Curier} - -The \href{http://www.ctan.org/pkg/tex-gyre}{TeX Gyre} project provides -extensions to the URW standard Postscript fonts. Cyrillic extensions by -Valek Filippov were part of TeXGyre but removed due to license -incompatibility. - -These fonts are still available in the -\href{http://packages.debian.org/stable/scalable-cyrfonts-tex}% -{scalable-cyrfonts-tex} Debian package but not on CTAN. Furthermore, both -\href{http://www.ctan.org/pkg/fouriernc}{Fourier New Century} and -\emph{Free New Century} use the TeX-name \emph{fnc}. Therefore -\emph{scalable-cyrfonts-tex} conflicts with the Debian -\href{http://packages.debian.org/stable/texlive-fonts-extra}% -{texlive-fonts-extra} package. - -The Cyrillic fonts from the -\href{http://www.ctan.org/pkg/paratype}{paratype} package are not exact -matches but fit quite well if they are downscaled a bit. As the Paratype -package includes also T1 encoded fonts, Paratype fonts can be used for both -Latin and Cyrillic text. - -Other vector fonts supporting Cyrillic include -\href{http://www.ctan.org/pkg/dejavu}{Deja Vu}, -\href{http://www.ctan.org/pkg/droid}{Droid}, -\href{http://www.ctan.org/pkg/gentium-tug}{Gentium}, and -\href{http://www.ctan.org/pkg/libertine}{Linux Libertine}. - -\section*{\selectlanguage{russian}Тест шрифтов} - -\newcommand{\teststring}{Hello world! - \foreignlanguage{russian}{Здравствуй, мир!}} - -\begin{description} - \item [Normal:] \teststring - - \item [it:] \textit{\teststring} - - \item [sl:] \textsl{\teststring}% - \footnote{TeX Gyre merges slanted and italic shapes} - - \item [bf:] \textbf{\teststring} - - \item [bf it:] \textbf{\textit\teststring} - - \item [sc:] not available in Paratype % \textsc{\teststring} - - \item [bf sc:] missing % \textsc{\textbf\teststring} - - \item [sf:] \textsf{\teststring} - - \item [sf bf:] \textsf{\textbf\teststring} - - \item [sf sl:] \textsf{\textsl\teststring} - - \item [sf sc:] not available in Paratype % \textsf{\textsc\teststring} - - \item [tt:] \texttt{\teststring} - -\end{description} - - - -\end{document} diff --git a/macros/latex/contrib/substitutefont/greek-palatino-didot.pdf b/macros/latex/contrib/substitutefont/greek-palatino-didot.pdf deleted file mode 100644 index 933663d561..0000000000 Binary files a/macros/latex/contrib/substitutefont/greek-palatino-didot.pdf and /dev/null differ diff --git a/macros/latex/contrib/substitutefont/greek-palatino-didot.tex b/macros/latex/contrib/substitutefont/greek-palatino-didot.tex deleted file mode 100644 index e8bddaf56c..0000000000 --- a/macros/latex/contrib/substitutefont/greek-palatino-didot.tex +++ /dev/null @@ -1,91 +0,0 @@ -% Example and test for the substitutefont package: -\documentclass[a4paper,DIV14]{scrartcl} -\usepackage{parskip} -\usepackage[LGR,T1]{fontenc} -\usepackage[utf8]{inputenc} -\usepackage[greek,english]{babel} -\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} -\usepackage{bookmark} -\pagestyle{empty} - -\usepackage{substitutefont} -% Serif -\usepackage[sc,slantedGreek]{mathpazo} -\substitutefont{LGR}{\rmdefault}{udidot} - -% Sans -\usepackage[scale=.90]{tgheros} -\substitutefont{LGR}{\sfdefault}{neohellenic} - -% Monospaced -% \usepackage[matchlowercase]{tgcursor} -\renewcommand{\ttdefault}{txtt} -\substitutefont{LGR}{\ttdefault}{cmtt} % CB fonts -% \substitutefont{LGR}{\ttdefault}{fdm} % Droid Sans Mono - - -% Teststring -\newcommand{\alphabet}{% - abcdefghjiklmnoprqrstuvwxyzäöüß - \foreignlanguage{greek}{abgdezhjiklmnxoprsctufqyw} \\ - ABCDEFGHJIKLMNOPRQRSTUVWXYZÄÖÜ - \foreignlanguage{greek}{ABGDEZHJIKLMNXOPRSTUFQYW} -} - -\begin{document} - -\section*{Palatino/Helvetica/TXTT and Greek replacements} - -Default font families after loading mathpazo, tgheros, and tgcursor:\\ -familydefault: \familydefault{}, -rmdefault: \rmdefault{}, -sfdefault: \sfdefault{}, -ttdefault: \ttdefault{} - -Palatino (mathpazo) with GFS Didot: - -\begin{description} - \item [Normal:] \alphabet - - \item [it:] \textit{\alphabet} - - \item [sl:] \textsl{\alphabet} - - \item [bf:] \textbf{\alphabet} - - \item [bf it:] \textbf{\textit\alphabet} - - \item [sc:] \textsc{\alphabet} - - % \item [bf sc:] \textsc{\textbf\alphabet} - -\end{description} - -Helvetica (TG Heros) with GFS Neohellenic: - -\begin{description} - - \item [sf:] \textsf{\alphabet} - - \item [sf bf:] \textsf{\textbf\alphabet} - - \item [sf sl:] \textsf{\textsl\alphabet} - - \item [sf sc:] \textsf{\textsc\alphabet} - -\end{description} - -There is no Greek extension for the monospaced standard PS font Curier. -A good replacement are the teletype fonts from -\href{http://www.ctan.org/pkg/newtx}{txfonts} and -\href{http://www.ctan.org/pkg/cbgreek-complete}{CB-Greek}: - -\begin{description} - - \item [tt:] \texttt{\alphabet} - % \item [tt bf:] \texttt{\textbf\alphabet} % not in CB-Greek - \item [tt it:] \texttt{\textit\alphabet} - -\end{description} - -\end{document} diff --git a/macros/latex/contrib/substitutefont/greek-times-artemisia.pdf b/macros/latex/contrib/substitutefont/greek-times-artemisia.pdf deleted file mode 100644 index 9045f6c7a3..0000000000 Binary files a/macros/latex/contrib/substitutefont/greek-times-artemisia.pdf and /dev/null differ diff --git a/macros/latex/contrib/substitutefont/greek-times-artemisia.tex b/macros/latex/contrib/substitutefont/greek-times-artemisia.tex deleted file mode 100644 index b6740a37f6..0000000000 --- a/macros/latex/contrib/substitutefont/greek-times-artemisia.tex +++ /dev/null @@ -1,71 +0,0 @@ -% Example and test for the substitutefont package: -\documentclass{article} -\usepackage{parskip} -\usepackage[LGR,T1]{fontenc} -\usepackage[utf8]{inputenc} -\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} -\usepackage{bookmark} -\pagestyle{empty} - -\usepackage{substitutefont} - -% Serif -\usepackage[scaled=0.97]{newtxtext} -\substitutefont{LGR}{\rmdefault}{artemisia} - -% Sans -\substitutefont{LGR}{\sfdefault}{neohellenic} - -% Monospaced -\substitutefont{LGR}{\ttdefault}{cmtt} % CB fonts - - -% Teststring -\newcommand{\alphabet}{% - abcdefghjiklmnoprqrstuvwxyzäöüß - {\fontencoding{LGR}\selectfont abgdezhjiklmnxoprsctufqyw} \\ - ABCDEFGHJIKLMNOPRQRSTUVWXYZÄÖÜ - {\fontencoding{LGR}\selectfont ABGDEZHJIKLMNXOPRSTUFQYW}% -} - -\begin{document} - -\section*{Times/Helvetica/TXTT and Greek replacements} - -Use Times, Helvetica, and TXTT from the -\href{http://www.ctan.org/pkg/newtx}{newtx} package and -\href{http://www.ctan.org/pkg/gfsartemisia}{GFS Artemisia}, -\href{http://www.ctan.org/pkg/gfsneohellenic}{GFS Neohellenic}, -and \href{http://www.ctan.org/pkg/cbgreek-complete}{CB-Fonts}, -for Greek text.\footnote{% -See the \href{http://www.ctan.org/pkg/txfontsb}{txfontsb} -package for an alternative.} - -\begin{description} - \item [Normal:] \alphabet - - \item [it:] \textit{\alphabet} - - \item [sl:] \textsl{\alphabet} - - \item [bf:] \textbf{\alphabet} - - \item [bf it:] \textbf{\textit\alphabet} - - \item [sc:] \textsc{\alphabet} - - % \item [bf sc:] \textsc{\textbf\alphabet} missing in Bodoni - - \item [sf:] \textsf{\alphabet} - - \item [sf bf:] \textsf{\textbf\alphabet} - - \item [sf sl:] \textsf{\textsl\alphabet} - - \item [sf sc:] \textsf{\textsc\alphabet} - - \item [tt:] \texttt{\alphabet} - -\end{description} - -\end{document} diff --git a/macros/latex/contrib/substitutefont/substitutefont-doc.html b/macros/latex/contrib/substitutefont/substitutefont-doc.html deleted file mode 100644 index 8df4b99b40..0000000000 --- a/macros/latex/contrib/substitutefont/substitutefont-doc.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - -substitutefont - - - - - -
-

substitutefont

-

Combine font families

- -
- - -
Contributor
-

Special thanks to Ulrike Fischer who provided -the indirect definition with active \nfss@catcodes.

-
-
Licence
-

This work may be distributed and/or modified under the -conditions of the LaTeX Project Public License, -either version 1.3 of this license or (at your option) -any later version.

-
-
-

In traditional 8-bit LaTeX, fonts are restricted to 256 glyphs per file. -To support different languages and scripts, the New Font Selection Scheme -uses a set of TeX font encodings [encguide].

-

Many Latin TeX fonts do not support Greek or Cyrillic, while many non-Latin -fonts are extensions of a Latin font family but use a different family name -due to license reasons or the creators preference.

-

The substitutefont package facilitates the task to set up a font family as -substitute for another one in a specified font encoding.

-
-
News
-

2013-11-04 Documentation/Test fixes.

-
-
Source
-

substitutefont.sty

-

The literate source was converted with PyLit to reStructuredText and -with Docutils to the HTML documentation substitutefont.sty.html.

-
-
-
-

Usage

-

The macro \substitutefont{<encoding>}{<family>}{<new-family>} selects -the font family <new-family> as replacement for <family> in the font -encoding <encoding>. The substitution must be defined before the first use -of the specified font encoding, preferably in the document preamble. -In contrast to the (deprecated) \substitutefontfamily macro provided by -Babel, \substitutefont does not write auxiliary files.

-

The <encoding> is one of the LaTeX font encodings [encguide], e.g., T1 -for Latin, T2A for Cyrillic(Russian), or LGR for Greek.

-

For <family> and <new-family>, use the «TeX names» of the font. -There are defined by a TeX font package’s *.fd or *.sty file(s). -LaTeX stores the default family names for Roman, Sans-Serif, and Teletype -fonts in the \rmdefault, \sfdefault, and \ttdefault macros -respectively.

-

Example: Set the font family to Palatino using the standard package -mathpazo for Latin and GFS Didot for Greek:

-
\usepackage[sc,slantedGreek]{mathpazo}
-\usepackage{substitutefont}
-\substitutefont{LGR}{\rmdefault}{udidot}
-
-

For details on LaTeX font selection, see [encguide] and [fntguide].

-
-
-

Tests/Examples

- -
-
-

References

-
[encguide]
-
-(1, 2, 3)

Frank Mittelbach, Robin Fairbairns, Werner Lemberg, -LaTeX3 Project Team, LaTeX font encodings: -http://mirror.ctan.org/macros/latex/doc/encguide.pdf.

-
-
-
[fntguide]
-
-

LaTeX3 Project Team, LaTeX 2e font selection: -http://mirror.ctan.org/macros/latex/doc/fntguide.pdf.

-
-
-
-
- - diff --git a/macros/latex/contrib/substitutefont/substitutefont-test.pdf b/macros/latex/contrib/substitutefont/substitutefont-test.pdf deleted file mode 100644 index d357cf6764..0000000000 Binary files a/macros/latex/contrib/substitutefont/substitutefont-test.pdf and /dev/null differ diff --git a/macros/latex/contrib/substitutefont/substitutefont-test.tex b/macros/latex/contrib/substitutefont/substitutefont-test.tex deleted file mode 100644 index 0d32eb18ce..0000000000 --- a/macros/latex/contrib/substitutefont/substitutefont-test.tex +++ /dev/null @@ -1,55 +0,0 @@ -\documentclass[a4paper]{article} -\usepackage{fixltx2e} % LaTeX patches, \textsubscript -\usepackage[T1,OT1]{fontenc} -\usepackage[utf8]{inputenc} -\usepackage{parskip} - -\title{Simple substitutefont test} -\author{Günter Milde} - -% Combine "Latin Modern" fonts for OT1 and Bookman for T1. -\usepackage{substitutefont} -\usepackage{lmodern} -% Substitution also works for fonts that exist in the specified encoding: -\substitutefont{T1}{lmr}{pbk} - -% \addto\extrasgerman{\fontencoding{T1}\selectfont} -% \addto\noextrasgerman{\fontencoding{\encodingdefault}\selectfont} - -\begin{document} - -\maketitle - -This document is a test that should work with any standard basic LaTeX -installation. For real use cases, see the test documents setting up matching -Latin and Greek or Cyrillic fonts. - -Some text in \encodingdefault{} encoding, the font is Latin Modern: -Résumé of Nathan Söderblom. - -% (Defining the substitution in the document body is possible (but not -% recommended) if it is done before the first use of a font in the specified -% encoding.) -% \substitutefont{T1}{lmr}{pbk} - -\fontencoding{T1}\selectfont - -Some text in T1 encoding, the font is Bookmark: Résumé of Nathan Söderblom% -\footnote{Compare the result of drag-and-drop or text search for words with -accented characters for OT1 and T1 encoded text.} - -\fontencoding{OT1}\selectfont - -Back to OT1 and Latin Modern. - -% The following substitution definition is ignored, because T1 fonts are -% already set up: -\substitutefont{T1}{lmr}{pag} - - - -\fontencoding{T1}\selectfont - -Some more text in T1 encoding and Bookmark. - -\end{document} diff --git a/macros/latex/contrib/substitutefont/substitutefont.sty b/macros/latex/contrib/substitutefont/substitutefont.sty deleted file mode 100644 index 1960c8cff9..0000000000 --- a/macros/latex/contrib/substitutefont/substitutefont.sty +++ /dev/null @@ -1,80 +0,0 @@ -% Easy font substitution -% ********************** -% -% :Copyright: © 2010 Günter Milde -% -% :Contributor: Special thanks to Ulrike Fischer who provided -% the indirect definition with active ``\nfss@catcodes``. -% -% :Licence: This work may be distributed and/or modified under the -% conditions of the `LaTeX Project Public License`_, either -% version 1.3 of this license or any later version. -% -% :Abstract: Provide the ``\substitutefont`` macro for defining -% substitute fonts for specified font encodings. -% -% :Identification: -% :: - -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{substitutefont} -[2012/07/07 v0.1.3 combine font families] - -% Changelog: -% .. class:: borderless -% -% ============ ===== ================================================= -% 2010-11-04 0.1 initial version -% 2012-04-30 0.1.1 documentation update, upload to CTAN -% 2012-07-05 0.1.2 documentation/example update -% 2012-07-07 0.1.3 bugfix (comment usage example) -% 2013-11-04 0.1.4 documentation update -% ============ ===== ================================================= -% -% -% Usage -% ===== -% -% The macro ``\substitutefont{}{}{}`` -% selects the font as replacement for if the font -% encoding is in the variants "normal", "italic", "slanted", -% and "small-caps" and the shapes "medium", "bold", and "bold-extended". -% -% Example: -% Palatino with the standard package `mathpazo`_ for Latin and -% `GFS Didot`_ for Greek: -% -% .. code:: latex -% -% \usepackage[sc,slantedGreek]{mathpazo} -% \usepackage{substitutefont} -% \substitutefont{LGR}{\rmdefault}{udidot} -% -% -% Implementation -% ============== -% :: - -\begingroup -\nfss@catcodes -\newcommand*{\substitutefont}[3]{% - \DeclareFontFamily{#1}{#2}{} - \DeclareFontShape{#1}{#2}{m}{n}{<->ssub * #3/m/n}{} - \DeclareFontShape{#1}{#2}{m}{it}{<->ssub * #3/m/it}{} - \DeclareFontShape{#1}{#2}{m}{sl}{<->ssub * #3/m/sl}{} - \DeclareFontShape{#1}{#2}{m}{sc}{<->ssub * #3/m/sc}{} - \DeclareFontShape{#1}{#2}{b}{n}{<->ssub * #3/b/n}{} - \DeclareFontShape{#1}{#2}{b}{it}{<->ssub * #3/b/it}{} - \DeclareFontShape{#1}{#2}{b}{sl}{<->ssub * #3/b/sl}{} - \DeclareFontShape{#1}{#2}{b}{sc}{<->ssub * #3/b/sc}{} - \DeclareFontShape{#1}{#2}{bx}{n}{<->ssub * #3/bx/n}{} - \DeclareFontShape{#1}{#2}{bx}{it}{<->ssub * #3/bx/it}{} - \DeclareFontShape{#1}{#2}{bx}{sl}{<->ssub * #3/bx/sl}{} - \DeclareFontShape{#1}{#2}{bx}{sc}{<->ssub * #3/bx/sc}{} -} -\global\let\substitutefont\substitutefont -\endgroup - -% .. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt -% .. _GFS Didot: http://mirror.ctan.org/help/Catalogue/entries/gfsdidot.html -% .. _mathpazo: http://www.ctan.org/pkg/mathpazo diff --git a/macros/latex/contrib/substitutefont/substitutefont.sty.html b/macros/latex/contrib/substitutefont/substitutefont.sty.html deleted file mode 100644 index 9d91bd89a9..0000000000 --- a/macros/latex/contrib/substitutefont/substitutefont.sty.html +++ /dev/null @@ -1,115 +0,0 @@ - - - - - - -Easy font substitution - - - - - -
-

Easy font substitution

- -
- - -
Contributor
-

Special thanks to Ulrike Fischer who provided -the indirect definition with active \nfss@catcodes.

-
-
Licence
-

This work may be distributed and/or modified under the -conditions of the LaTeX Project Public License, either -version 1.3 of this license or any later version.

-
-
Identification
-
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{substitutefont}
-[2012/07/07 v0.1.3 combine font families]
-
-
-
-
-

Abstract

-

Provide the \substitutefont macro for defining -substitute fonts for specified font encodings.

-
-
-
Changelog:
-
----- - - - - - - - - - - - - - - - - - - - - - - -

2010-11-04

0.1

initial version

2012-04-30

0.1.1

documentation update, upload to CTAN

2012-07-05

0.1.2

documentation/example update

2012-07-07

0.1.3

bugfix (comment usage example)

2013-11-04

0.1.4

documentation update

-
-
-
-

Usage

-

The macro \substitutefont{<encoding>}{<family>}{<new-family>} -selects the font <new-family> as replacement for <family> if the font -encoding is <encoding> in the variants “normal”, “italic”, “slanted”, -and “small-caps” and the shapes “medium”, “bold”, and “bold-extended”.

-
-
Example:
-

Palatino with the standard package mathpazo for Latin and -GFS Didot for Greek:

-
\usepackage[sc,slantedGreek]{mathpazo}
-\usepackage{substitutefont}
-\substitutefont{LGR}{\rmdefault}{udidot}
-
-
-
-
-
-

Implementation

-
\begingroup
-\nfss@catcodes
-\newcommand*{\substitutefont}[3]{%
- \DeclareFontFamily{#1}{#2}{}
- \DeclareFontShape{#1}{#2}{m}{n}{<->ssub * #3/m/n}{}
- \DeclareFontShape{#1}{#2}{m}{it}{<->ssub * #3/m/it}{}
- \DeclareFontShape{#1}{#2}{m}{sl}{<->ssub * #3/m/sl}{}
- \DeclareFontShape{#1}{#2}{m}{sc}{<->ssub * #3/m/sc}{}
- \DeclareFontShape{#1}{#2}{b}{n}{<->ssub * #3/b/n}{}
- \DeclareFontShape{#1}{#2}{b}{it}{<->ssub * #3/b/it}{}
- \DeclareFontShape{#1}{#2}{b}{sl}{<->ssub * #3/b/sl}{}
- \DeclareFontShape{#1}{#2}{b}{sc}{<->ssub * #3/b/sc}{}
- \DeclareFontShape{#1}{#2}{bx}{n}{<->ssub * #3/bx/n}{}
- \DeclareFontShape{#1}{#2}{bx}{it}{<->ssub * #3/bx/it}{}
- \DeclareFontShape{#1}{#2}{bx}{sl}{<->ssub * #3/bx/sl}{}
- \DeclareFontShape{#1}{#2}{bx}{sc}{<->ssub * #3/bx/sc}{}
-}
-\global\let\substitutefont\substitutefont
-\endgroup
-
-
-
- - diff --git a/macros/latex/contrib/zref-check/CHANGELOG.md b/macros/latex/contrib/zref-check/CHANGELOG.md index b9c41de170..75b91e2d0a 100644 --- a/macros/latex/contrib/zref-check/CHANGELOG.md +++ b/macros/latex/contrib/zref-check/CHANGELOG.md @@ -1,6 +1,24 @@ # Changelog -## [Unreleased](https://github.com/gusbrs/zref-check/compare/v0.3.3...HEAD) +## [Unreleased](https://github.com/gusbrs/zref-check/compare/v0.3.4...HEAD) + +## [v0.3.4](https://github.com/gusbrs/zref-check/compare/v0.3.3...v0.3.4) (2023-08-13) + +### Added +- Support for empty labels in `\zcheck`. +- New alias `ok` of `msglevel=none` for local use. +- New `manual` check. + +### Changed +- Calls to `\zcheck` with no checks issue a message, also subject to the + `msglevel` option. + +### Removed +- Option values `msglevel=obeydraft`, `msglevel=obeyfinal`, + `onpage=obeydraft`, and `onpage=obeyfinal`, which had been deprecated since + v0.2.2 (2021-12-07), have been removed. +- Option `labelcmd`, which had been deprecated since v0.2.4 (2022-02-08), has + been removed. ## [v0.3.3](https://github.com/gusbrs/zref-check/compare/v0.3.2...v0.3.3) (2023-06-14) diff --git a/macros/latex/contrib/zref-check/zref-check-code.pdf b/macros/latex/contrib/zref-check/zref-check-code.pdf index fdd972c94d..73d1816b1d 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-doc.pdf b/macros/latex/contrib/zref-check/zref-check-doc.pdf index 64afffc6f2..d6ba5308cb 100644 Binary files a/macros/latex/contrib/zref-check/zref-check-doc.pdf 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 index 420ec0f900..9d0205c571 100644 --- a/macros/latex/contrib/zref-check/zref-check-doc.tex +++ b/macros/latex/contrib/zref-check/zref-check-doc.tex @@ -49,6 +49,10 @@ \NewDocumentCommand\opt{m}{\texttt{#1}} +\makeatletter +\newcommand{\zcrequiredkernel}{\zrefcheck@required@kernel} +\makeatother + \begin{document} \GetFileInfo{zref-check.sty} @@ -165,10 +169,9 @@ using \cs{zrefchecksetup} (see Section~\ref{sec:user-interface}). \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. +later than \zcrequiredkernel{} is required as well. 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} @@ -329,6 +332,9 @@ The available checks are the following: \item[far] Not \opt{close}. +\item[manual] A check which always fails. Can be used to keep track of + relations not covered by the other regular checks. + \end{description} @@ -363,9 +369,9 @@ terminal and to the log file, \opt{info} issues messages to the log file only, \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 +otherwise. \opt{ignore} and \opt{ok} are provided as convenience aliases 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 +related to 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. diff --git a/macros/latex/contrib/zref-check/zref-check.dtx b/macros/latex/contrib/zref-check/zref-check.dtx index 58eb421cdd..c3a05b9990 100644 --- a/macros/latex/contrib/zref-check/zref-check.dtx +++ b/macros/latex/contrib/zref-check/zref-check.dtx @@ -72,23 +72,22 @@ % the new hook system in \pkg{ltcmdhooks}, which was released with the % 2021/06/01 \LaTeX{} kernel. % \begin{macrocode} -\NeedsTeXFormat{LaTeX2e} +\def\zrefcheck@required@kernel{2021-06-01} +\NeedsTeXFormat{LaTeX2e}[\zrefcheck@required@kernel] \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} -\IfFormatAtLeastTF{2021-06-01} +\IfFormatAtLeastTF{\zrefcheck@required@kernel} {} {% \PackageError{zref-check}{LaTeX kernel too old} {% - 'zref-check' requires a LaTeX kernel newer than 2021-06-01.% - \MessageBreak Loading will abort!% + 'zref-check' requires a LaTeX kernel \zrefcheck@required@kernel\space or newer.% }% - \endinput }% % \end{macrocode} % % Identify the package. % \begin{macrocode} -\ProvidesExplPackage {zref-check} {2023-06-14} {0.3.3} +\ProvidesExplPackage {zref-check} {2023-08-13} {0.3.4} {Flexible cross-references with contextual checks based on zref} % \end{macrocode} % @@ -193,6 +192,13 @@ Same~page~check~\msg_line_context:.~ Double-check~'#1'~for~label~'#2'~on~page~#3. } +\msg_new:nnn { zref-check } { empty-label } + { + Check~failed~\msg_line_context:.~ + Failed~check~'#1'~for~empty~label. + } +\msg_new:nnn { zref-check } { no-checks } + { No~checks~for~'\iow_char:N\\zcheck'~\msg_line_context:. } % \end{macrocode} % % \begin{macrocode} @@ -214,9 +220,9 @@ } \msg_new:nnn { zref-check } { missing-hyperref } { Missing~'hyperref'~package. \iow_newline: Setting~'hyperref=false'. } -\msg_new:nnn { zref-check } { ignore-document-only } +\msg_new:nnn { zref-check } { ignore-ok-document-only } { - Option~'ignore'~only~available~in~the~document. \iow_newline: + Option~'#1'~only~available~in~the~document. \iow_newline: Use~option~'msglevel'~instead. } \msg_new:nnn { zref-check } { option-preamble-only } @@ -379,27 +385,18 @@ { \tl_set:Nn \l_@@_msglevel_tl { warning } } { \tl_set:Nn \l_@@_msglevel_tl { info } } } , - msglevel / obeydraft .code:n = - { - % NOTE Option value deprecated in 2021-12-07 for v0.2.2. - \msg_warning:nnnn { zref-check }{ option-deprecated-with-alternative } - { msglevel=obeydraft } { msglevel=infoifdraft } - } , - msglevel / obeyfinal .code:n = - { - % NOTE Option value deprecated in 2021-12-07 for v0.2.2. - \msg_warning:nnnn { zref-check }{ option-deprecated-with-alternative } - { msglevel=obeyfinal } { msglevel=warniffinal } - } , msglevel .value_required:n = true , msglevel .initial:n = warn , % \end{macrocode} -% \opt{ignore} is a convenience alias for \opt{msglevel=none}, but only for -% use in the document body. +% \opt{ignore} and \opt{ok} are convenience aliases for \opt{msglevel=none}, +% but only for use in the document body. % \begin{macrocode} ignore .code:n = - { \msg_warning:nn { zref-check } { ignore-document-only } } , - ignore .value_forbidden:n = true + { \msg_warning:nnn { zref-check } { ignore-ok-document-only } { ignore } } , + ignore .value_forbidden:n = true , + ok .code:n = + { \msg_warning:nnn { zref-check } { ignore-ok-document-only } { ok } } , + ok .value_forbidden:n = true , } % \end{macrocode} % \end{variable} @@ -408,7 +405,10 @@ \AddToHook { begindocument } { \keys_define:nn { zref-check } - { ignore .meta:n = { msglevel = none } } + { + ignore .meta:n = { msglevel = none } , + ok .meta:n = { msglevel = none } , + } } % \end{macrocode} % @@ -441,18 +441,6 @@ { \bool_set_true:N \l_@@_msgonpage_bool } { \bool_set_false:N \l_@@_msgonpage_bool } } , - onpage / obeydraft .code:n = - { - % NOTE Option value deprecated in 2021-12-07 for v0.2.2. - \msg_warning:nnnn { zref-check }{ option-deprecated-with-alternative } - { onpage=obeydraft } { onpage=labelseqifdraft } - } , - onpage / obeyfinal .code:n = - { - % NOTE Option value deprecated in 2021-12-07 for v0.2.2. - \msg_warning:nnnn { zref-check }{ option-deprecated-with-alternative } - { onpage=obeyfinal } { onpage=msgiffinal } - } , onpage .value_required:n = true , onpage .initial:n = labelseq } @@ -483,22 +471,6 @@ % \end{variable} % % -% \subsubsection*{\opt{labelcmd} option} -% -% \begin{macrocode} -\keys_define:nn { zref-check } - { - labelcmd .code:n = - { - % NOTE Option value deprecated in 2022-02-08 for v0.2.4. - \msg_warning:nnn { zref-check }{ option-deprecated } - { labelcmd } - } , - } -% \end{macrocode} -% -% -% % \subsubsection*{Package options} % % \pkg{zref-check} does not accept load-time options. Despite the tradition @@ -631,30 +603,30 @@ % \begin{macrocode} \ior_open:Nn \g_tmpa_ior { \g_tmpa_tl } \group_begin: - \int_zero:N \l_tmpa_int - \tl_clear:N \l_tmpa_tl - \tl_clear:N \l_tmpb_tl - \bool_set_false:N \l_tmpa_bool - \ior_map_variable:NNn \g_tmpa_ior \l_tmpa_tl - { - \tl_map_variable:NNn \l_tmpa_tl \l_tmpb_tl - { - \tl_if_eq:NnTF \l_tmpb_tl { \zref@newlabel } - { + \int_zero:N \l_tmpa_int + \tl_clear:N \l_tmpa_tl + \tl_clear:N \l_tmpb_tl + \bool_set_false:N \l_tmpa_bool + \ior_map_variable:NNn \g_tmpa_ior \l_tmpa_tl + { + \tl_map_variable:NNn \l_tmpa_tl \l_tmpb_tl + { + \tl_if_eq:NnTF \l_tmpb_tl { \zref@newlabel } + { % \end{macrocode} % Found a \cs{zref@label}, signal it. % \begin{macrocode} - \bool_set_true:N \l_tmpa_bool - } - { - \bool_if:NTF \l_tmpa_bool - { - \bool_set_false:N \l_tmpa_bool - \int_incr:N \l_tmpa_int - \prop_gput:Nxx \g_@@_auxfile_lblseq_prop - { \l_tmpb_tl } { \int_use:N \l_tmpa_int } - } - { + \bool_set_true:N \l_tmpa_bool + } + { + \bool_if:NTF \l_tmpa_bool + { + \bool_set_false:N \l_tmpa_bool + \int_incr:N \l_tmpa_int + \prop_gput:Nxx \g_@@_auxfile_lblseq_prop + { \l_tmpb_tl } { \int_use:N \l_tmpa_int } + } + { % \end{macrocode} % If there is not a match of the first token with \cs{zref@newlabel}, break % the loop and discard the rest of the line, to ensure no babel calls to @@ -662,11 +634,11 @@ % loop and discards the rest of the \cs{zref@newlabel} lines after we got the % label we wanted, since we reset \cs{l_tmpa_bool} in the \texttt{T} branch. % \begin{macrocode} - \tl_map_break: - } - } - } - } + \tl_map_break: + } + } + } + } \group_end: \ior_close:N \g_tmpa_ior } @@ -942,65 +914,68 @@ { \group_begin: % \end{macrocode} -% Process local options and checks. +% Process local options and checks. We use \cs{seq_set_split:Nnn} to set +% \cs{l_@@_zcheck_labels_seq} -- instead of \cs{seq_set_from_clist:Nn} -- to +% support empty labels. % \begin{macrocode} - \keys_set:nn { zref-check / zcheck } {#3} - \seq_set_from_clist:Nn \l_@@_zcheck_labels_seq {#1} + \keys_set:nn { zref-check / zcheck } {#3} + \seq_set_split:Nnn \l_@@_zcheck_labels_seq { , } {#1} % \end{macrocode} % Names of the labels for this zcheck call. % \begin{macrocode} - \int_gincr:N \g_@@_id_int - \tl_set:Nx \l_@@_checkbeg_tl - { \@@_check_lblfmt:n { \g_@@_id_int } } + \int_gincr:N \g_@@_id_int + \tl_set:Nx \l_@@_checkbeg_tl + { \@@_check_lblfmt:n { \g_@@_id_int } } % \end{macrocode} % Set checkbeg label. % \begin{macrocode} - \zref@labelbylist { \l_@@_checkbeg_tl } { zrefcheck-check } + \zref@labelbylist { \l_@@_checkbeg_tl } { zrefcheck-check } % \end{macrocode} % Typeset \marg{text}, with hyperlink when appropriate. Even though the first % argument can receive a list of labels, there is no meaningful way to set % links to multiple targets. Hence, only the first one is considered for % hyperlinking. % \begin{macrocode} - \seq_get:NN \l_@@_zcheck_labels_seq \l_@@_link_label_tl - \bool_set:Nn \l_@@_link_star_bool {#2} - \zref@ifrefundefined { \l_@@_link_label_tl } + \seq_get:NN \l_@@_zcheck_labels_seq \l_@@_link_label_tl + \bool_set:Nn \l_@@_link_star_bool {#2} + \zref@ifrefundefined { \l_@@_link_label_tl } % \end{macrocode} % If the reference is undefined, just typeset. % \begin{macrocode} - {#4} - { - \bool_if:nTF - { - \l_@@_use_hyperref_bool && - ! \l_@@_link_star_bool - } - { - \exp_args:Nx \zrefcheck_get_astl:nnn - { \l_@@_link_label_tl } - { anchor } { \l_@@_link_anchor_tl } - \hyperlink { \l_@@_link_anchor_tl } {#4} - } - {#4} - } + {#4} + { + \bool_if:nTF + { + \l_@@_use_hyperref_bool && + ! \l_@@_link_star_bool + } + { + \exp_args:Nx \zrefcheck_get_astl:nnn + { \l_@@_link_label_tl } + { anchor } { \l_@@_link_anchor_tl } + \hyperlink { \l_@@_link_anchor_tl } {#4} + } + {#4} + } % \end{macrocode} % Set checkend label. % \begin{macrocode} - \bool_if:NT \l_@@_zcheck_end_label_bool - { - \zref@labelbylist - { \@@_end_lblfmt:n { \l_@@_checkbeg_tl } } - { zrefcheck-end } - } + \bool_if:NT \l_@@_zcheck_end_label_bool + { + \zref@labelbylist + { \@@_end_lblfmt:n { \l_@@_checkbeg_tl } } + { zrefcheck-end } + } % \end{macrocode} % Check if \meta{labels} are defined. % \begin{macrocode} - \seq_map_function:NN \l_@@_zcheck_labels_seq \zref@refused + \seq_map_inline:Nn \l_@@_zcheck_labels_seq + { \tl_if_empty:nF {##1} { \zref@refused {##1} } } % \end{macrocode} % Run the checks. % \begin{macrocode} - \@@_run_checks:nnx { \l_@@_zcheck_checks_seq } - { \l_@@_zcheck_labels_seq } { \l_@@_checkbeg_tl } + \@@_run_checks:nnx { \l_@@_zcheck_checks_seq } + { \l_@@_zcheck_labels_seq } { \l_@@_checkbeg_tl } \group_end: } % \end{macrocode} @@ -1119,6 +1094,7 @@ nextsec , secsbefore , secsafter , + manual , } % \end{macrocode} % \end{variable} @@ -1171,6 +1147,7 @@ secsafter , close , far , + manual , } { \keys_define:nn { zref-check / zcheck } @@ -1199,11 +1176,15 @@ \cs_new_protected:Npn \@@_run_checks:nnn #1#2#3 { \group_begin: - \seq_map_inline:Nn #2 - { - \seq_map_inline:Nn #1 - { \@@_do_check:nnn {####1} {##1} {#3} } - } + \seq_map_inline:Nn #2 + { + \seq_if_empty:NTF #1 + { \@@_message:nnnn { no-checks } { } { } { } } + { + \seq_map_inline:Nn #1 + { \@@_do_check:nnn {####1} {##1} {#3} } + } + } \group_end: } \cs_generate_variant:Nn \@@_run_checks:nnn { nnx } @@ -1215,11 +1196,13 @@ % { % \l_@@_passedcheck_bool , % \l_@@_onpage_bool , +% \l_@@_empty_label_bool , % \c_@@_onpage_checks_seq % } % \begin{macrocode} \bool_new:N \l_@@_passedcheck_bool \bool_new:N \l_@@_onpage_bool +\bool_new:N \l_@@_empty_label_bool \seq_const_from_clist:Nn \c_@@_onpage_checks_seq { above , below , before , after } % \end{macrocode} @@ -1239,119 +1222,127 @@ \cs_new_protected:Npn \@@_do_check:nnn #1#2#3 { \group_begin: + \bool_set_true:N \l_@@_passedcheck_bool + \bool_set_false:N \l_@@_onpage_bool + \bool_set_false:N \l_@@_empty_label_bool + \cs_if_exist:cTF { @@_check_ #1 :nnF } + { % \end{macrocode} % \meta{label beg} may be defined or not, it is arbitrary user input. Whether % this is the case is checked in \cs{@@_zcheck:nnnnn}, and due warning already -% ensues. And there is no point in checking ``relative position'' of an -% undefined label. Hence, in the absence of |#2|, we do nothing at all here. -% \begin{macrocode} - \zref@ifrefundefined {#2} - {} - { - \tl_if_empty:nF {#1} - { - \bool_set_true:N \l_@@_passedcheck_bool - \bool_set_false:N \l_@@_onpage_bool - \cs_if_exist:cTF { @@_check_ #1 :nnF } - { - % ``label beg'' vs ``reference beg''. - \use:c { @@_check_ #1 :nnF } - {#2} {#3} - { \bool_set_false:N \l_@@_passedcheck_bool } - % ``reference end'' \emph{may} exist or not depending on the - % checks. - \zref@ifrefundefined { \@@_end_lblfmt:n {#3} } - { - % ``label end'' \emph{may} have been created by the - % target commands. - \zref@ifrefundefined { \@@_end_lblfmt:n {#2} } - {} - { - % ``label end'' vs ``reference beg''. - \exp_args:Nno \use:c { @@_check_ #1 :nnF } - { \@@_end_lblfmt:n {#2} } {#3} - { \bool_set_false:N \l_@@_passedcheck_bool } - } - } - { - % ``label beg'' vs ``reference end''. - \exp_args:Nnno \use:c { @@_check_ #1 :nnF } - {#2} { \@@_end_lblfmt:n {#3} } - { \bool_set_false:N \l_@@_passedcheck_bool } - % ``label end'' \emph{may} have been created by the - % target commands. - \zref@ifrefundefined { \@@_end_lblfmt:n {#2} } - {} - { - % ``label end'' vs ``reference beg''. - \exp_args:Nno \use:c { @@_check_ #1 :nnF } - { \@@_end_lblfmt:n {#2} } {#3} - { \bool_set_false:N \l_@@_passedcheck_bool } - % ``label end'' vs ``reference end''. - \exp_args:Nnoo \use:c { @@_check_ #1 :nnF } - { \@@_end_lblfmt:n {#2} } - { \@@_end_lblfmt:n {#3} } - { \bool_set_false:N \l_@@_passedcheck_bool } - } - } +% ensues. So there's no need to do it again here. The only exception is the +% case of empty labels, for which we want to issue a failed check warning. +% \begin{macrocode} + \zref@ifrefundefined {#2} + { + \tl_if_empty:nT {#2} + { + \bool_set_false:N \l_@@_passedcheck_bool + \bool_set_true:N \l_@@_empty_label_bool + } + } + { + % ``label beg'' vs ``reference beg''. + \use:c { @@_check_ #1 :nnF } + {#2} {#3} + { \bool_set_false:N \l_@@_passedcheck_bool } + % ``reference end'' \emph{may} exist or not depending on the + % checks. + \zref@ifrefundefined { \@@_end_lblfmt:n {#3} } + { + % ``label end'' \emph{may} have been created by the + % target commands. + \zref@ifrefundefined { \@@_end_lblfmt:n {#2} } + {} + { + % ``label end'' vs ``reference beg''. + \exp_args:Nno \use:c { @@_check_ #1 :nnF } + { \@@_end_lblfmt:n {#2} } {#3} + { \bool_set_false:N \l_@@_passedcheck_bool } + } + } + { + % ``label beg'' vs ``reference end''. + \exp_args:Nnno \use:c { @@_check_ #1 :nnF } + {#2} { \@@_end_lblfmt:n {#3} } + { \bool_set_false:N \l_@@_passedcheck_bool } + % ``label end'' \emph{may} have been created by the + % target commands. + \zref@ifrefundefined { \@@_end_lblfmt:n {#2} } + {} + { + % ``label end'' vs ``reference beg''. + \exp_args:Nno \use:c { @@_check_ #1 :nnF } + { \@@_end_lblfmt:n {#2} } {#3} + { \bool_set_false:N \l_@@_passedcheck_bool } + % ``label end'' vs ``reference end''. + \exp_args:Nnoo \use:c { @@_check_ #1 :nnF } + { \@@_end_lblfmt:n {#2} } + { \@@_end_lblfmt:n {#3} } + { \bool_set_false:N \l_@@_passedcheck_bool } + } + } % \end{macrocode} % Handle option \opt{onpage=msg}. This is only granted for tests which % perform ``within this page'' checks (\opt{above}, \opt{below}, \opt{before}, % \opt{after}) \emph{and} if any of the two by two checks uses a ``within this % page'' comparison. If both conditions are met, signal. % \begin{macrocode} - \seq_if_in:NnT \c_@@_onpage_checks_seq {#1} - { - \@@_check_thispage:nnT - {#2} {#3} - { \bool_set_true:N \l_@@_onpage_bool } - \zref@ifrefundefined { \@@_end_lblfmt:n {#3} } - { - \zref@ifrefundefined { \@@_end_lblfmt:n {#2} } - {} - { - \@@_check_thispage:nnT - { \@@_end_lblfmt:n {#2} } {#3} - { \bool_set_true:N \l_@@_onpage_bool } - } - } - { - \@@_check_thispage:nnT - {#2} { \@@_end_lblfmt:n {#3} } - { \bool_set_true:N \l_@@_onpage_bool } - \zref@ifrefundefined { \@@_end_lblfmt:n {#2} } - {} - { - \@@_check_thispage:nnT - { \@@_end_lblfmt:n {#2} } {#3} - { \bool_set_true:N \l_@@_onpage_bool } - \@@_check_thispage:nnT - { \@@_end_lblfmt:n {#2} } - { \@@_end_lblfmt:n {#3} } - { \bool_set_true:N \l_@@_onpage_bool } - } - } - } - \bool_if:NTF \l_@@_passedcheck_bool - { - \bool_if:nT - { - \l_@@_msgonpage_bool && - \l_@@_onpage_bool - } - { - \@@_message:nnnx { double-check } {#1} {#2} - { \zref@extractdefault {#3} {page} {'unknown'} } - } - } - { - \@@_message:nnnx { check-failed } {#1} {#2} - { \zref@extractdefault {#3} {page} {'unknown'} } - } - } - { \msg_warning:nnn { zref-check } { check-missing } {#1} } - } - } + \seq_if_in:NnT \c_@@_onpage_checks_seq {#1} + { + \@@_check_thispage:nnT + {#2} {#3} + { \bool_set_true:N \l_@@_onpage_bool } + \zref@ifrefundefined { \@@_end_lblfmt:n {#3} } + { + \zref@ifrefundefined { \@@_end_lblfmt:n {#2} } + {} + { + \@@_check_thispage:nnT + { \@@_end_lblfmt:n {#2} } {#3} + { \bool_set_true:N \l_@@_onpage_bool } + } + } + { + \@@_check_thispage:nnT + {#2} { \@@_end_lblfmt:n {#3} } + { \bool_set_true:N \l_@@_onpage_bool } + \zref@ifrefundefined { \@@_end_lblfmt:n {#2} } + {} + { + \@@_check_thispage:nnT + { \@@_end_lblfmt:n {#2} } {#3} + { \bool_set_true:N \l_@@_onpage_bool } + \@@_check_thispage:nnT + { \@@_end_lblfmt:n {#2} } + { \@@_end_lblfmt:n {#3} } + { \bool_set_true:N \l_@@_onpage_bool } + } + } + } + } + } + { \msg_warning:nnn { zref-check } { check-missing } {#1} } + \bool_if:NTF \l_@@_passedcheck_bool + { + \bool_if:nT + { + \l_@@_msgonpage_bool && + \l_@@_onpage_bool + } + { + \@@_message:nnnx { double-check } {#1} {#2} + { \zref@extractdefault {#3} {page} {'unknown'} } + } + } + { + \bool_if:NTF \l_@@_empty_label_bool + { \@@_message:nnnn { empty-label } {#1} { } { } } + { + \@@_message:nnnx { check-failed } {#1} {#2} + { \zref@extractdefault {#3} {page} {'unknown'} } + } + } \group_end: } \cs_generate_variant:Nn \@@_do_check:nnn { nnV } @@ -1385,25 +1376,25 @@ \prg_new_protected_conditional:Npnn \@@_check_thispage:nn #1#2 { T , F , TF } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_int } = { \l_@@_ref_int } && + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_int } = { \l_@@_ref_int } && % \end{macrocode} % `0' is the default value of \texttt{abspage}, but this value should not % happen normally for this property, since even the first page, after it gets % shipped out, will receive value `1'. So, if we do find `0' here, better % signal something is wrong. This comment extends to all page number checks. % \begin{macrocode} - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_otherpage:nn #1#2 { T , F , TF } @@ -1423,23 +1414,23 @@ \prg_new_protected_conditional:Npnn \@@_check_above:nn #1#2 { F , TF } { \group_begin: - \@@_check_thispage:nnTF {#1} {#2} - { - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { lblseq } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { lblseq } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_int } < { \l_@@_ref_int } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } - } - { \group_insert_after:N \prg_return_false: } + \@@_check_thispage:nnTF {#1} {#2} + { + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { lblseq } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { lblseq } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_int } < { \l_@@_ref_int } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } + } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_below:nn #1#2 { F , TF } @@ -1501,128 +1492,128 @@ \prg_new_protected_conditional:Npnn \@@_check_nextpage:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_int } = { \l_@@_ref_int + 1 } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_int } = { \l_@@_ref_int + 1 } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_prevpage:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_int } = { \l_@@_ref_int - 1 } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_int } = { \l_@@_ref_int - 1 } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_pagesbefore:nn #1#2 { F , TF } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_int } < { \l_@@_ref_int } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_int } < { \l_@@_ref_int } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \cs_new_eq:NN \@@_check_ppbefore:nnF \@@_check_pagesbefore:nnF \prg_new_protected_conditional:Npnn \@@_check_pagesafter:nn #1#2 { F , TF } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_int } > { \l_@@_ref_int } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_int } > { \l_@@_ref_int } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \cs_new_eq:NN \@@_check_ppafter:nnF \@@_check_pagesafter:nnF \prg_new_protected_conditional:Npnn \@@_check_pagegap:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \int_abs:n { \l_@@_lbl_int - \l_@@_ref_int } } > { 1 } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \int_abs:n { \l_@@_lbl_int - \l_@@_ref_int } } > { 1 } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_facing:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { % \end{macrocode} % There exists no ``facing'' page if the document is not twoside. % \begin{macrocode} - \legacy_if_p:n { @twoside } && + \legacy_if_p:n { @twoside } && % \end{macrocode} % Now we test ``facing''. % \begin{macrocode} + ( ( - ( - \int_if_odd_p:n { \l_@@_ref_int } && - \int_compare_p:nNn - { \l_@@_lbl_int } = { \l_@@_ref_int - 1 } - ) || - ( - \int_if_even_p:n { \l_@@_ref_int } && - \int_compare_p:nNn - { \l_@@_lbl_int } = { \l_@@_ref_int + 1 } - ) - ) && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \int_if_odd_p:n { \l_@@_ref_int } && + \int_compare_p:nNn + { \l_@@_lbl_int } = { \l_@@_ref_int - 1 } + ) || + ( + \int_if_even_p:n { \l_@@_ref_int } && + \int_compare_p:nNn + { \l_@@_lbl_int } = { \l_@@_ref_int + 1 } + ) + ) && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } % \end{macrocode} @@ -1636,21 +1627,21 @@ \prg_new_protected_conditional:Npnn \@@_check_close:nn #1#2 { F , TF } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \int_abs:n { \l_@@_lbl_int - \l_@@_ref_int } } - < - { \l_@@_close_range_int + 1 } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { abspage } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { abspage } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \int_abs:n { \l_@@_lbl_int - \l_@@_ref_int } } + < + { \l_@@_close_range_int + 1 } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_far:nn #1#2 { F } @@ -1677,14 +1668,14 @@ \prg_new_protected_conditional:Npnn \@@_check_thischap:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_int } = { \l_@@_ref_int } && + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_int } = { \l_@@_ref_int } && % \end{macrocode} % `0' is the default value of \texttt{zc@abschap} property, and means here no % \cs{chapter} has yet been issued, therefore it cannot be ``this chapter'', @@ -1693,81 +1684,81 @@ % not require the ``current'' one to exist. This comment extends to all % chapter checks. % \begin{macrocode} - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_nextchap:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_int } = { \l_@@_ref_int + 1 } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_int } = { \l_@@_ref_int + 1 } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_prevchap:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_int } = { \l_@@_ref_int - 1 } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_int } = { \l_@@_ref_int - 1 } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_chapsafter:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_int } > { \l_@@_ref_int } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_int } > { \l_@@_ref_int } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_chapsbefore:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_int } < { \l_@@_ref_int } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_int } < { \l_@@_ref_int } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } % \end{macrocode} @@ -1788,18 +1779,18 @@ \prg_new_protected_conditional:Npnn \@@_check_thissec:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { zc@abssec } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { zc@abssec } { \l_@@_ref_int } - \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_b_int } - \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_b_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_b_int } = { \l_@@_ref_b_int } && - \int_compare_p:nNn - { \l_@@_lbl_int } = { \l_@@_ref_int } && + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { zc@abssec } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { zc@abssec } { \l_@@_ref_int } + \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_b_int } + \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_b_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_b_int } = { \l_@@_ref_b_int } && + \int_compare_p:nNn + { \l_@@_lbl_int } = { \l_@@_ref_int } && % \end{macrocode} % `0' is the default value of \texttt{zc@abssec} property, and means here no % \cs{section} has yet been issued since its counter has been reset, which @@ -1808,97 +1799,97 @@ % about the need of the ``current'' section to exist to be able to refer to a % ``future'' one also holds. This comment extends to all section checks. % \begin{macrocode} - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_nextsec:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { zc@abssec } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { zc@abssec } { \l_@@_ref_int } - \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_b_int } - \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_b_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_b_int } = { \l_@@_ref_b_int } && - \int_compare_p:nNn - { \l_@@_lbl_int } = { \l_@@_ref_int + 1 } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { zc@abssec } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { zc@abssec } { \l_@@_ref_int } + \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_b_int } + \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_b_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_b_int } = { \l_@@_ref_b_int } && + \int_compare_p:nNn + { \l_@@_lbl_int } = { \l_@@_ref_int + 1 } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_prevsec:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { zc@abssec } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { zc@abssec } { \l_@@_ref_int } - \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_b_int } - \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_b_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_b_int } = { \l_@@_ref_b_int } && - \int_compare_p:nNn - { \l_@@_lbl_int } = { \l_@@_ref_int - 1 } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { zc@abssec } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { zc@abssec } { \l_@@_ref_int } + \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_b_int } + \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_b_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_b_int } = { \l_@@_ref_b_int } && + \int_compare_p:nNn + { \l_@@_lbl_int } = { \l_@@_ref_int - 1 } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_secsafter:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { zc@abssec } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { zc@abssec } { \l_@@_ref_int } - \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_b_int } - \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_b_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_b_int } = { \l_@@_ref_b_int } && - \int_compare_p:nNn - { \l_@@_lbl_int } > { \l_@@_ref_int } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { zc@abssec } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { zc@abssec } { \l_@@_ref_int } + \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_b_int } + \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_b_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_b_int } = { \l_@@_ref_b_int } && + \int_compare_p:nNn + { \l_@@_lbl_int } > { \l_@@_ref_int } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } \prg_new_protected_conditional:Npnn \@@_check_secsbefore:nn #1#2 { F } { \group_begin: - \bool_set_true:N \l_@@_integer_bool - \zrefcheck_get_asint:nnn {#1} { zc@abssec } { \l_@@_lbl_int } - \zrefcheck_get_asint:nnn {#2} { zc@abssec } { \l_@@_ref_int } - \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_b_int } - \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_b_int } - \bool_lazy_and:nnTF - { \l_@@_integer_bool } - { - \int_compare_p:nNn - { \l_@@_lbl_b_int } = { \l_@@_ref_b_int } && - \int_compare_p:nNn - { \l_@@_lbl_int } < { \l_@@_ref_int } && - ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && - ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } - } - { \group_insert_after:N \prg_return_true: } - { \group_insert_after:N \prg_return_false: } + \bool_set_true:N \l_@@_integer_bool + \zrefcheck_get_asint:nnn {#1} { zc@abssec } { \l_@@_lbl_int } + \zrefcheck_get_asint:nnn {#2} { zc@abssec } { \l_@@_ref_int } + \zrefcheck_get_asint:nnn {#1} { zc@abschap } { \l_@@_lbl_b_int } + \zrefcheck_get_asint:nnn {#2} { zc@abschap } { \l_@@_ref_b_int } + \bool_lazy_and:nnTF + { \l_@@_integer_bool } + { + \int_compare_p:nNn + { \l_@@_lbl_b_int } = { \l_@@_ref_b_int } && + \int_compare_p:nNn + { \l_@@_lbl_int } < { \l_@@_ref_int } && + ! \int_compare_p:nNn { \l_@@_lbl_int } = { 0 } && + ! \int_compare_p:nNn { \l_@@_ref_int } = { 0 } + } + { \group_insert_after:N \prg_return_true: } + { \group_insert_after:N \prg_return_false: } \group_end: } % \end{macrocode} @@ -1906,6 +1897,17 @@ % % % +% \subsubsection{Manual} +% +% \begin{macro}{ \@@_check_manual:nn } +% \begin{macrocode} +\prg_new_protected_conditional:Npnn \@@_check_manual:nn #1#2 { F } + { \prg_return_false: } +% \end{macrocode} +% \end{macro} +% +% +% % \section{\pkg{zref-clever} integration} % % diff --git a/macros/latex/contrib/zref-clever/CHANGELOG.md b/macros/latex/contrib/zref-clever/CHANGELOG.md index 0298bbd36a..a48047cdeb 100644 --- a/macros/latex/contrib/zref-clever/CHANGELOG.md +++ b/macros/latex/contrib/zref-clever/CHANGELOG.md @@ -1,6 +1,14 @@ # Changelog -## [Unreleased](https://github.com/gusbrs/zref-clever/compare/v0.4.1...HEAD) +## [Unreleased](https://github.com/gusbrs/zref-clever/compare/v0.4.2...HEAD) + +## [v0.4.2](https://github.com/gusbrs/zref-clever/compare/v0.4.1...v0.4.2) (2023-08-14) + +### Changed +- Thanks to better support for `zref` in `memoir`, the corresponding + compatibility module has been simplified and made more robust, without loss + of functionality. +- Use `\label` instead of `\zlabel` in regression tests. ## [v0.4.1](https://github.com/gusbrs/zref-clever/compare/v0.4.0...v0.4.1) (2023-06-19) diff --git a/macros/latex/contrib/zref-clever/zref-clever-code.pdf b/macros/latex/contrib/zref-clever/zref-clever-code.pdf index f87257bca4..0ff0e7173a 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-doc.pdf b/macros/latex/contrib/zref-clever/zref-clever-doc.pdf index 18256a8c36..248321f082 100644 Binary files a/macros/latex/contrib/zref-clever/zref-clever-doc.pdf 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 index 65235075ba..69584c2fb6 100644 --- a/macros/latex/contrib/zref-clever/zref-clever-doc.tex +++ b/macros/latex/contrib/zref-clever/zref-clever-doc.tex @@ -67,7 +67,7 @@ \NewDocumentCommand\username{m}{`\texttt{#1}'} \makeatletter -\newcommand{\zcrequiredkernelversion}{\zc@required@kernel@version} +\newcommand{\zcrequiredkernel}{\zrefclever@required@kernel} \makeatother \setlength{\marginparsep}{2\labelsep} @@ -416,12 +416,11 @@ using \cs{zcsetup} (see \zcref{sec:user-interface}). \pkg{zref-clever} requires \pkg{zref}, particularly its \pkg{zref-base}, \pkg{zref-user} and \pkg{zref-abspage} modules, and the \LaTeX{} kernel -\zcrequiredkernelversion{}, or newer. It requires UTF-8 input encoding, which -has been the kernel's default for some time. 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-hyperref} and \pkg{zref-xr} -modules. +\zcrequiredkernel{}, or newer. It requires UTF-8 input encoding, which has +been the kernel's default for some time. 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-hyperref} and \pkg{zref-xr} modules. \section{User interface} @@ -2370,22 +2369,15 @@ 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}. +This compatibility module provides support for some of \cls{memoir}'s +cross-referencing features. Namely, it: i) sets counter types for counters +\texttt{subfigure}, \texttt{subtable}, \texttt{poemline} (used in the +\env{verse} environment), \texttt{sidefootnote}, and \texttt{pagenote}; ii) +configures resetting behavior (\opt{counterresetby} option) for +\texttt{subfigure} and \texttt{subtable} counters; iii) provides 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}. \DescribeOption{amsmath} % The module ensures proper \opt{currentcounter} values are in place for the @@ -2598,6 +2590,7 @@ were generously provided by (in chronological order): % 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 + % 2023-07-27: https://chat.stackexchange.com/transcript/message/64067726#64067726 Phelype Oleinik, % 2021-08-20: https://tex.stackexchange.com/q/611370 (comments) % 2021-09-09: https://tex.stackexchange.com/a/614704 @@ -2623,6 +2616,7 @@ were generously provided by (in chronological order): % 2023-01-02: https://chat.stackexchange.com/transcript/message/62684358#62684358 % and following discussion. % 2023-02-10: https://tex.stackexchange.com/a/674846 + % 2023-07-27: https://chat.stackexchange.com/transcript/message/64067575#64067575 Frank Mittelbach, % 2021-10-14: https://github.com/latex3/latex2e/issues/687 \username{samcarter}, @@ -2648,10 +2642,20 @@ were generously provided by (in chronological order): 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' + 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 + and Lars Madsen. + % 2023-07-24: https://chat.stackexchange.com/transcript/message/64039717#64039717 + % and following discussion. + % 2023-07-26: https://chat.stackexchange.com/transcript/message/64057725#64057725 + % 2023-07-31: https://chat.stackexchange.com/transcript/message/64105457#64105457 + % and following discussion. + % 2023-08-08: Improved 'zref' and 'zref-clever' support for 'memoir' with + % v3.8. Email exchange "Subject: [FR] Improve support for zref + % in memoir", starting with + % rfc822msgid:CAM9ALR84v=nUTO14moPhbuDjQx9EJ1pcWAku5FdwOo9hbadwYA@mail.gmail.com. The package's language files have been provided or improved thanks to: Denis Bitouzé (French), diff --git a/macros/latex/contrib/zref-clever/zref-clever.dtx b/macros/latex/contrib/zref-clever/zref-clever.dtx index 044e23adbd..f14fb7601d 100644 --- a/macros/latex/contrib/zref-clever/zref-clever.dtx +++ b/macros/latex/contrib/zref-clever/zref-clever.dtx @@ -151,25 +151,23 @@ % we require that too. Hence we make the cut at this latter kernel release. % % \begin{macrocode} -\newcommand{\zc@required@kernel@version}{2023-06-01} -\NeedsTeXFormat{LaTeX2e} +\def\zrefclever@required@kernel{2023-06-01} +\NeedsTeXFormat{LaTeX2e}[\zrefclever@required@kernel] \providecommand\IfFormatAtLeastTF{\@ifl@t@r\fmtversion} -\IfFormatAtLeastTF{\zc@required@kernel@version} +\IfFormatAtLeastTF{\zrefclever@required@kernel} {} {% \PackageError{zref-clever}{LaTeX kernel too old} {% - 'zref-clever' requires a LaTeX kernel \zc@required@kernel@version\space or newer.% - \MessageBreak Loading will abort!% + 'zref-clever' requires a LaTeX kernel \zrefclever@required@kernel\space or newer.% }% - \endinput }% % \end{macrocode} % % % Identify the package. % \begin{macrocode} -\ProvidesExplPackage {zref-clever} {2023-06-19} {0.4.1} +\ProvidesExplPackage {zref-clever} {2023-08-14} {0.4.2} {Clever LaTeX cross-references based on zref} % \end{macrocode} % @@ -3768,6 +3766,10 @@ % This allows one to manually specify the reference type. It is the % equivalent of \pkg{cleveref}'s optional argument to \cs{label}. % +% NOTE \pkg{tcolorbox} uses the \opt{reftype} option to support its \opt{label +% type} option when \opt{label is zlabel}. Hence \emph{don't} make any +% breaking changes here without previous communication. +% % \begin{macrocode} \tl_new:N \l_@@_reftype_override_tl \keys_define:nn { zref-clever/label } @@ -7405,7 +7407,7 @@ % This avoids using the internal \cs[replace=false]{hyper@@link}, using only % public \pkg{hyperref} commands (see % \url{https://github.com/latex3/hyperref/issues/229#issuecomment-1093870142}, -% thanks \contributor{Ulrike Fisher}). +% thanks \contributor{Ulrike Fischer}). % \begin{syntax} % \cs{@@_hyperlink:nnn} \Arg{url/file} \Arg{anchor} \Arg{text} % \end{syntax} @@ -7816,38 +7818,24 @@ % \subsection{\opt{memoir}} % % The \cls{memoir} document class has quite a number of cross-referencing -% 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. -% Fortunately, however, the kernel's new \texttt{label} hook, and the -% \opt{labelhook} option, make things somewhat easier. -% -% \begin{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 -% subcaptioning commands, namely: \cs{subcaption}, \cs{contsubcaption}, -% \cs{subbottom}, \cs{contsubbottom}, \cs{subtop}. This functionality is -% implemented by \cls{memoir} by setting a \emph{second label} with prefix -% \texttt{sub@\meta{label}}, and storing there just that part of interest. -% With \pkg{zref} this part is easier, since we can just add an extra -% property and retrieve it later on. The thing is that it is hard to find a -% place to hook into to add the property to the \texttt{main} list, since -% \cls{memoir} does not really consider the possibility of some other -% command setting labels. \cs{@memsubcaption} is the best place to hook I -% could find. It is used by subcaptioning commands, and only those. And -% there is no hope for an environment hook in this case anyway. -% \item \cls{memoir}'s \cs{footnote}, \cs{verbfootnote}, \cs{sidefootnote} and -% \cs{pagenote}, just as the regular \cs{footnote} until recently in the -% kernel, do not set \cs{@currentcounter} alongside \cs{@currentlabel}, -% proper referencing to them requires setting the type for it. -% \item Note that \cls{memoir}'s appendix features ``emulates'' the -% \pkg{appendix} package, hence the corresponding compatibility module is -% loaded for \cls{memoir} even if that package is not itself loaded. The -% same is true for the \cs{appendix} command module, since it is also -% defined. -% \end{enumerate} -% +% related features, mostly dealing with captions, subfloats, and notes. It +% used to be the case that a good number of them where implemented in ways +% which make difficult the use of \pkg{zref}, particularly \cs{zlabel}, short +% of redefining the whole stuff ourselves. Problematic cases included: i) +% side captions; ii) bilingual captions; iii) subcaption references; and iv) +% footnotes, verbfootnotes, sidefootnotes, and pagenotes. +% +% However, since then, the situation has much improved, given two main +% upstream changes: i) the kernel's new \texttt{label} hook with argument, +% introduced in the release of 2023-06-01 (thanks to \contributor{Ulrike +% Fischer} and \contributor{Phelype Oleinik}) and ii) better support for +% \pkg{zref} and \pkg{zref-clever} from the \cls{memoir} class itself, with +% release of \texttt{2023/08/08 v3.8} (thanks to \contributor{Lars Madsen}). +% +% Also, note that \cls{memoir}'s appendix features ``emulates'' the +% \pkg{appendix} package, hence the corresponding compatibility module is +% loaded for \cls{memoir} even if that package is not itself loaded. The same +% is true for the \cs{appendix} command module, since it is also defined. % % \begin{macrocode} \@@_compat_module:nn { memoir } @@ -7876,27 +7864,15 @@ } , } % \end{macrocode} -% Support for \texttt{subcaption} reference. +% Support for \texttt{subcaption} references. % \begin{macrocode} \zref@newprop { subcaption } { \cs_if_exist_use:c { @@@@thesub \@captype } } - \AddToHook{ cmd / @memsubcaption / before } + \AddToHook{ memoir/subcaption/aftercounter } { \zref@localaddprop \ZREF@mainlist { subcaption } } % \end{macrocode} -% Support for \cs{footnote}, \cs{verbfootnote}, \cs{sidefootnote}, and -% \cs{pagenote}. +% Support for \cs{sidefootnote} and \cs{pagenote}. % \begin{macrocode} - \tl_new:N \l_@@_memoir_footnote_type_tl - \tl_set:Nn \l_@@_memoir_footnote_type_tl { footnote } - \AddToHook { env / minipage / begin } - { \tl_set:Nn \l_@@_memoir_footnote_type_tl { mpfootnote } } - \AddToHook { cmd / @makefntext / before } - { - \@@_zcsetup:x - { currentcounter = \l_@@_memoir_footnote_type_tl } - } - \AddToHook { cmd / @makesidefntext / before } - { \@@_zcsetup:n { currentcounter = sidefootnote } } \@@_zcsetup:n { countertype = @@ -7905,8 +7881,6 @@ pagenote = endnote , } , } - \AddToHook { file / \jobname.ent / before } - { \@@_zcsetup:x { currentcounter = pagenote } } \msg_info:nnn { zref-clever } { compat-class } { memoir } } } diff --git a/obsolete/macros/latex/contrib/substitutefont/README b/obsolete/macros/latex/contrib/substitutefont/README new file mode 100644 index 0000000000..72c0c57c44 --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/README @@ -0,0 +1,121 @@ +substitutefont +-------------- +Combine font families +********************* + +:Copyright: © 2010 Günter Milde +:Contributor: Special thanks to Ulrike Fischer who provided + the indirect definition with active ``\nfss@catcodes``. +:Licence: This work may be distributed and/or modified under the + conditions of the `LaTeX Project Public License`_, + either version 1.3 of this license or (at your option) + any later version. + +:Abastract: In traditional 8-bit LaTeX, fonts are restricted to 256 glyphs + per file. To support different languages and scripts, the New + Font Selection Scheme uses a set of TeX font encodings + [encguide]_. + + Many Latin TeX fonts do not support Greek or Cyrillic, while + many non-Latin fonts are extensions of a Latin font family but + use a different family name due to license reasons or the + creators preference. + + The `substitutefont` package facilitates the task to set up a + font family as substitute for another one in a specified `font + encoding `_. + +:News: The package is obsoleted by the NFSS command + ``\DeclareFontfamilySubstitution`` added to the + LaTeX kernel in the 2020-02 release [ltnews31]_. + + +:Source: ``_ + + The literate source was converted with PyLit_ to reStructuredText_ and + with Docutils_ to the HTML documentation ``__. + +Usage +===== + +.. admonition:: This package is obsolete. + + Authors are encouraged to use the command + ``\DeclareFontfamilySubstitution`` provided by the LaTeX kernel. + + Existing documents can be updated by removing + ``\usepackage{substitutefont}`` and replacing all uses of + ``\substitutefont`` with ``\DeclareFontFamilySubstitution``. + + +The macro ``\substitutefont{}{}{}`` selects +the font family as replacement for in the font +encoding . The substitution must be defined before the first use +of the specified font encoding, preferably in the document preamble. +In contrast to the deprecated ``\substitutefontfamily`` macro provided by +Babel_, ``\substitutefont`` does not write auxiliary files. + +The ```` is one of the LaTeX font encodings [encguide]_, e.g., T1 +for Latin, T2A for Cyrillic(Russian), or LGR for Greek. + +For ```` and ````, use the «TeX names» of the font. +They are defined by a TeX font package's ``*.fd`` or ``*.sty`` file(s). +LaTeX stores the default family names for Roman, Sans-Serif, and Teletype +fonts in the ``\rmdefault``, ``\sfdefault``, and ``\ttdefault`` macros +respectively. + +Example: Set the font family to Palatino using the standard package +`mathpazo` for Latin and `GFS Didot`_ for Greek:: + + \usepackage[sc,slantedGreek]{mathpazo} + \usepackage{substitutefont} + \substitutefont{LGR}{\rmdefault}{udidot} + +For details on LaTeX font selection, see [encguide]_ and [fntguide]_. + +Tests/Examples +============== + +* Simple test with Latin fonts: + ``__, ``__ +* Palatino with Greek from `GFS Didot`_: + ``__, ``__ +* Times/Helvetica/Courier (newtx_) with `GFS Artemisia`_, `GFS + Neohellenic`_, and teletype from the CB_ fonts: + ``__, ``__ + (see also package txfontsb_) +* Latin Modern with Cyrillic from `CM LGC`_: + ``__, ``__ +* Times/Helvetica/Courier (TeX Gyre) with Cyrillic ParaType_ fonts: + ``__, ``__ + + +References +========== + +.. [encguide] Frank Mittelbach, Robin Fairbairns, Werner Lemberg, + LaTeX3 Project Team, `LaTeX font encodings`: + https://mirrors.ctan.org/macros/latex/doc/encguide.pdf. + +.. [fntguide] LaTeX3 Project Team, `LaTeX 2e font selection`: + https://mirrors.ctan.org/macros/latex/doc/fntguide.pdf. + +.. [ltnews31] `LaATeX News`, Issue 31, February 2020, p. 3: + https://www.latex-project.org/news/latex2e-news/ltnews31.pdf. + +.. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt + +.. _Babel: https://ctan.org/pkg/babel +.. _CM LGC: https://ctan.org/pkg/cm-lgc +.. _CB: https://ctan.org/pkg/cbgreek-complete +.. _GFS Artemisia: https://ctan.org/pkg/gfsartemisia +.. _GFS Didot: https://ctan.org/pkg/gfsdidot +.. _GFS Neohellenic: https://ctan.org/pkg/gfsneohellenic +.. _mathpazo: https://ctan.org/pkg/mathpazo +.. _newtx: https://ctan.org/pkg/newtx +.. _txfontsb: https://ctan.org/pkg/txfontsb +.. _ParaType: https://ctan.org/pkg/paratype + +.. _PyLit: https://pypi.org/project/pylit/ +.. _reStructuredText: http://docutils.sourceforge.net/rst.html +.. _Docutils: http://docutils.sourceforge.net/rst.html diff --git a/obsolete/macros/latex/contrib/substitutefont/artemisia-greek.sty b/obsolete/macros/latex/contrib/substitutefont/artemisia-greek.sty new file mode 100644 index 0000000000..efab528a0d --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/artemisia-greek.sty @@ -0,0 +1,23 @@ +% :Copyright: © 2013, 2023 Günter Milde +% :Licence: This work may be distributed and/or modified under the +% conditions of the `LaTeX Project Public License`_, either +% version 1.3 of this license or any later version. +% +% :Identification: +% :: + +\ProvidesFile{artemisia-greek.sty} +[2023-08-12 v0.2 Artemisia as Greek complement to default Roman font.] + +\NeedsTeXFormat{LaTeX2e} + +% make sure LGR is available +\@ifundefined{ver@lgrenc.def} + {\input{lgrenc.def}} + {} + +% set font substitution +% \RequirePackage{substitutefont} +% \substitutefont{LGR}{\rmdefault}{artemisia} + +\DeclareFontFamilySubstitution{LGR}{\rmdefault}{artemisia} diff --git a/obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.pdf b/obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.pdf new file mode 100644 index 0000000000..d55e85d379 Binary files /dev/null and b/obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.pdf differ diff --git a/obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.tex b/obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.tex new file mode 100644 index 0000000000..e8d5f5bf0b --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/cyrillic-lm-lgc.tex @@ -0,0 +1,90 @@ +\documentclass[a4paper]{scrartcl} +\usepackage[T2A, T1]{fontenc} +\usepackage[russian,english]{babel} +\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} +\usepackage{bookmark} +\usepackage{parskip} +\pagestyle{empty} + +% Combine "Latin Modern" fonts for Latin and +% "CLG" fonts for Cyrillic. +\usepackage{lmodern} +% Use LaTeX kernel macro instead of the obsolete "substitutefont" package: +\DeclareFontFamilySubstitution{T2A}{lmr}{fcm} +\DeclareFontFamilySubstitution{T2A}{lmss}{fcs} +\DeclareFontFamilySubstitution{T2A}{lmtt}{fct} +% \usepackage{substitutefont} +% \substitutefont{T2A}{lmr}{fcm} +% \substitutefont{T2A}{lmss}{fcs} +% \substitutefont{T2A}{lmtt}{fct} + + +\begin{document} + +\section*{Cyrillic fonts to match Latin Modern} + +Declaring the font encoding T1 (by inclusion in the option list for fontenc) +is recommended, if the text contains accented Latin characters as is usual +in most European languages and even in some English words (e.g. \emph{Résumé +of Nathan Söderblom}). However, the original Computer Modern fonts (CM) are +not available in T1 encoding. There are two alternative CM-compatible vector +fonts supporting T1: + +\begin{itemize} + +\item The \href{https://ctan.org/pkg/cm-super}{CM-Super} package installes + itself as CM substitute and is used for Cyrillic text, too. + +\item \href{https://ctan.org/pkg/lm}{Latin Modern} does not include Cyrillic + fonts. The default substitution is CM, either CM-Super or + \href{https://ctan.org/pkg/LH}{LH} bitmap fonts. +\end{itemize} + +The preamble code of this document uses \emph{substitutefont} to set up the +vector-fonts from the \href{https://ctan.org/pkg/cm-lgc}{cm-lgc} +package as a Cyrillic replacement for Latin Modern. + +\section{\foreignlanguage{russian}{Тест шрифтов}} + +\newcommand{\teststring}{Hello world! + \foreignlanguage{russian}{Здравствуй, мир!}} + +\begin{description} + \item [Normal:] \teststring + + \item [it:] \textit{\teststring} + + \item [sl:] \textsl{\teststring} + + \item [bf:] \textbf{\teststring} + + \item [bf it:] \textbf{\textit\teststring} + + \item [sc:] \textsc{\teststring} + + % \item [bf sc:] \textsc{\textbf\teststring} missing in Didot + + \item [sf:] \textsf{\teststring} + + \item [sf bf:] \textsf{\textbf\teststring} + + \item [sf sl:] \textsf{\textsl\teststring} + + \item [sf sc:] \textsf{\textsc\teststring} + + \item [tt:] \texttt{\teststring} + +\end{description} + +\selectlanguage{english} + +The Russian language definition switches the font encoding from +\emph{cyrillicencoding} to \emph{latinencoding} when changing from Russian +to another language. Babel base sets the variable \emph{latinencoding} to T1 +if this font encoding is declared and to OT1 else. + +\selectlanguage{russian} + +До свидания! + +\end{document} diff --git a/obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.pdf b/obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.pdf new file mode 100644 index 0000000000..06cbd6b1c5 Binary files /dev/null and b/obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.pdf differ diff --git a/obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.tex b/obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.tex new file mode 100644 index 0000000000..e005a5300e --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/cyrillic-paratype.tex @@ -0,0 +1,98 @@ +\documentclass[a4paper]{article} +\usepackage[T2A,T1]{fontenc} +\usepackage[russian,english]{babel} +\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} +\usepackage{bookmark} + +\pagestyle{empty} + +% Combine "TeX Gyre" fonts for Latin and "ParaType" fonts for Cyrillic: + +% 1. Load paratype font-packages to get scaled Paratype fonts +\usepackage[scaled=0.95]{PTSerif} +\usepackage[scaled=0.95]{PTSans} +\usepackage[scaled=0.9]{PTMono} + +% 2. Load TeX Gyre font-packages (after Paratype to use them as default fonts) +\usepackage{tgtermes} +\usepackage[scale=.90]{tgheros} +\usepackage{tgcursor} + +% 3. Set up the substitutions: +% Use LaTeX kernel macro instead of the obsolete "substitutefont" package: +\DeclareFontFamilySubstitution{T2A}{lmr}{fcm} +\DeclareFontFamilySubstitution{T2A}{\rmdefault}{PTSerif-TLF} +\DeclareFontFamilySubstitution{T2A}{\sfdefault}{PTSans-TLF} +\DeclareFontFamilySubstitution{T2A}{\ttdefault}{PTMono-TLF} +% \usepackage{substitutefont} +% \substitutefont{T2A}{\rmdefault}{PTSerif-TLF} +% \substitutefont{T2A}{\sfdefault}{PTSans-TLF} +% \substitutefont{T2A}{\ttdefault}{PTMono-TLF} + + +\begin{document} + +\section*{Cyrillic fonts to match Times/Helvetica/Curier} + +The \href{https://ctan.org/pkg/tex-gyre}{TeX Gyre} project provides +extensions to the URW standard Postscript fonts. Cyrillic extensions by +Valek Filippov were part of TeXGyre but removed due to license +incompatibility. + +These fonts are still available in the +\href{http://packages.debian.org/stable/scalable-cyrfonts-tex}% +{scalable-cyrfonts-tex} Debian package but not on CTAN. Furthermore, both +\href{https://ctan.org/pkg/fouriernc}{Fourier New Century} and +\emph{Free New Century} use the TeX-name \emph{fnc}. Therefore +\emph{scalable-cyrfonts-tex} conflicts with the Debian +\href{http://packages.debian.org/stable/texlive-fonts-extra}% +{texlive-fonts-extra} package. + +The Cyrillic fonts from the +\href{https://ctan.org/pkg/paratype}{paratype} package are not exact +matches but fit quite well if they are downscaled a bit. As the Paratype +package includes also T1 encoded fonts, Paratype fonts can be used for both +Latin and Cyrillic text. + +Other vector fonts supporting Cyrillic include +\href{https://ctan.org/pkg/dejavu}{Deja Vu}, +\href{https://ctan.org/pkg/droid}{Droid}, +\href{https://ctan.org/pkg/gentium-tug}{Gentium}, and +\href{https://ctan.org/pkg/libertine}{Linux Libertine}. + +\section*{\selectlanguage{russian}Тест шрифтов} + +\newcommand{\teststring}{Hello world! + \foreignlanguage{russian}{Здравствуй, мир!}} + +\begin{description} + \item [Normal:] \teststring + + \item [it:] \textit{\teststring} + + \item [sl:] \textsl{\teststring}% + \footnote{TeX Gyre merges slanted and italic shapes} + + \item [bf:] \textbf{\teststring} + + \item [bf it:] \textbf{\textit\teststring} + + \item [sc:] not available in Paratype % \textsc{\teststring} + + \item [bf sc:] missing % \textsc{\textbf\teststring} + + \item [sf:] \textsf{\teststring} + + \item [sf bf:] \textsf{\textbf\teststring} + + \item [sf sl:] \textsf{\textsl\teststring} + + \item [sf sc:] not available in Paratype % \textsf{\textsc\teststring} + + \item [tt:] \texttt{\teststring} + +\end{description} + + + +\end{document} diff --git a/obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.pdf b/obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.pdf new file mode 100644 index 0000000000..009a755071 Binary files /dev/null and b/obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.pdf differ diff --git a/obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.tex b/obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.tex new file mode 100644 index 0000000000..e125f27948 --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/greek-palatino-didot.tex @@ -0,0 +1,91 @@ +% Example and test for the substitutefont package: +\documentclass[a4paper,DIV14]{scrartcl} +\usepackage{parskip} +\usepackage[LGR,T1]{fontenc} +\usepackage[greek,english]{babel} +\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} +\usepackage{bookmark} +\pagestyle{empty} + +% \usepackage{substitutefont} % obsolete + +% Serif +\usepackage[sc,slantedGreek]{mathpazo} +\DeclareFontFamilySubstitution{LGR}{\rmdefault}{udidot} + +% Sans +\usepackage[scale=.90]{tgheros} +\DeclareFontFamilySubstitution{LGR}{\sfdefault}{neohellenic} + +% Monospaced +% \usepackage[matchlowercase]{tgcursor} +\renewcommand{\ttdefault}{txtt} +\DeclareFontFamilySubstitution{LGR}{\ttdefault}{cmtt} % CB fonts +% \DeclareFontFamilySubstitution{LGR}{\ttdefault}{fdm} % Droid Sans Mono + + +% Teststring +\newcommand{\alphabet}{% + abcdefghjiklmnoprqrstuvwxyzäöüß + \foreignlanguage{greek}{abgdezhjiklmnxoprsctufqyw} \\ + ABCDEFGHJIKLMNOPRQRSTUVWXYZÄÖÜ + \foreignlanguage{greek}{ABGDEZHJIKLMNXOPRSTUFQYW} +} + +\begin{document} + +\section*{Palatino/Helvetica/TXTT and Greek replacements} + +Default font families after loading mathpazo, tgheros, and tgcursor:\\ +familydefault: \familydefault{}, +rmdefault: \rmdefault{}, +sfdefault: \sfdefault{}, +ttdefault: \ttdefault{} + +Palatino (mathpazo) with GFS Didot: + +\begin{description} + \item [Normal:] \alphabet + + \item [it:] \textit{\alphabet} + + \item [sl:] \textsl{\alphabet} + + \item [bf:] \textbf{\alphabet} + + \item [bf it:] \textbf{\textit\alphabet} + + \item [sc:] \textsc{\alphabet} + + % \item [bf sc:] \textsc{\textbf\alphabet} + +\end{description} + +Helvetica (TG Heros) with GFS Neohellenic: + +\begin{description} + + \item [sf:] \textsf{\alphabet} + + \item [sf bf:] \textsf{\textbf\alphabet} + + \item [sf sl:] \textsf{\textsl\alphabet} + + \item [sf sc:] \textsf{\textsc\alphabet} + +\end{description} + +There is no Greek extension for the monospaced standard PS font Curier. +A good replacement are the teletype fonts from +\href{https://ctan.org/pkg/newtx}{txfonts} and +\href{https://ctan.org/pkg/cbgreek-complete}{CB-Greek}: + +\begin{description} + + \item [tt:] \texttt{\alphabet} + % \item [tt bf:] \texttt{\textbf\alphabet} % not in CB-Greek + \item [tt it:] \texttt{\textit\alphabet} + +\end{description} + +\end{document} diff --git a/obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.pdf b/obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.pdf new file mode 100644 index 0000000000..39b20c4174 Binary files /dev/null and b/obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.pdf differ diff --git a/obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.tex b/obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.tex new file mode 100644 index 0000000000..88d96d4fba --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/greek-times-artemisia.tex @@ -0,0 +1,75 @@ +% Example and test for the substitutefont package: +\documentclass{article} +\usepackage{parskip} +\usepackage[LGR,T1]{fontenc} +\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} +\usepackage{bookmark} +\pagestyle{empty} + +\usepackage{substitutefont} + +% Serif +\usepackage[scaled=0.97]{newtxtext} +\substitutefont{LGR}{\rmdefault}{artemisia} + +% Sans +% \substitutefont{LGR}{\sfdefault}{neohellenic} +\substitutefont{LGR}{\sfdefault}{maksf} + +% Monospaced +\substitutefont{LGR}{\ttdefault}{cmtt} % CB fonts + + +% Teststring +\newcommand{\alphabet}{% + abcdefghjiklmnoprqrstuvwxyzäöüß + {\fontencoding{LGR}\selectfont abgdezhjiklmnxoprsctufqyw} \\ + ABCDEFGHJIKLMNOPRQRSTUVWXYZÄÖÜ + {\fontencoding{LGR}\selectfont ABGDEZHJIKLMNXOPRSTUFQYW}% +} + +\begin{document} + +\section*{Times/Helvetica/TXTT and Greek replacements} + +Use Times, Helvetica, and TXTT (from the +\href{https://ctan.org/pkg/newtx}{newtx} package) with +\href{https://ctan.org/pkg/gfsartemisia}{GFS Artemisia}, +\href{https://ctan.org/pkg/kerkis}{Kerkis Sans}, +and \href{https://ctan.org/pkg/cbgreek-complete}{CB-Fonts Mono}, +for Greek text.\footnote{% +See the \href{https://ctan.org/pkg/txfontsb}{txfontsb} +package for an alternative.} + +\begin{description} + \item [Normal:] \alphabet + + \item [it:] \textit{\alphabet} + + \item [sl:] \textsl{\alphabet} + + \item [bf:] \textbf{\alphabet} + + \item [bf it:] \textbf{\textit\alphabet} + + \item [sc:] \textsc{\alphabet} + + % \item [bf sc:] \textsc{\textbf\alphabet} missing in Bodoni + + \item [sf:] \textsf{\alphabet} + + \item [sf bf:] \textsf{\textbf\alphabet} + + \item [sf sl:] \textsf{\textsl\alphabet} + + \item [sf sc:] \textsf{\textsc\alphabet} + + \item [tt:] \texttt{\alphabet} + + % \item [tt bf:] \texttt{\textbf\alphabet} % not in CB-Greek + + \item [tt it:] \texttt{\textit\alphabet} + +\end{description} + +\end{document} diff --git a/obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.pdf b/obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.pdf new file mode 100644 index 0000000000..78d00695ef Binary files /dev/null and b/obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.pdf differ diff --git a/obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.tex b/obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.tex new file mode 100644 index 0000000000..75a08664b1 --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/greek-times-freeserifb.tex @@ -0,0 +1,73 @@ +% Example and test for the substitutefont package: +\documentclass{article} +\usepackage{parskip} +\usepackage[LGR,T1]{fontenc} +\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} +\usepackage{bookmark} +\pagestyle{empty} + +% \usepackage{substitutefont} % obsolete + +% Serif +\usepackage[scaled=0.97]{newtxtext} +\DeclareFontFamilySubstitution{LGR}{\rmdefault}{txrc} + +% Sans +\DeclareFontFamilySubstitution{LGR}{\sfdefault}{neohellenic} +% \DeclareFontFamilySubstitution{LGR}{\sfdefault}{epigrafica} + +% Monospaced +\DeclareFontFamilySubstitution{LGR}{\ttdefault}{cmtt} % CB fonts + + +% Teststring +\newcommand{\alphabet}{% + abcdefghjiklmnoprqrstuvwxyzäöüß + {\fontencoding{LGR}\selectfont abgdezhjiklmnxoprsctufqyw} \\ + ABCDEFGHJIKLMNOPRQRSTUVWXYZÄÖÜ + {\fontencoding{LGR}\selectfont ABGDEZHJIKLMNXOPRSTUFQYW}% +} + +\begin{document} + +\section*{Times/Helvetica/TXTT and Greek replacements} + +Use Times, Helvetica, and TXTT (from the +\href{https://ctan.org/pkg/newtx}{newtx} package) with +\href{https://ctan.org/pkg/txfontsb}{FreeSerifb}, +\href{https://ctan.org/pkg/gfsneohellenic}{GFS Neohellenic}, +and \href{https://ctan.org/pkg/cbgreek-complete}{CB-Fonts}, +for Greek text. + +\begin{description} + \item [Normal:] \alphabet + + \item [it:] \textit{\alphabet} + + \item [sl:] \textsl{\alphabet} + + \item [bf:] \textbf{\alphabet} + + \item [bf it:] \textbf{\textit\alphabet} + + \item [sc:] \textsc{\alphabet} + + % \item [bf sc:] \textsc{\textbf\alphabet} missing in Bodoni + + \item [sf:] \textsf{\alphabet} + + \item [sf bf:] \textsf{\textbf\alphabet} + + \item [sf sl:] \textsf{\textsl\alphabet} + + \item [sf sc:] \textsf{\textsc\alphabet} + + \item [tt:] \texttt{\alphabet} + + % \item [tt bf:] \texttt{\textbf\alphabet} % not in CB-Greek + + \item [tt it:] \texttt{\textit\alphabet} + +\end{description} + +\end{document} diff --git a/obsolete/macros/latex/contrib/substitutefont/substitutefont-doc.html b/obsolete/macros/latex/contrib/substitutefont/substitutefont-doc.html new file mode 100644 index 0000000000..2c95198cbe --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/substitutefont-doc.html @@ -0,0 +1,125 @@ + + + + + + + +substitutefont + + + + + +
+

substitutefont

+

Combine font families

+
+ + +
Contributor:
+

Special thanks to Ulrike Fischer who provided +the indirect definition with active \nfss@catcodes.

+
+
Licence:
+

This work may be distributed and/or modified under the +conditions of the LaTeX Project Public License, +either version 1.3 of this license or (at your option) +any later version.

+
+
Abastract:
+

In traditional 8-bit LaTeX, fonts are restricted to 256 glyphs +per file. To support different languages and scripts, the New +Font Selection Scheme uses a set of TeX font encodings +[encguide].

+

Many Latin TeX fonts do not support Greek or Cyrillic, while +many non-Latin fonts are extensions of a Latin font family but +use a different family name due to license reasons or the +creators preference.

+

The substitutefont package facilitates the task to set up a +font family as substitute for another one in a specified font +encoding.

+
+
News:
+

The package is obsoleted by the NFSS command +\DeclareFontfamilySubstitution added to the +LaTeX kernel in the 2020-02 release [ltnews31].

+
+
Source:
+

substitutefont.sty

+

The literate source was converted with PyLit to reStructuredText and +with Docutils to the HTML documentation substitutefont.sty.html.

+
+
+
+

Usage

+ +

The macro \substitutefont{<encoding>}{<family>}{<new-family>} selects +the font family <new-family> as replacement for <family> in the font +encoding <encoding>. The substitution must be defined before the first use +of the specified font encoding, preferably in the document preamble. +In contrast to the deprecated \substitutefontfamily macro provided by +Babel, \substitutefont does not write auxiliary files.

+

The <encoding> is one of the LaTeX font encodings [encguide], e.g., T1 +for Latin, T2A for Cyrillic(Russian), or LGR for Greek.

+

For <family> and <new-family>, use the «TeX names» of the font. +They are defined by a TeX font package’s *.fd or *.sty file(s). +LaTeX stores the default family names for Roman, Sans-Serif, and Teletype +fonts in the \rmdefault, \sfdefault, and \ttdefault macros +respectively.

+

Example: Set the font family to Palatino using the standard package +mathpazo for Latin and GFS Didot for Greek:

+
\usepackage[sc,slantedGreek]{mathpazo}
+\usepackage{substitutefont}
+\substitutefont{LGR}{\rmdefault}{udidot}
+

For details on LaTeX font selection, see [encguide] and [fntguide].

+
+
+

Tests/Examples

+ +
+
+

References

+
+
+[encguide] +(1,2,3) +

Frank Mittelbach, Robin Fairbairns, Werner Lemberg, +LaTeX3 Project Team, LaTeX font encodings: +https://mirrors.ctan.org/macros/latex/doc/encguide.pdf.

+
+
+[fntguide] +

LaTeX3 Project Team, LaTeX 2e font selection: +https://mirrors.ctan.org/macros/latex/doc/fntguide.pdf.

+
+
+[ltnews31] +

LaATeX News, Issue 31, February 2020, p. 3: +https://www.latex-project.org/news/latex2e-news/ltnews31.pdf.

+
+
+
+
+ + diff --git a/obsolete/macros/latex/contrib/substitutefont/substitutefont-test.pdf b/obsolete/macros/latex/contrib/substitutefont/substitutefont-test.pdf new file mode 100644 index 0000000000..7a3da290c2 Binary files /dev/null and b/obsolete/macros/latex/contrib/substitutefont/substitutefont-test.pdf differ diff --git a/obsolete/macros/latex/contrib/substitutefont/substitutefont-test.tex b/obsolete/macros/latex/contrib/substitutefont/substitutefont-test.tex new file mode 100644 index 0000000000..6c33a67122 --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/substitutefont-test.tex @@ -0,0 +1,53 @@ +\documentclass[a4paper]{article} +\usepackage[T1,OT1]{fontenc} +\usepackage{parskip} + +\title{Simple substitutefont test} +\author{Günter Milde} + +% Combine "Latin Modern" fonts for OT1 and Bookman for T1. +\usepackage{substitutefont} +\usepackage{lmodern} +% Substitution also works for fonts that exist in the specified encoding: +\substitutefont{T1}{lmr}{pbk} + +% \addto\extrasgerman{\fontencoding{T1}\selectfont} +% \addto\noextrasgerman{\fontencoding{\encodingdefault}\selectfont} + +\begin{document} + +\maketitle + +This document is a test that should work with any standard basic LaTeX +installation. For real use cases, see the test documents setting up matching +Latin and Greek or Cyrillic fonts. + +Some text in \encodingdefault{} encoding, the font is Latin Modern: +Résumé of Nathan Söderblom. + +% (Defining the substitution in the document body is possible (but not +% recommended) if it is done before the first use of a font in the specified +% encoding.) +% \substitutefont{T1}{lmr}{pbk} + +\fontencoding{T1}\selectfont + +Some text in T1 encoding, the font is Bookmark: Résumé of Nathan Söderblom% +\footnote{Compare the result of drag-and-drop or text search for words with +accented characters for OT1 and T1 encoded text.} + +\fontencoding{OT1}\selectfont + +Back to OT1 and Latin Modern. + +% The following substitution definition is ignored, because T1 fonts are +% already set up: +\substitutefont{T1}{lmr}{pag} + + + +\fontencoding{T1}\selectfont + +Some more text in T1 encoding and Bookmark. + +\end{document} diff --git a/obsolete/macros/latex/contrib/substitutefont/substitutefont.sty b/obsolete/macros/latex/contrib/substitutefont/substitutefont.sty new file mode 100644 index 0000000000..f3e5a086be --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/substitutefont.sty @@ -0,0 +1,81 @@ +% Easy font substitution +% ********************** +% +% :Copyright: © 2010 Günter Milde +% +% :Contributor: Special thanks to Ulrike Fischer who provided +% the indirect definition with active ``\nfss@catcodes``. +% +% :Licence: This work may be distributed and/or modified under the +% conditions of the `LaTeX Project Public License`_, either +% version 1.3 of this license or any later version. +% +% :Abstract: Provide the ``\substitutefont`` macro for defining +% substitute fonts for specified font encodings. +% +% :Identification: +% :: + +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{substitutefont} +[2023-08-13 v0.1.5 combine font families (obsolete)] + +% Changelog: +% .. class:: borderless +% +% ============ ===== ================================================ +% 2010-11-04 0.1 initial version +% 2012-04-30 0.1.1 documentation update, upload to CTAN +% 2012-07-05 0.1.2 documentation/example update +% 2012-07-07 0.1.3 bugfix (comment usage example) +% 2013-11-04 0.1.4 documentation update +% 2023-08-13 0.1.5 declare obsolete, update documentation and tests +% ============ ===== ================================================ +% +% +% Usage +% ===== +% +% The macro ``\substitutefont{}{}{}`` +% selects the font as replacement for if the font +% encoding is in the variants "normal", "italic", "slanted", +% and "small-caps" and the shapes "medium", "bold", and "bold-extended". +% +% Example: +% Palatino with the standard package `mathpazo`_ for Latin and +% `GFS Didot`_ for Greek: +% +% .. code:: latex +% +% \usepackage[sc,slantedGreek]{mathpazo} +% \usepackage{substitutefont} +% \substitutefont{LGR}{\rmdefault}{udidot} +% +% +% Implementation +% ============== +% :: + +\begingroup +\nfss@catcodes +\newcommand*{\substitutefont}[3]{% + \DeclareFontFamily{#1}{#2}{} + \DeclareFontShape{#1}{#2}{m}{n}{<->ssub * #3/m/n}{} + \DeclareFontShape{#1}{#2}{m}{it}{<->ssub * #3/m/it}{} + \DeclareFontShape{#1}{#2}{m}{sl}{<->ssub * #3/m/sl}{} + \DeclareFontShape{#1}{#2}{m}{sc}{<->ssub * #3/m/sc}{} + \DeclareFontShape{#1}{#2}{b}{n}{<->ssub * #3/b/n}{} + \DeclareFontShape{#1}{#2}{b}{it}{<->ssub * #3/b/it}{} + \DeclareFontShape{#1}{#2}{b}{sl}{<->ssub * #3/b/sl}{} + \DeclareFontShape{#1}{#2}{b}{sc}{<->ssub * #3/b/sc}{} + \DeclareFontShape{#1}{#2}{bx}{n}{<->ssub * #3/bx/n}{} + \DeclareFontShape{#1}{#2}{bx}{it}{<->ssub * #3/bx/it}{} + \DeclareFontShape{#1}{#2}{bx}{sl}{<->ssub * #3/bx/sl}{} + \DeclareFontShape{#1}{#2}{bx}{sc}{<->ssub * #3/bx/sc}{} +} +\global\let\substitutefont\substitutefont +\endgroup + +% .. _LaTeX Project Public License: http://www.latex-project.org/lppl.txt +% .. _GFS Didot: https://mirrors.ctan.org/help/Catalogue/entries/gfsdidot.html +% .. _mathpazo: https://ctan.org/pkg/mathpazo diff --git a/obsolete/macros/latex/contrib/substitutefont/substitutefont.sty.html b/obsolete/macros/latex/contrib/substitutefont/substitutefont.sty.html new file mode 100644 index 0000000000..4e4bf9a636 --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/substitutefont.sty.html @@ -0,0 +1,111 @@ + + + + + + + +Easy font substitution + + + + + +
+

Easy font substitution

+
+ + +
Contributor:
+

Special thanks to Ulrike Fischer who provided +the indirect definition with active \nfss@catcodes.

+
+
Licence:
+

This work may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either +version 1.3 of this license or any later version.

+
+
Identification:
+
\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{substitutefont}
+[2023-08-13 v0.1.5 combine font families (obsolete)]
+
+
+
+

Abstract

+

Provide the \substitutefont macro for defining +substitute fonts for specified font encodings.

+
+
+
Changelog:
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

2010-11-04

0.1

initial version

2012-04-30

0.1.1

documentation update, upload to CTAN

2012-07-05

0.1.2

documentation/example update

2012-07-07

0.1.3

bugfix (comment usage example)

2013-11-04

0.1.4

documentation update

2023-08-13

0.1.5

declare obsolete, update documentation and tests

+
+
+
+

Usage

+

The macro \substitutefont{<encoding>}{<family>}{<new-family>} +selects the font <new-family> as replacement for <family> if the font +encoding is <encoding> in the variants “normal”, “italic”, “slanted”, +and “small-caps” and the shapes “medium”, “bold”, and “bold-extended”.

+
+
Example:
+

Palatino with the standard package mathpazo for Latin and +GFS Didot for Greek:

+
\usepackage[sc,slantedGreek]{mathpazo}
+\usepackage{substitutefont}
+\substitutefont{LGR}{\rmdefault}{udidot}
+
+
+
+
+

Implementation

+
\begingroup
+\nfss@catcodes
+\newcommand*{\substitutefont}[3]{%
+ \DeclareFontFamily{#1}{#2}{}
+ \DeclareFontShape{#1}{#2}{m}{n}{<->ssub * #3/m/n}{}
+ \DeclareFontShape{#1}{#2}{m}{it}{<->ssub * #3/m/it}{}
+ \DeclareFontShape{#1}{#2}{m}{sl}{<->ssub * #3/m/sl}{}
+ \DeclareFontShape{#1}{#2}{m}{sc}{<->ssub * #3/m/sc}{}
+ \DeclareFontShape{#1}{#2}{b}{n}{<->ssub * #3/b/n}{}
+ \DeclareFontShape{#1}{#2}{b}{it}{<->ssub * #3/b/it}{}
+ \DeclareFontShape{#1}{#2}{b}{sl}{<->ssub * #3/b/sl}{}
+ \DeclareFontShape{#1}{#2}{b}{sc}{<->ssub * #3/b/sc}{}
+ \DeclareFontShape{#1}{#2}{bx}{n}{<->ssub * #3/bx/n}{}
+ \DeclareFontShape{#1}{#2}{bx}{it}{<->ssub * #3/bx/it}{}
+ \DeclareFontShape{#1}{#2}{bx}{sl}{<->ssub * #3/bx/sl}{}
+ \DeclareFontShape{#1}{#2}{bx}{sc}{<->ssub * #3/bx/sc}{}
+}
+\global\let\substitutefont\substitutefont
+\endgroup
+
+
+ + diff --git a/obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.pdf b/obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.pdf new file mode 100644 index 0000000000..2758e3b764 Binary files /dev/null and b/obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.pdf differ diff --git a/obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.tex b/obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.tex new file mode 100644 index 0000000000..4bd193e914 --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/test-artemisia-greek.tex @@ -0,0 +1,43 @@ +\documentclass{article} +\usepackage{parskip} +\usepackage[LGR,T1]{fontenc} +\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} +\pagestyle{empty} + +\usepackage[scaled=0.97]{newtxtext} +\usepackage{artemisia-greek} + +\begin{document} + +\section*{Times and Artemisia} + +Combine Times from the \href{https://ctan.org/pkg/newtx}{newtx} package +with \href{https://ctan.org/pkg/gfsartemisia}{GFS Artemisia}, +for Greek text. + +% Teststring +\newcommand{\alphabet}{% + abcdefghjiklmnoprqrstuvwxyzäöüß + {\fontencoding{LGR}\selectfont abgdezhjiklmnxoprsctufqyw} \\ + ABCDEFGHJIKLMNOPRQRSTUVWXYZÄÖÜ + {\fontencoding{LGR}\selectfont ABGDEZHJIKLMNXOPRSTUFQYW}% +} + +\begin{description} + \item [Normal:] \alphabet + + \item [it:] \textit{\alphabet} + + \item [sl:] \textsl{\alphabet} + + \item [bf:] \textbf{\alphabet} + + \item [bf it:] \textbf{\textit\alphabet} + + \item [sc:] \textsc{\alphabet} + + % \item [bf sc:] \textsc{\textbf\alphabet} missing in Bodoni + +\end{description} + +\end{document} diff --git a/obsolete/macros/latex/contrib/substitutefont/txfontsb-test.tex b/obsolete/macros/latex/contrib/substitutefont/txfontsb-test.tex new file mode 100644 index 0000000000..cbbeed7eb3 --- /dev/null +++ b/obsolete/macros/latex/contrib/substitutefont/txfontsb-test.tex @@ -0,0 +1,71 @@ +% Example and test for the substitutefont package: +\documentclass{article} +\usepackage{parskip} +\usepackage[LGR,T1]{fontenc} +\usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} +\usepackage{bookmark} +\pagestyle{empty} + +\usepackage{substitutefont} + +% Serif +\usepackage{txfontsb} +% \substitutefont{LGR}{\rmdefault}{txrc} + +% Sans +% \substitutefont{LGR}{\sfdefault}{neohellenic} +\substitutefont{LGR}{\sfdefault}{epigrafica} + +% Monospaced +\substitutefont{LGR}{\ttdefault}{cmtt} % CB fonts + + +% Teststring +\newcommand{\alphabet}{% + abcdefghjiklmnoprqrstuvwxyzäöüß + {\fontencoding{LGR}\selectfont abgdezhjiklmnxoprsctufqyw} \\ + ABCDEFGHJIKLMNOPRQRSTUVWXYZÄÖÜ + {\fontencoding{LGR}\selectfont ABGDEZHJIKLMNXOPRSTUFQYW}% +} + +\begin{document} + +\section*{TX fonts and Greek replacements with ``txfontsb''} + +% Use Times, Helvetica, and TXTT (from the +% \href{https://ctan.org/pkg/newtx}{newtx} package) with +% \href{https://ctan.org/pkg/txfontsb}{FreeSerifb}, +% \href{https://ctan.org/pkg/gfsneohellenic}{GFS Neohellenic}, +% and \href{https://ctan.org/pkg/cbgreek-complete}{CB-Fonts}, +% for Greek text. + +\begin{description} + \item [Normal:] \alphabet + + \item [it:] \textit{\alphabet} + + \item [sl:] \textsl{\alphabet} + + \item [bf:] \textbf{\alphabet} + + \item [bf it:] \textbf{\textit\alphabet} + + \item [sc:] \textsc{\alphabet} + + % \item [bf sc:] \textsc{\textbf\alphabet} missing in Bodoni + + \item [sf:] \textsf{\alphabet} + + \item [sf bf:] \textsf{\textbf\alphabet} + + % \item [sf sl:] \textsf{\textsl\alphabet} + % + % \item [sf sc:] \textsf{\textsc\alphabet} + + \item [tt:] \texttt{\alphabet} + + % \item [tt bf:] \texttt{\textbf\alphabet} + +\end{description} + +\end{document} diff --git a/timestamp b/timestamp index 13e4f5d4c7..97eb9b9280 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-08-14-02-02 +2023-08-15-02-02 -- cgit v1.2.3