From 05ad7831f64aa0e2fc9eac63816eeafcb0b09708 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Wed, 4 Dec 2019 03:01:14 +0000 Subject: CTAN sync 201912040301 --- FILES.byname | 578 ++-- FILES.byname.gz | Bin 2141211 -> 2141393 bytes FILES.last07days | 669 ++-- macros/latex/contrib/animate/ChangeLog | 3 + macros/latex/contrib/animate/animate.pdf | 1657 +++++----- macros/latex/contrib/animate/animate.sty | 7 +- macros/latex/contrib/animate/animate.tex | 1 - .../biblatex-contrib/archaeologie/README.md | 7 +- .../biblatex-contrib/archaeologie/archaeologie.dtx | 495 ++- .../biblatex-contrib/archaeologie/archaeologie.pdf | Bin 1059841 -> 1062129 bytes .../biblatex-chem/biblatex-chem-acs.pdf | Bin 292087 -> 291825 bytes .../biblatex-chem/biblatex-chem-angew.pdf | Bin 276052 -> 275766 bytes .../biblatex-chem/biblatex-chem-biochem.pdf | Bin 276553 -> 276273 bytes .../biblatex-chem/biblatex-chem-rsc.pdf | Bin 273580 -> 273290 bytes .../biblatex-chem/biblatex-chem.pdf | Bin 382526 -> 382257 bytes .../biblatex-chem/biblatex-chem.tex | 5 +- .../biblatex-contrib/biblatex-chem/chem-acs.bbx | 4 +- .../biblatex-contrib/biblatex-chem/chem-acs.cbx | 2 +- .../biblatex-contrib/biblatex-chem/chem-angew.bbx | 2 +- .../biblatex-contrib/biblatex-chem/chem-angew.cbx | 2 +- .../biblatex-chem/chem-biochem.bbx | 2 +- .../biblatex-chem/chem-biochem.cbx | 2 +- .../biblatex-contrib/biblatex-chem/chem-rsc.bbx | 2 +- .../biblatex-contrib/biblatex-chem/chem-rsc.cbx | 2 +- .../biblatex-phys/biblatex-phys.pdf | Bin 447183 -> 448675 bytes .../biblatex-phys/biblatex-phys.tex | 5 +- .../biblatex-contrib/biblatex-phys/phys.bbx | 18 +- .../biblatex-contrib/biblatex-phys/phys.cbx | 2 +- .../biblatex-contrib/biblatex-phys/phys.dbx | 2 +- macros/latex/contrib/bookmark/README.md | 12 + macros/latex/contrib/bookmark/bookmark.dtx | 3445 +++++++++++++++++++ macros/latex/contrib/bookmark/bookmark.pdf | Bin 0 -> 475757 bytes macros/latex/contrib/embedfile/README.md | 7 + macros/latex/contrib/embedfile/embedfile.dtx | 1965 +++++++++++ macros/latex/contrib/embedfile/embedfile.pdf | Bin 0 -> 391565 bytes macros/latex/contrib/knowledge/README.md | 4 +- macros/latex/contrib/knowledge/knowledge-code.dtx | 272 +- macros/latex/contrib/knowledge/knowledge-utils.dtx | 53 +- macros/latex/contrib/knowledge/knowledge.pdf | Bin 697731 -> 702619 bytes macros/latex/contrib/knowledge/knowledge.tex | 79 +- macros/latex/contrib/oberdiek/bookmark.dtx | 3471 -------------------- macros/latex/contrib/oberdiek/bookmark.pdf | Bin 290659 -> 0 bytes macros/latex/contrib/oberdiek/embedfile.dtx | 2141 ------------ macros/latex/contrib/oberdiek/embedfile.pdf | Bin 215002 -> 0 bytes .../texlive/tlnet/tlpkg/installer/ctan-mirrors.pl | 7 - systems/texlive/tlnet/tlpkg/texlive.tlpdb | 212 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 | 2 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 | 2 +- .../texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc | 14 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz | Bin 2148168 -> 2148016 bytes systems/win32/miktex/tm/packages/files.csv.lzma | Bin 511555 -> 512001 bytes .../win32/miktex/tm/packages/next/files.csv.lzma | Bin 511772 -> 511550 bytes systems/win32/miktex/tm/packages/next/pr.ini | 6 +- systems/win32/miktex/tm/packages/pr.ini | 8 +- systems/win32/w32tex/ChangeLog | 8 + timestamp | 2 +- 56 files changed, 7672 insertions(+), 7505 deletions(-) create mode 100644 macros/latex/contrib/bookmark/README.md create mode 100644 macros/latex/contrib/bookmark/bookmark.dtx create mode 100644 macros/latex/contrib/bookmark/bookmark.pdf create mode 100644 macros/latex/contrib/embedfile/README.md create mode 100644 macros/latex/contrib/embedfile/embedfile.dtx create mode 100644 macros/latex/contrib/embedfile/embedfile.pdf delete mode 100644 macros/latex/contrib/oberdiek/bookmark.dtx delete mode 100644 macros/latex/contrib/oberdiek/bookmark.pdf delete mode 100644 macros/latex/contrib/oberdiek/embedfile.dtx delete mode 100644 macros/latex/contrib/oberdiek/embedfile.pdf diff --git a/FILES.byname b/FILES.byname index 698daba85c..393d1fd2a6 100644 --- a/FILES.byname +++ b/FILES.byname @@ -4990,7 +4990,7 @@ 1990/10/02 | 812 | dviware/vutex/vaxvms.ins 1990/10/02 | 127576 | dviware/vutex/vutex.web 2014/04/13 | 4600576 | dviware/xdvi/22.87/xdvik-22.87.tar.gz -2019/12/02 | 126164 | FILES.last07days +2019/12/03 | 137964 | FILES.last07days 2018/06/27 | 99883 | fonts/academicons/academicons.pdf 2018/06/27 | 10779 | fonts/academicons/academicons.sty 2018/06/27 | 5774 | fonts/academicons/academicons.tex @@ -158152,7 +158152,7 @@ 2019/01/04 | 821335 | install/macros/latex/contrib/adjustbox.tds.zip 2015/08/04 | 140785 | install/macros/latex/contrib/alertmessage.tds.zip 2013/03/08 | 2249874 | install/macros/latex/contrib/amsrefs.tds.zip -2019/11/27 | 3237886 | install/macros/latex/contrib/animate.tds.zip +2019/12/03 | 3237505 | install/macros/latex/contrib/animate.tds.zip 2014/08/24 | 220789 | install/macros/latex/contrib/answers.tds.zip 2009/09/08 | 175772 | install/macros/latex/contrib/appendix.tds.zip 2018/03/09 | 187753 | install/macros/latex/contrib/ascmac.tds.zip @@ -158171,17 +158171,18 @@ 2019/01/28 | 1087181 | install/macros/latex/contrib/bezos.tds.zip 2009/07/16 | 3362 | install/macros/latex/contrib/biblatex-contrib/authoryear-icomp-tt.tds.zip 2019/11/15 | 623296 | install/macros/latex/contrib/biblatex-contrib/biblatex-caspervector.tds.zip -2019/08/24 | 1525564 | install/macros/latex/contrib/biblatex-contrib/biblatex-chem.tds.zip +2019/12/03 | 1524215 | install/macros/latex/contrib/biblatex-contrib/biblatex-chem.tds.zip 2016/12/06 | 1778620 | install/macros/latex/contrib/biblatex-contrib/biblatex-dw.tds.zip 2019/06/19 | 693093 | install/macros/latex/contrib/biblatex-contrib/biblatex-ieee.tds.zip 2019/10/31 | 191129 | install/macros/latex/contrib/biblatex-contrib/biblatex-iso690.tds.zip 2013/11/18 | 370052 | install/macros/latex/contrib/biblatex-contrib/biblatex-luh-ipw.tds.zip 2018/10/18 | 389380 | install/macros/latex/contrib/biblatex-contrib/biblatex-nature.tds.zip 2018/03/28 | 960568 | install/macros/latex/contrib/biblatex-contrib/biblatex-philosophy.tds.zip -2019/09/21 | 459402 | install/macros/latex/contrib/biblatex-contrib/biblatex-phys.tds.zip +2019/12/03 | 460970 | install/macros/latex/contrib/biblatex-contrib/biblatex-phys.tds.zip 2018/10/18 | 360761 | install/macros/latex/contrib/biblatex-contrib/biblatex-science.tds.zip 2011/04/02 | 808780 | install/macros/latex/contrib/bibleref-german.tds.zip 2009/09/08 | 241226 | install/macros/latex/contrib/booklet.tds.zip +2019/12/03 | 503071 | install/macros/latex/contrib/bookmark.tds.zip 2015/03/10 | 214797 | install/macros/latex/contrib/boxedminipage2e.tds.zip 2019/10/15 | 1242503 | install/macros/latex/contrib/breqn.tds.zip 2017/09/19 | 592240 | install/macros/latex/contrib/bytefield.tds.zip @@ -158220,6 +158221,7 @@ 2018/03/30 | 183071 | install/macros/latex/contrib/easyfig.tds.zip 2017/05/17 | 240523 | install/macros/latex/contrib/ebproof.tds.zip 2011/02/27 | 309139 | install/macros/latex/contrib/edfnotes.tds.zip +2019/12/03 | 406694 | install/macros/latex/contrib/embedfile.tds.zip 2008/08/15 | 2277719 | install/macros/latex/contrib/engpron.tds.zip 2008/05/07 | 281587 | install/macros/latex/contrib/engrec.tds.zip 2014/05/04 | 164868 | install/macros/latex/contrib/environ.tds.zip @@ -174580,10 +174582,10 @@ 2007/10/11 | 13856 | macros/latex/contrib/analogclock/clock.ttf 2008/12/22 | 551 | macros/latex/contrib/analogclock/README 2008/12/22 | 69900 | macros/latex/contrib/analogclock.zip -2019/11/27 | 3925895 | macros/latex/contrib/animate/animate.pdf -2019/11/27 | 139302 | macros/latex/contrib/animate/animate.sty -2019/11/26 | 82720 | macros/latex/contrib/animate/animate.tex -2019/11/27 | 10908 | macros/latex/contrib/animate/ChangeLog +2019/12/03 | 3925892 | macros/latex/contrib/animate/animate.pdf +2019/12/03 | 139242 | macros/latex/contrib/animate/animate.sty +2019/12/03 | 82709 | macros/latex/contrib/animate/animate.tex +2019/12/03 | 10993 | macros/latex/contrib/animate/ChangeLog 2018/06/26 | 8561 | macros/latex/contrib/animate/files/bye_0.eps 2018/06/26 | 8342 | macros/latex/contrib/animate/files/bye_1.eps 2018/06/26 | 8561 | macros/latex/contrib/animate/files/bye_2.eps @@ -174591,8 +174593,8 @@ 2018/06/26 | 2574 | macros/latex/contrib/animate/files/click.mp3 2019/11/26 | 2409 | macros/latex/contrib/animate/files/exp.mp 2019/11/26 | 3534 | macros/latex/contrib/animate/files/scarab.mp -2019/11/26 | 3824 | macros/latex/contrib/animate/README.md -2019/11/27 | 3235602 | macros/latex/contrib/animate.zip +2019/12/02 | 3824 | macros/latex/contrib/animate/README.md +2019/12/03 | 3235221 | macros/latex/contrib/animate.zip 2018/08/23 | 66355 | macros/latex/contrib/annot_pro/annot_pro.dtx 2018/04/26 | 2148 | macros/latex/contrib/annot_pro/annot_pro.ins 2018/08/25 | 635808 | macros/latex/contrib/annot_pro/doc/annotpro_man.pdf @@ -176259,11 +176261,11 @@ 2019/08/31 | 68441 | macros/latex/contrib/biblatex/bibtex/bib/biblatex/biblatex-examples.bib 2019/08/31 | 64965 | macros/latex/contrib/biblatex/bibtex/bst/biblatex.bst 2019/08/31 | 34384 | macros/latex/contrib/biblatex/CHANGES.md -2019/04/30 | 759733 | macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.dtx -2019/04/30 | 1059841 | macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.pdf -2019/04/30 | 2204 | macros/latex/contrib/biblatex-contrib/archaeologie/Makefile -2019/04/30 | 9550 | macros/latex/contrib/biblatex-contrib/archaeologie/README.md -2019/04/30 | 1153399 | macros/latex/contrib/biblatex-contrib/archaeologie.zip +2019/12/03 | 762366 | macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.dtx +2019/12/03 | 1062129 | macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.pdf +2019/12/03 | 2204 | macros/latex/contrib/biblatex-contrib/archaeologie/Makefile +2019/12/03 | 9757 | macros/latex/contrib/biblatex-contrib/archaeologie/README.md +2019/12/03 | 1151924 | macros/latex/contrib/biblatex-contrib/archaeologie.zip 2009/07/16 | 233 | macros/latex/contrib/biblatex-contrib/authoryear-icomp-tt/authoryear-icomp-tt.bbx 2009/07/16 | 6133 | macros/latex/contrib/biblatex-contrib/authoryear-icomp-tt/authoryear-icomp-tt.cbx 2009/07/16 | 1302 | macros/latex/contrib/biblatex-contrib/authoryear-icomp-tt/README @@ -176513,27 +176515,27 @@ 2019/11/13 | 1061 | macros/latex/contrib/biblatex-contrib/biblatex-caspervector/tex/caspervector.bbx 2019/11/13 | 1664 | macros/latex/contrib/biblatex-contrib/biblatex-caspervector/tex/caspervector.cbx 2019/11/15 | 622247 | macros/latex/contrib/biblatex-contrib/biblatex-caspervector.zip -2019/08/24 | 292087 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-acs.pdf +2019/12/03 | 291825 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-acs.pdf 2019/08/24 | 2480 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-acs.tex -2019/08/24 | 276052 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-angew.pdf +2019/12/03 | 275766 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-angew.pdf 2019/08/24 | 2408 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-angew.tex 2019/08/24 | 15897 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.bib -2019/08/24 | 276553 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-biochem.pdf +2019/12/03 | 276273 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-biochem.pdf 2019/08/24 | 2460 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-biochem.tex -2019/08/24 | 382526 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.pdf -2019/08/24 | 273580 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-rsc.pdf +2019/12/03 | 382257 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.pdf +2019/12/03 | 273290 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-rsc.pdf 2019/08/24 | 2437 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-rsc.tex -2019/08/24 | 12372 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.tex -2019/08/24 | 19454 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.bbx -2019/08/24 | 2223 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.cbx -2019/08/24 | 17830 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.bbx -2019/08/24 | 2700 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.cbx -2019/08/24 | 18753 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.bbx -2019/08/24 | 2289 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.cbx -2019/08/24 | 16680 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.bbx -2019/08/24 | 2221 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.cbx +2019/12/03 | 12421 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.tex +2019/12/03 | 19463 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.bbx +2019/12/03 | 2223 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.cbx +2019/12/03 | 17830 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.bbx +2019/12/03 | 2700 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.cbx +2019/12/03 | 18753 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.bbx +2019/12/03 | 2289 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.cbx +2019/12/03 | 16680 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.bbx +2019/12/03 | 2221 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.cbx 2017/08/09 | 737 | macros/latex/contrib/biblatex-contrib/biblatex-chem/README.md -2019/08/24 | 1523794 | macros/latex/contrib/biblatex-contrib/biblatex-chem.zip +2019/12/03 | 1522445 | macros/latex/contrib/biblatex-contrib/biblatex-chem.zip 2018/01/16 | 1264211 | macros/latex/contrib/biblatex-contrib/biblatex-chicago/doc/biblatex-chicago.pdf 2018/01/16 | 797320 | macros/latex/contrib/biblatex-contrib/biblatex-chicago/doc/biblatex-chicago.tex 2018/01/16 | 658049 | macros/latex/contrib/biblatex-contrib/biblatex-chicago/doc/examples/cms-dates-intro.pdf @@ -177020,14 +177022,14 @@ 2018/03/03 | 9936 | macros/latex/contrib/biblatex-contrib/biblatex-philosophy/examples.zip 2018/03/28 | 2513 | macros/latex/contrib/biblatex-contrib/biblatex-philosophy/README 2018/03/28 | 928856 | macros/latex/contrib/biblatex-contrib/biblatex-philosophy.zip -2019/09/21 | 13519 | macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.bib -2019/09/21 | 447183 | macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.pdf -2019/09/21 | 9116 | macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.tex -2019/09/21 | 12403 | macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.bbx -2019/09/21 | 1460 | macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.cbx -2019/09/21 | 1387 | macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.dbx -2018/10/18 | 655 | macros/latex/contrib/biblatex-contrib/biblatex-phys/README.md -2019/09/22 | 458363 | macros/latex/contrib/biblatex-contrib/biblatex-phys.zip +2019/12/03 | 13519 | macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.bib +2019/12/03 | 448675 | macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.pdf +2019/12/03 | 9188 | macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.tex +2019/12/03 | 12670 | macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.bbx +2019/12/03 | 1460 | macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.cbx +2019/12/03 | 1387 | macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.dbx +2019/12/03 | 655 | macros/latex/contrib/biblatex-contrib/biblatex-phys/README.md +2019/12/03 | 459931 | macros/latex/contrib/biblatex-contrib/biblatex-phys.zip 2019/04/16 | 317216 | macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.pdf 2019/04/16 | 32330 | macros/latex/contrib/biblatex-contrib/biblatex-publist/biblatex-publist.tex 2019/04/16 | 32308 | macros/latex/contrib/biblatex-contrib/biblatex-publist/publist.bbx @@ -177743,6 +177745,10 @@ 2009/09/08 | 252478 | macros/latex/contrib/booklet/booklet.pdf 2009/09/08 | 2086 | macros/latex/contrib/booklet/README 2009/09/08 | 236732 | macros/latex/contrib/booklet.zip +2019/12/03 | 93584 | macros/latex/contrib/bookmark/bookmark.dtx +2019/12/03 | 475757 | macros/latex/contrib/bookmark/bookmark.pdf +2019/12/03 | 328 | macros/latex/contrib/bookmark/README.md +2019/12/03 | 481265 | macros/latex/contrib/bookmark.zip 2019/10/08 | 44017 | macros/latex/contrib/booktabs/booktabs.dtx 2019/10/08 | 2384 | macros/latex/contrib/booktabs/booktabs.ins 2019/10/08 | 296459 | macros/latex/contrib/booktabs/booktabs.pdf @@ -181581,6 +181587,10 @@ 2019/05/18 | 235095 | macros/latex/contrib/embedall/embedall.pdf 2019/05/17 | 217 | macros/latex/contrib/embedall/README 2019/05/20 | 239653 | macros/latex/contrib/embedall.zip +2019/12/03 | 57640 | macros/latex/contrib/embedfile/embedfile.dtx +2019/12/03 | 391565 | macros/latex/contrib/embedfile/embedfile.pdf +2019/12/03 | 148 | macros/latex/contrib/embedfile/README.md +2019/12/03 | 397370 | macros/latex/contrib/embedfile.zip 2019/10/01 | 456745 | macros/latex/contrib/embrac/embrac_en.pdf 2019/10/01 | 14241 | macros/latex/contrib/embrac/embrac_en.tex 2019/10/01 | 2500 | macros/latex/contrib/embrac/embrac_kerning_test.tex @@ -187391,16 +187401,16 @@ 2010/02/25 | 54999 | macros/latex/contrib/knittingpattern/template.pdf 2010/02/25 | 5357 | macros/latex/contrib/knittingpattern/template.tex 2010/02/25 | 140210 | macros/latex/contrib/knittingpattern.zip -2019/11/19 | 152502 | macros/latex/contrib/knowledge/knowledge-code.dtx -2019/11/19 | 7936 | macros/latex/contrib/knowledge/knowledge-configuration.dtx -2019/11/19 | 6699 | macros/latex/contrib/knowledge/knowledge-example.tex -2019/11/19 | 1759 | macros/latex/contrib/knowledge/knowledge.ins -2019/11/19 | 697731 | macros/latex/contrib/knowledge/knowledge.pdf -2019/11/19 | 150614 | macros/latex/contrib/knowledge/knowledge.tex -2019/11/19 | 42903 | macros/latex/contrib/knowledge/knowledge-utils.dtx -2019/11/19 | 2614 | macros/latex/contrib/knowledge/makefile -2019/11/19 | 2025 | macros/latex/contrib/knowledge/README.md -2019/11/19 | 782277 | macros/latex/contrib/knowledge.zip +2019/12/03 | 157894 | macros/latex/contrib/knowledge/knowledge-code.dtx +2019/12/03 | 7936 | macros/latex/contrib/knowledge/knowledge-configuration.dtx +2019/12/03 | 6699 | macros/latex/contrib/knowledge/knowledge-example.tex +2019/12/03 | 1759 | macros/latex/contrib/knowledge/knowledge.ins +2019/12/03 | 702619 | macros/latex/contrib/knowledge/knowledge.pdf +2019/12/03 | 152436 | macros/latex/contrib/knowledge/knowledge.tex +2019/12/03 | 44697 | macros/latex/contrib/knowledge/knowledge-utils.dtx +2019/12/03 | 2614 | macros/latex/contrib/knowledge/makefile +2019/12/03 | 2025 | macros/latex/contrib/knowledge/README.md +2019/12/03 | 789186 | macros/latex/contrib/knowledge.zip 1996/09/22 | 5840 | macros/latex/contrib/koi8/koi8.sty 1996/09/22 | 470 | macros/latex/contrib/koi8/rawprint.sty 1996/09/26 | 1894 | macros/latex/contrib/koi8/readme @@ -190905,8 +190915,6 @@ 2019/11/29 | 343620 | macros/latex/contrib/oberdiek/bitset.pdf 2019/11/29 | 107101 | macros/latex/contrib/oberdiek/bmpsize.dtx 2019/11/29 | 327623 | macros/latex/contrib/oberdiek/bmpsize.pdf -2019/11/29 | 94821 | macros/latex/contrib/oberdiek/bookmark.dtx -2019/11/29 | 290659 | macros/latex/contrib/oberdiek/bookmark.pdf 2019/11/29 | 29867 | macros/latex/contrib/oberdiek/catchfile.dtx 2019/11/29 | 144364 | macros/latex/contrib/oberdiek/catchfile.pdf 2019/11/29 | 16088 | macros/latex/contrib/oberdiek/centernot.dtx @@ -190919,8 +190927,6 @@ 2019/11/29 | 104527 | macros/latex/contrib/oberdiek/colonequals.pdf 2019/11/29 | 15187 | macros/latex/contrib/oberdiek/dvipscol.dtx 2019/11/29 | 90419 | macros/latex/contrib/oberdiek/dvipscol.pdf -2019/11/29 | 61839 | macros/latex/contrib/oberdiek/embedfile.dtx -2019/11/29 | 215002 | macros/latex/contrib/oberdiek/embedfile.pdf 2019/11/29 | 27487 | macros/latex/contrib/oberdiek/engord.dtx 2019/11/29 | 133974 | macros/latex/contrib/oberdiek/engord.pdf 2019/11/29 | 26981 | macros/latex/contrib/oberdiek/enparen.dtx @@ -248366,8 +248372,8 @@ 2019/02/28 | 18036 | systems/texlive/tlnet/archive/biblatex-abnt.tar.xz 2019/02/28 | 62380 | systems/texlive/tlnet/archive/biblatex-anonymous.doc.tar.xz 2019/02/28 | 1608 | systems/texlive/tlnet/archive/biblatex-anonymous.tar.xz -2019/12/02 | 226436 | systems/texlive/tlnet/archive/biblatex-apa6.doc.r52992.tar.xz -2019/12/02 | 21004 | systems/texlive/tlnet/archive/biblatex-apa6.r52992.tar.xz +2019/12/03 | 226776 | systems/texlive/tlnet/archive/biblatex-apa6.doc.r53000.tar.xz +2019/12/03 | 20988 | systems/texlive/tlnet/archive/biblatex-apa6.r53000.tar.xz 2019/12/01 | 315992 | systems/texlive/tlnet/archive/biblatex-apa.doc.r52976.tar.xz 2019/12/01 | 23516 | systems/texlive/tlnet/archive/biblatex-apa.r52976.tar.xz 2019/02/28 | 4298196 | systems/texlive/tlnet/archive/biblatex-archaeology.doc.tar.xz @@ -248394,7 +248400,7 @@ 2019/02/28 | 65676 | systems/texlive/tlnet/archive/biblatex-chicago.tar.xz 2019/02/28 | 90108 | systems/texlive/tlnet/archive/biblatex-claves.doc.tar.xz 2019/02/28 | 2184 | systems/texlive/tlnet/archive/biblatex-claves.tar.xz -2019/09/01 | 7172764 | systems/texlive/tlnet/archive/biblatex.doc.tar.xz +2019/12/03 | 7172764 | systems/texlive/tlnet/archive/biblatex.doc.r53003.tar.xz 2019/02/28 | 1124296 | systems/texlive/tlnet/archive/biblatex-dw.doc.tar.xz 2019/02/28 | 16432 | systems/texlive/tlnet/archive/biblatex-dw.tar.xz 2019/02/28 | 2284 | systems/texlive/tlnet/archive/biblatex-enc.doc.tar.xz @@ -248450,6 +248456,7 @@ 2019/09/23 | 3420 | systems/texlive/tlnet/archive/biblatex-phys.tar.xz 2019/05/05 | 327812 | systems/texlive/tlnet/archive/biblatex-publist.doc.tar.xz 2019/05/05 | 6932 | systems/texlive/tlnet/archive/biblatex-publist.tar.xz +2019/12/03 | 215468 | systems/texlive/tlnet/archive/biblatex.r53003.tar.xz 2019/02/28 | 93700 | systems/texlive/tlnet/archive/biblatex-realauthor.doc.tar.xz 2019/02/28 | 2484 | systems/texlive/tlnet/archive/biblatex-realauthor.tar.xz 2019/02/28 | 650976 | systems/texlive/tlnet/archive/biblatex-sbl.doc.tar.xz @@ -248466,7 +248473,6 @@ 2019/02/28 | 1384 | systems/texlive/tlnet/archive/biblatex-subseries.tar.xz 2019/02/28 | 513436 | systems/texlive/tlnet/archive/biblatex-swiss-legal.doc.tar.xz 2019/02/28 | 18060 | systems/texlive/tlnet/archive/biblatex-swiss-legal.tar.xz -2019/09/01 | 215444 | systems/texlive/tlnet/archive/biblatex.tar.xz 2019/02/28 | 333008 | systems/texlive/tlnet/archive/biblatex-trad.doc.tar.xz 2019/02/28 | 4172 | systems/texlive/tlnet/archive/biblatex-trad.tar.xz 2019/02/28 | 70876 | systems/texlive/tlnet/archive/biblatex-true-citepages-omit.doc.tar.xz @@ -249345,7 +249351,7 @@ 2019/11/28 | 1176 | systems/texlive/tlnet/archive/collection-bibtexextra.r52949.tar.xz 2019/11/28 | 920 | systems/texlive/tlnet/archive/collection-binextra.r52954.tar.xz 2019/02/28 | 600 | systems/texlive/tlnet/archive/collection-context.tar.xz -2019/11/22 | 1756 | systems/texlive/tlnet/archive/collection-fontsextra.tar.xz +2019/12/03 | 1760 | systems/texlive/tlnet/archive/collection-fontsextra.r52997.tar.xz 2019/02/28 | 560 | systems/texlive/tlnet/archive/collection-fontsrecommended.tar.xz 2019/02/28 | 528 | systems/texlive/tlnet/archive/collection-fontutils.tar.xz 2019/02/28 | 572 | systems/texlive/tlnet/archive/collection-formatsextra.tar.xz @@ -249368,9 +249374,9 @@ 2019/02/28 | 412 | systems/texlive/tlnet/archive/collection-langpolish.tar.xz 2019/07/15 | 388 | systems/texlive/tlnet/archive/collection-langportuguese.tar.xz 2019/02/28 | 392 | systems/texlive/tlnet/archive/collection-langspanish.tar.xz -2019/12/01 | 5980 | systems/texlive/tlnet/archive/collection-latexextra.r52986.tar.xz -2019/11/25 | 732 | systems/texlive/tlnet/archive/collection-latexrecommended.tar.xz -2019/11/25 | 536 | systems/texlive/tlnet/archive/collection-latex.tar.xz +2019/12/03 | 5976 | systems/texlive/tlnet/archive/collection-latexextra.r53003.tar.xz +2019/12/03 | 540 | systems/texlive/tlnet/archive/collection-latex.r53004.tar.xz +2019/12/03 | 732 | systems/texlive/tlnet/archive/collection-latexrecommended.r53004.tar.xz 2019/12/01 | 640 | systems/texlive/tlnet/archive/collection-luatex.r52984.tar.xz 2019/11/25 | 1376 | systems/texlive/tlnet/archive/collection-mathscience.tar.xz 2019/03/09 | 540 | systems/texlive/tlnet/archive/collection-metapost.tar.xz @@ -250999,6 +251005,8 @@ 2019/02/28 | 16276 | systems/texlive/tlnet/archive/erdc.source.tar.xz 2019/02/28 | 6056 | systems/texlive/tlnet/archive/erdc.tar.xz 2019/11/14 | 311952 | systems/texlive/tlnet/archive/erewhon.doc.tar.xz +2019/12/03 | 1464048 | systems/texlive/tlnet/archive/erewhon-math.doc.r52997.tar.xz +2019/12/03 | 182368 | systems/texlive/tlnet/archive/erewhon-math.r52997.tar.xz 2019/11/14 | 2227472 | systems/texlive/tlnet/archive/erewhon.tar.xz 2019/02/28 | 147644 | systems/texlive/tlnet/archive/errata.doc.tar.xz 2019/02/28 | 6420 | systems/texlive/tlnet/archive/errata.source.tar.xz @@ -252262,9 +252270,9 @@ 2019/02/28 | 278528 | systems/texlive/tlnet/archive/hyper.doc.tar.xz 2019/02/28 | 186676 | systems/texlive/tlnet/archive/hypernat.doc.tar.xz 2019/02/28 | 1916 | systems/texlive/tlnet/archive/hypernat.tar.xz -2019/11/12 | 3213736 | systems/texlive/tlnet/archive/hyperref.doc.tar.xz -2019/11/12 | 448452 | systems/texlive/tlnet/archive/hyperref.source.tar.xz -2019/11/12 | 108780 | systems/texlive/tlnet/archive/hyperref.tar.xz +2019/12/03 | 3213732 | systems/texlive/tlnet/archive/hyperref.doc.r53004.tar.xz +2019/12/03 | 108788 | systems/texlive/tlnet/archive/hyperref.r53004.tar.xz +2019/12/03 | 448456 | systems/texlive/tlnet/archive/hyperref.source.r53004.tar.xz 2019/02/28 | 32960 | systems/texlive/tlnet/archive/hyper.source.tar.xz 2019/02/28 | 15680 | systems/texlive/tlnet/archive/hyper.tar.xz 2019/04/06 | 604764 | systems/texlive/tlnet/archive/hyperxmp.doc.tar.xz @@ -253483,8 +253491,8 @@ 2019/02/28 | 67724 | systems/texlive/tlnet/archive/logpap.doc.tar.xz 2019/02/28 | 22100 | systems/texlive/tlnet/archive/logpap.source.tar.xz 2019/02/28 | 5880 | systems/texlive/tlnet/archive/logpap.tar.xz -2019/02/28 | 3792 | systems/texlive/tlnet/archive/logreq.doc.tar.xz -2019/02/28 | 3204 | systems/texlive/tlnet/archive/logreq.tar.xz +2019/12/03 | 3792 | systems/texlive/tlnet/archive/logreq.doc.r53003.tar.xz +2019/12/03 | 3212 | systems/texlive/tlnet/archive/logreq.r53003.tar.xz 2019/02/28 | 324 | systems/texlive/tlnet/archive/lollipop.aarch64-linux.tar.xz 2019/02/28 | 324 | systems/texlive/tlnet/archive/lollipop.amd64-freebsd.tar.xz 2019/02/28 | 320 | systems/texlive/tlnet/archive/lollipop.amd64-netbsd.tar.xz @@ -253785,8 +253793,8 @@ 2019/11/19 | 3048036 | systems/texlive/tlnet/archive/luatexja.doc.tar.xz 2019/11/19 | 84228 | systems/texlive/tlnet/archive/luatexja.source.tar.xz 2019/11/19 | 180432 | systems/texlive/tlnet/archive/luatexja.tar.xz -2019/08/03 | 297212 | systems/texlive/tlnet/archive/luatexko.doc.tar.xz -2019/08/03 | 20556 | systems/texlive/tlnet/archive/luatexko.tar.xz +2019/12/03 | 300508 | systems/texlive/tlnet/archive/luatexko.doc.r53001.tar.xz +2019/12/03 | 21760 | systems/texlive/tlnet/archive/luatexko.r53001.tar.xz 2019/11/19 | 12924 | systems/texlive/tlnet/archive/luatex.tar.xz 2019/02/28 | 317312 | systems/texlive/tlnet/archive/luatextra.doc.tar.xz 2019/02/28 | 3492 | systems/texlive/tlnet/archive/luatextra.source.tar.xz @@ -254792,10 +254800,10 @@ 2019/02/28 | 196212 | systems/texlive/tlnet/archive/newspaper.doc.tar.xz 2019/02/28 | 6804 | systems/texlive/tlnet/archive/newspaper.source.tar.xz 2019/02/28 | 1924 | systems/texlive/tlnet/archive/newspaper.tar.xz -2019/11/23 | 839640 | systems/texlive/tlnet/archive/newtx.doc.tar.xz +2019/12/03 | 839584 | systems/texlive/tlnet/archive/newtx.doc.r52998.tar.xz +2019/12/03 | 4533088 | systems/texlive/tlnet/archive/newtx.r52998.tar.xz 2019/02/28 | 332220 | systems/texlive/tlnet/archive/newtxsf.doc.tar.xz 2019/02/28 | 105228 | systems/texlive/tlnet/archive/newtxsf.tar.xz -2019/11/23 | 4534008 | systems/texlive/tlnet/archive/newtx.tar.xz 2019/02/28 | 80548 | systems/texlive/tlnet/archive/newtxtt.doc.tar.xz 2019/02/28 | 116900 | systems/texlive/tlnet/archive/newtxtt.tar.xz 2019/02/28 | 389624 | systems/texlive/tlnet/archive/newunicodechar.doc.tar.xz @@ -254938,9 +254946,9 @@ 2019/03/19 | 1546672 | systems/texlive/tlnet/archive/nwejm.doc.tar.xz 2019/03/19 | 46784 | systems/texlive/tlnet/archive/nwejm.source.tar.xz 2019/03/19 | 4047836 | systems/texlive/tlnet/archive/nwejm.tar.xz -2019/12/01 | 10519844 | systems/texlive/tlnet/archive/oberdiek.doc.r52987.tar.xz -2019/12/01 | 115296 | systems/texlive/tlnet/archive/oberdiek.r52987.tar.xz -2019/12/01 | 325872 | systems/texlive/tlnet/archive/oberdiek.source.r52987.tar.xz +2019/12/03 | 10519844 | systems/texlive/tlnet/archive/oberdiek.doc.r53004.tar.xz +2019/12/03 | 115304 | systems/texlive/tlnet/archive/oberdiek.r53004.tar.xz +2019/12/03 | 325872 | systems/texlive/tlnet/archive/oberdiek.source.r53004.tar.xz 2019/02/28 | 261448 | systems/texlive/tlnet/archive/objectz.doc.tar.xz 2019/02/28 | 15088 | systems/texlive/tlnet/archive/objectz.source.tar.xz 2019/02/28 | 9788 | systems/texlive/tlnet/archive/objectz.tar.xz @@ -255577,8 +255585,8 @@ 2019/02/28 | 6824 | systems/texlive/tlnet/archive/pigpen.tar.xz 2019/02/28 | 250420 | systems/texlive/tlnet/archive/pinlabel.doc.tar.xz 2019/02/28 | 11060 | systems/texlive/tlnet/archive/pinlabel.tar.xz -2019/11/28 | 69308 | systems/texlive/tlnet/archive/pinoutikz.doc.r52946.tar.xz -2019/11/28 | 2436 | systems/texlive/tlnet/archive/pinoutikz.r52946.tar.xz +2019/12/03 | 69492 | systems/texlive/tlnet/archive/pinoutikz.doc.r52999.tar.xz +2019/12/03 | 2500 | systems/texlive/tlnet/archive/pinoutikz.r52999.tar.xz 2019/02/28 | 110192 | systems/texlive/tlnet/archive/pitex.doc.tar.xz 2019/02/28 | 22664 | systems/texlive/tlnet/archive/pitex.tar.xz 2019/02/28 | 317704 | systems/texlive/tlnet/archive/pittetd.doc.tar.xz @@ -257720,8 +257728,8 @@ 2019/04/06 | 280 | systems/texlive/tlnet/archive/texlive-cz.tar.xz 2019/03/28 | 1299960 | systems/texlive/tlnet/archive/texlive-de.doc.tar.xz 2019/03/28 | 272 | systems/texlive/tlnet/archive/texlive-de.tar.xz -2019/12/02 | 156064 | systems/texlive/tlnet/archive/texlive-docindex.doc.r52989.tar.xz -2019/12/02 | 109880 | systems/texlive/tlnet/archive/texlive-docindex.r52989.tar.xz +2019/12/03 | 156072 | systems/texlive/tlnet/archive/texlive-docindex.doc.r52996.tar.xz +2019/12/03 | 109880 | systems/texlive/tlnet/archive/texlive-docindex.r52996.tar.xz 2019/08/15 | 1856616 | systems/texlive/tlnet/archive/texlive-en.doc.tar.xz 2019/08/15 | 276 | systems/texlive/tlnet/archive/texlive-en.tar.xz 2019/04/01 | 2279380 | systems/texlive/tlnet/archive/texlive-es.doc.tar.xz @@ -257777,13 +257785,13 @@ 2019/02/28 | 372 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.tar.xz 2019/02/28 | 372 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.tar.xz 2019/02/28 | 372 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.tar.xz -2019/12/01 | 51204 | systems/texlive/tlnet/archive/texlive-scripts.doc.r52974.tar.xz +2019/12/03 | 51204 | systems/texlive/tlnet/archive/texlive-scripts.doc.r52996.tar.xz 2019/02/28 | 372 | systems/texlive/tlnet/archive/texlive-scripts.i386-cygwin.tar.xz 2019/02/28 | 372 | systems/texlive/tlnet/archive/texlive-scripts.i386-freebsd.tar.xz 2019/02/28 | 372 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.tar.xz 2019/02/28 | 372 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.tar.xz 2019/02/28 | 372 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.tar.xz -2019/12/01 | 85456 | systems/texlive/tlnet/archive/texlive-scripts.r52974.tar.xz +2019/12/03 | 85432 | systems/texlive/tlnet/archive/texlive-scripts.r52996.tar.xz 2019/08/31 | 11636 | systems/texlive/tlnet/archive/texlive-scripts.win32.tar.xz 2019/02/28 | 372 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.tar.xz 2019/02/28 | 376 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-darwinlegacy.tar.xz @@ -259075,8 +259083,8 @@ 2019/11/08 | 7443748 | systems/texlive/tlnet/archive/xetex.i386-solaris.tar.xz 2019/02/28 | 21092 | systems/texlive/tlnet/archive/xetex-itrans.doc.tar.xz 2019/02/28 | 24640 | systems/texlive/tlnet/archive/xetex-itrans.tar.xz -2019/02/28 | 231052 | systems/texlive/tlnet/archive/xetexko.doc.tar.xz -2019/02/28 | 57240 | systems/texlive/tlnet/archive/xetexko.tar.xz +2019/12/03 | 236080 | systems/texlive/tlnet/archive/xetexko.doc.r53002.tar.xz +2019/12/03 | 57320 | systems/texlive/tlnet/archive/xetexko.r53002.tar.xz 2019/02/28 | 932 | systems/texlive/tlnet/archive/xetex-pstricks.doc.tar.xz 2019/02/28 | 724 | systems/texlive/tlnet/archive/xetex-pstricks.tar.xz 2019/03/06 | 160552 | systems/texlive/tlnet/archive/xetexref.doc.tar.xz @@ -259360,16 +259368,16 @@ 2019/02/28 | 136844 | systems/texlive/tlnet/archive/zxjatype.doc.tar.xz 2019/02/28 | 8412 | systems/texlive/tlnet/archive/zxjatype.tar.xz 2019/10/19 | 106951 | systems/texlive/tlnet/install-tl -2019/12/02 | 3947528 | systems/texlive/tlnet/install-tl-unx.tar.gz -2019/12/02 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2019/12/02 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2019/12/03 | 3947419 | systems/texlive/tlnet/install-tl-unx.tar.gz +2019/12/03 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2019/12/03 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2019/05/09 | 4543 | systems/texlive/tlnet/install-tl-windows.bat -2019/12/02 | 18699327 | systems/texlive/tlnet/install-tl-windows.exe -2019/12/02 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2019/12/02 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2019/12/02 | 22539445 | systems/texlive/tlnet/install-tl.zip -2019/12/02 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2019/12/02 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2019/12/03 | 18700220 | systems/texlive/tlnet/install-tl-windows.exe +2019/12/03 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2019/12/03 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2019/12/03 | 22539406 | systems/texlive/tlnet/install-tl.zip +2019/12/03 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2019/12/03 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc 2019/04/29 | 1221 | systems/texlive/tlnet/README.md 2019/03/13 | 5351 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg 2016/04/12 | 600 | systems/texlive/tlnet/tlpkg/gpg/random_seed @@ -259378,7 +259386,7 @@ 2019/03/13 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg 2019/09/14 | 48351 | systems/texlive/tlnet/tlpkg/installer/config.guess 2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt -2019/11/30 | 5838 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +2019/12/02 | 5651 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2018/04/29 | 13647 | systems/texlive/tlnet/tlpkg/installer/DirSelect.pm 2017/04/16 | 2629 | systems/texlive/tlnet/tlpkg/installer/installer-options.txt 2019/06/25 | 5491 | systems/texlive/tlnet/tlpkg/installer/install-menu-extl.pl @@ -259424,12 +259432,12 @@ 2019/09/23 | 18176 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm 2016/10/11 | 4618 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm 2017/11/14 | 27560 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm -2019/12/02 | 15987591 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2019/12/02 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2019/12/03 | 15989166 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2019/12/03 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2019/11/09 | 87503 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm -2019/12/02 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2019/12/02 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2019/12/02 | 2148168 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2019/12/03 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2019/12/03 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2019/12/03 | 2148016 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2019/11/27 | 59008 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm 2018/12/17 | 36910 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm 2018/08/31 | 14972 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm @@ -261944,7 +261952,7 @@ 2013/09/09 | 34440 | systems/win32/miktex/tm/packages/bibhtml.tar.lzma 2018/11/22 | 884678 | systems/win32/miktex/tm/packages/biblatex-abnt.tar.lzma 2018/09/04 | 64282 | systems/win32/miktex/tm/packages/biblatex-anonymous.tar.lzma -2019/12/02 | 247663 | systems/win32/miktex/tm/packages/biblatex-apa6.tar.lzma +2019/12/03 | 248023 | systems/win32/miktex/tm/packages/biblatex-apa6.tar.lzma 2019/11/30 | 339886 | systems/win32/miktex/tm/packages/biblatex-apa.tar.lzma 2018/11/22 | 4480255 | systems/win32/miktex/tm/packages/biblatex-archaeology.tar.lzma 2018/02/14 | 192153 | systems/win32/miktex/tm/packages/biblatex-arthistory-bonn.tar.lzma @@ -262374,7 +262382,7 @@ 2013/01/24 | 41557 | systems/win32/miktex/tm/packages/cslatex.tar.lzma 2019/06/05 | 1726140 | systems/win32/miktex/tm/packages/csplain.tar.lzma 2014/05/20 | 1757952 | systems/win32/miktex/tm/packages/cspsfonts.tar.lzma -2019/11/16 | 331158 | systems/win32/miktex/tm/packages/csquotes.tar.lzma +2019/12/03 | 331355 | systems/win32/miktex/tm/packages/csquotes.tar.lzma 2017/04/23 | 2092323 | systems/win32/miktex/tm/packages/css-colors.tar.lzma 2016/09/06 | 106657 | systems/win32/miktex/tm/packages/cstypo.tar.lzma 2019/08/13 | 235822 | systems/win32/miktex/tm/packages/csvmerge.tar.lzma @@ -262812,7 +262820,7 @@ 2019/10/04 | 281928 | systems/win32/miktex/tm/packages/filehook.tar.lzma 2012/12/04 | 924573 | systems/win32/miktex/tm/packages/fileinfo.tar.lzma 2011/09/21 | 281409 | systems/win32/miktex/tm/packages/filemod.tar.lzma -2019/12/02 | 511555 | systems/win32/miktex/tm/packages/files.csv.lzma +2019/12/03 | 512001 | systems/win32/miktex/tm/packages/files.csv.lzma 2001/05/14 | 5617 | systems/win32/miktex/tm/packages/finbib.tar.lzma 2015/10/20 | 44379 | systems/win32/miktex/tm/packages/findhyph.tar.lzma 2011/10/21 | 89323 | systems/win32/miktex/tm/packages/fink.tar.lzma @@ -263055,7 +263063,7 @@ 2014/01/14 | 985128 | systems/win32/miktex/tm/packages/graphicxbox.tar.lzma 2018/01/30 | 410183 | systems/win32/miktex/tm/packages/graphicxpsd.tar.lzma 2005/09/27 | 101378 | systems/win32/miktex/tm/packages/graphicx-psmin.cab -2018/11/30 | 528713 | systems/win32/miktex/tm/packages/graphicxsp.tar.lzma +2019/12/03 | 765941 | systems/win32/miktex/tm/packages/graphicxsp.tar.lzma 2013/08/27 | 96591 | systems/win32/miktex/tm/packages/graphviz.tar.lzma 2018/11/05 | 507707 | systems/win32/miktex/tm/packages/grayhints.tar.lzma 2005/12/30 | 83312 | systems/win32/miktex/tm/packages/greek6cbc.cab @@ -263559,7 +263567,7 @@ 2016/06/21 | 176793 | systems/win32/miktex/tm/packages/luatex85.tar.lzma 2015/10/06 | 276167 | systems/win32/miktex/tm/packages/luatexbase.tar.lzma 2019/11/20 | 3312297 | systems/win32/miktex/tm/packages/luatexja.tar.lzma -2019/08/02 | 318598 | systems/win32/miktex/tm/packages/luatexko.tar.lzma +2019/12/03 | 323255 | systems/win32/miktex/tm/packages/luatexko.tar.lzma 2010/12/23 | 322873 | systems/win32/miktex/tm/packages/luatextra.tar.lzma 2017/10/03 | 253167 | systems/win32/miktex/tm/packages/luatodonotes.tar.lzma 2019/01/08 | 296813 | systems/win32/miktex/tm/packages/lua-visual-debug.tar.lzma @@ -263924,9 +263932,9 @@ 2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma 2019/11/11 | 38784 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma 2019/11/11 | 42872 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma -2019/12/02 | 192951 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2019/12/02 | 1146652 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2019/12/02 | 1068824 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2019/12/03 | 192916 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2019/12/03 | 1147394 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2019/12/03 | 1069506 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma 2019/11/11 | 13040 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma 2019/11/11 | 14027 | systems/win32/miktex/tm/packages/miktex-zzip-bin-x64-2.9.tar.lzma 2016/07/15 | 35914 | systems/win32/miktex/tm/packages/mil3.tar.lzma @@ -264074,181 +264082,181 @@ 2018/04/09 | 400132 | systems/win32/miktex/tm/packages/newunicodechar.tar.lzma 2011/09/19 | 101312 | systems/win32/miktex/tm/packages/newvbtm.tar.lzma 2019/09/11 | 231430 | systems/win32/miktex/tm/packages/newverbs.tar.lzma -2019/12/02 | 511772 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2019/12/02 | 29239 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma -2019/12/02 | 33400 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2019/12/02 | 863201 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma -2019/12/02 | 954076 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma -2019/12/02 | 24072 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma -2019/12/02 | 26176 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma -2019/12/02 | 29296 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma -2019/12/02 | 34845 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma -2019/12/02 | 49772 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma -2019/12/02 | 57220 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma -2019/12/02 | 84536 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma -2019/12/02 | 94238 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma -2019/12/02 | 60329 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma -2019/12/02 | 67257 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2019/12/02 | 26663 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma -2019/12/02 | 30240 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma -2019/12/02 | 328877 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma -2019/12/02 | 391462 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma -2019/12/02 | 32266 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma -2019/12/02 | 36381 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma -2019/12/02 | 49263 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma -2019/12/02 | 53995 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma -2019/12/02 | 198080 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma -2019/12/02 | 214151 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2019/12/02 | 169203 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma -2019/12/02 | 184158 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma -2019/12/02 | 51772 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma -2019/12/02 | 58795 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2019/12/02 | 20739 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma -2019/12/02 | 22959 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma -2019/12/02 | 449940 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma -2019/12/02 | 40991 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma -2019/12/02 | 45811 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2019/12/02 | 271812 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2019/12/02 | 308659 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma -2019/12/02 | 40736 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma -2019/12/02 | 44981 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2019/12/02 | 112993 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma -2019/12/02 | 127173 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma -2019/12/02 | 1203296 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma -2019/12/02 | 1329052 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma -2019/12/02 | 33547 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma -2019/12/02 | 38863 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma -2019/12/02 | 43438 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2019/12/02 | 47977 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma -2019/12/02 | 45467 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2019/12/02 | 50580 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma -2019/12/02 | 56620 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma -2019/12/02 | 61656 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2019/12/02 | 133205 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma -2019/12/02 | 152163 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2019/12/02 | 69607 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma -2019/12/02 | 72599 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma -2019/12/02 | 68674 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma -2019/12/02 | 77319 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma -2019/12/02 | 246455 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma -2019/12/02 | 281673 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma -2019/12/02 | 25328 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma -2019/12/02 | 28710 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma -2019/12/02 | 100681 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma -2019/12/02 | 116800 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma -2019/12/02 | 63288 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2019/12/02 | 72572 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2019/12/02 | 94639 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma -2019/12/02 | 111235 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma -2019/12/02 | 35215 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma -2019/12/02 | 39846 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma -2019/12/02 | 457347 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2019/12/02 | 544016 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma -2019/12/02 | 137170 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2019/12/02 | 150089 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma -2019/12/02 | 92935 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma -2019/12/02 | 108760 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma -2019/12/02 | 15896 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma -2019/12/02 | 17698 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma -2019/12/02 | 27819 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma -2019/12/02 | 29690 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma -2019/12/02 | 498555 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma -2019/12/02 | 560770 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma -2019/12/02 | 538880 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma -2019/12/02 | 575921 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma -2019/12/02 | 93474 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma -2019/12/02 | 102381 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma -2019/12/02 | 1679151 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma -2019/12/02 | 1945837 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma -2019/12/02 | 67251 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma -2019/12/02 | 73635 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma -2019/12/02 | 26977 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2019/12/02 | 31295 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma -2019/12/02 | 7505 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2019/12/02 | 8484 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma -2019/12/02 | 167844 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma -2019/12/02 | 182759 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma -2019/12/02 | 247500 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2019/12/02 | 281285 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2019/12/02 | 87274 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma -2019/12/02 | 91979 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma -2019/12/02 | 77960 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma -2019/12/02 | 86581 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma -2019/12/02 | 166014 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma -2019/12/02 | 185298 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma -2019/12/02 | 146763 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma -2019/12/02 | 165963 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma -2019/12/02 | 194997 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma -2019/12/02 | 177584 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2019/12/02 | 80507 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma -2019/12/02 | 91155 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma -2019/12/02 | 30990 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma -2019/12/02 | 34834 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma -2019/12/02 | 56423 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma -2019/12/02 | 62910 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma -2019/12/02 | 41878 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2019/12/02 | 45740 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2019/12/02 | 45591 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2019/12/02 | 52141 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2019/12/02 | 354497 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-2.9.tar.lzma -2019/12/02 | 387513 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-x64-2.9.tar.lzma -2019/12/02 | 321501 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2019/12/02 | 356319 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2019/12/02 | 187298 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma -2019/12/02 | 193314 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma -2019/12/02 | 202429 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma -2019/12/02 | 237540 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2019/12/02 | 77934 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma -2019/12/02 | 87219 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma -2019/12/02 | 932883 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma -2019/12/02 | 1042665 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma -2019/12/02 | 19791 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma -2019/12/02 | 23344 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2019/12/02 | 31155 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma -2019/12/02 | 36633 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma -2019/12/02 | 63272 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma -2019/12/02 | 71699 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2019/12/02 | 42574 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2019/12/02 | 50791 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma -2019/12/02 | 1068589 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma -2019/12/02 | 1195623 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma -2019/12/02 | 41864 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2019/12/02 | 50828 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2019/12/02 | 53446 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma -2019/12/02 | 59458 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma -2019/12/02 | 26800 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2019/12/02 | 29142 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma -2019/12/02 | 16043 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma -2019/12/02 | 17763 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma -2019/12/02 | 63115 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2019/12/02 | 69211 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2019/12/02 | 147097 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma -2019/12/02 | 160559 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma -2019/12/02 | 70249 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2019/12/02 | 79845 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma -2019/12/02 | 91337 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma -2019/12/02 | 96206 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma -2019/12/02 | 2459483 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma -2019/12/02 | 2579406 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma -2019/12/02 | 54739 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2019/12/02 | 61218 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma -2019/12/02 | 26509 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2019/12/02 | 32348 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma -2019/12/02 | 61567 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma -2019/12/02 | 65025 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma -2019/12/02 | 246891 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2019/12/02 | 276602 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma -2019/12/02 | 533459 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma -2019/12/02 | 563305 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma -2019/12/02 | 39221 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma -2019/12/02 | 42943 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma -2019/12/02 | 192926 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma -2019/12/02 | 1147591 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma -2019/12/02 | 1069840 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2019/12/02 | 13062 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma -2019/12/02 | 14049 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2019/12/03 | 511550 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2019/12/03 | 29239 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2019/12/03 | 33399 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2019/12/03 | 863198 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2019/12/03 | 954075 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2019/12/03 | 24073 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2019/12/03 | 26177 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2019/12/03 | 29295 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2019/12/03 | 34845 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2019/12/03 | 49771 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2019/12/03 | 57219 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2019/12/03 | 84534 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2019/12/03 | 94239 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2019/12/03 | 60328 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2019/12/03 | 67257 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2019/12/03 | 26661 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2019/12/03 | 30238 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2019/12/03 | 328875 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2019/12/03 | 391460 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2019/12/03 | 32264 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2019/12/03 | 36378 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2019/12/03 | 49262 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2019/12/03 | 53995 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2019/12/03 | 198079 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2019/12/03 | 214150 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2019/12/03 | 169201 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2019/12/03 | 184159 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2019/12/03 | 51771 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2019/12/03 | 58793 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2019/12/03 | 20737 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2019/12/03 | 22960 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2019/12/03 | 449940 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma +2019/12/03 | 40989 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2019/12/03 | 45810 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2019/12/03 | 271812 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2019/12/03 | 308660 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2019/12/03 | 40736 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2019/12/03 | 44982 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2019/12/03 | 112994 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2019/12/03 | 127172 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2019/12/03 | 1203294 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2019/12/03 | 1329052 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2019/12/03 | 33548 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2019/12/03 | 38864 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2019/12/03 | 43438 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2019/12/03 | 47978 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2019/12/03 | 45464 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2019/12/03 | 50579 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2019/12/03 | 56619 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2019/12/03 | 61657 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2019/12/03 | 133204 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2019/12/03 | 152163 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2019/12/03 | 69608 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2019/12/03 | 72599 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2019/12/03 | 68676 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2019/12/03 | 77318 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2019/12/03 | 246455 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2019/12/03 | 281675 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2019/12/03 | 25326 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2019/12/03 | 28711 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2019/12/03 | 100681 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma +2019/12/03 | 116802 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2019/12/03 | 63288 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2019/12/03 | 72571 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2019/12/03 | 94638 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2019/12/03 | 111236 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2019/12/03 | 35215 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2019/12/03 | 39846 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2019/12/03 | 457346 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2019/12/03 | 544015 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2019/12/03 | 137170 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2019/12/03 | 150090 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2019/12/03 | 92935 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2019/12/03 | 108760 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2019/12/03 | 15895 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2019/12/03 | 17699 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2019/12/03 | 27819 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2019/12/03 | 29689 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2019/12/03 | 498554 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2019/12/03 | 560770 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2019/12/03 | 538878 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2019/12/03 | 575923 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2019/12/03 | 93474 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2019/12/03 | 102380 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2019/12/03 | 1679149 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2019/12/03 | 1945837 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2019/12/03 | 67250 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2019/12/03 | 73635 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2019/12/03 | 26977 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2019/12/03 | 31292 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2019/12/03 | 7504 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2019/12/03 | 8484 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2019/12/03 | 167844 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2019/12/03 | 182759 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2019/12/03 | 247498 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2019/12/03 | 281285 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2019/12/03 | 87274 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2019/12/03 | 91982 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2019/12/03 | 77959 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma +2019/12/03 | 86581 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma +2019/12/03 | 166013 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2019/12/03 | 185298 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2019/12/03 | 146762 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2019/12/03 | 165965 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2019/12/03 | 194996 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2019/12/03 | 177583 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2019/12/03 | 80505 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2019/12/03 | 91154 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2019/12/03 | 30989 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2019/12/03 | 34835 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2019/12/03 | 56421 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2019/12/03 | 62910 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2019/12/03 | 41878 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2019/12/03 | 45740 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2019/12/03 | 45589 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2019/12/03 | 52141 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2019/12/03 | 354499 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-2.9.tar.lzma +2019/12/03 | 387514 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-x64-2.9.tar.lzma +2019/12/03 | 321500 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2019/12/03 | 356321 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2019/12/03 | 187296 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2019/12/03 | 193314 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2019/12/03 | 202427 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2019/12/03 | 237541 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2019/12/03 | 77934 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2019/12/03 | 87219 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2019/12/03 | 932887 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2019/12/03 | 1042663 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2019/12/03 | 19790 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2019/12/03 | 23343 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2019/12/03 | 31153 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2019/12/03 | 36634 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2019/12/03 | 63273 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2019/12/03 | 71697 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2019/12/03 | 42573 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2019/12/03 | 50790 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2019/12/03 | 1068590 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2019/12/03 | 1195624 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2019/12/03 | 41862 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2019/12/03 | 50827 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2019/12/03 | 53444 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma +2019/12/03 | 59458 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma +2019/12/03 | 26799 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2019/12/03 | 29145 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2019/12/03 | 16041 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2019/12/03 | 17763 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2019/12/03 | 63117 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2019/12/03 | 69210 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2019/12/03 | 147095 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2019/12/03 | 160558 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2019/12/03 | 70248 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2019/12/03 | 79845 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2019/12/03 | 91336 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma +2019/12/03 | 96208 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2019/12/03 | 2459482 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2019/12/03 | 2579407 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2019/12/03 | 54739 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2019/12/03 | 61218 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2019/12/03 | 26509 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2019/12/03 | 32349 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2019/12/03 | 61567 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2019/12/03 | 65023 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2019/12/03 | 246890 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2019/12/03 | 276599 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2019/12/03 | 533455 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2019/12/03 | 563306 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2019/12/03 | 39220 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2019/12/03 | 42943 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2019/12/03 | 192916 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2019/12/03 | 1148234 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2019/12/03 | 1069220 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2019/12/03 | 13062 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2019/12/03 | 14050 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma 2019/03/12 | 1412 | systems/win32/miktex/tm/packages/nextpage.tar.lzma -2019/12/02 | 652 | systems/win32/miktex/tm/packages/next/pr.ini +2019/12/03 | 652 | systems/win32/miktex/tm/packages/next/pr.ini 2018/07/06 | 145915 | systems/win32/miktex/tm/packages/nexus-otf.tar.lzma 2017/03/30 | 191149 | systems/win32/miktex/tm/packages/nfssext-cfr.tar.lzma 2012/12/20 | 612251 | systems/win32/miktex/tm/packages/nicefilelist.tar.lzma @@ -264481,7 +264489,7 @@ 2011/04/08 | 603802 | systems/win32/miktex/tm/packages/piff.tar.lzma 2008/12/09 | 56609 | systems/win32/miktex/tm/packages/pigpen.tar.lzma 2011/12/07 | 296908 | systems/win32/miktex/tm/packages/pinlabel.tar.lzma -2019/11/28 | 72012 | systems/win32/miktex/tm/packages/pinoutikz.tar.lzma +2019/12/03 | 72279 | systems/win32/miktex/tm/packages/pinoutikz.tar.lzma 2011/11/22 | 131707 | systems/win32/miktex/tm/packages/pitex.tar.lzma 2004/08/23 | 126341 | systems/win32/miktex/tm/packages/pittetd.cab 2016/07/18 | 57109 | systems/win32/miktex/tm/packages/pitthesis.tar.lzma @@ -264550,7 +264558,7 @@ 2008/11/07 | 35981 | systems/win32/miktex/tm/packages/prettyref.tar.lzma 2017/07/26 | 201385 | systems/win32/miktex/tm/packages/preview.tar.lzma 2019/06/20 | 375963 | systems/win32/miktex/tm/packages/prftree.tar.lzma -2019/12/02 | 367 | systems/win32/miktex/tm/packages/pr.ini +2019/12/03 | 366 | systems/win32/miktex/tm/packages/pr.ini 2010/09/27 | 248469 | systems/win32/miktex/tm/packages/printlen.tar.lzma 2008/06/17 | 77313 | systems/win32/miktex/tm/packages/proba.tar.lzma 2017/07/12 | 988486 | systems/win32/miktex/tm/packages/probsoln.tar.lzma @@ -265527,7 +265535,7 @@ 2014/06/23 | 13295 | systems/win32/miktex/tm/packages/xetex-devanagari.tar.lzma 2008/06/21 | 2664 | systems/win32/miktex/tm/packages/xetexfontinfo.tar.lzma 2014/09/08 | 45644 | systems/win32/miktex/tm/packages/xetex-itrans.tar.lzma -2018/08/09 | 288787 | systems/win32/miktex/tm/packages/xetexko.tar.lzma +2019/12/03 | 293696 | systems/win32/miktex/tm/packages/xetexko.tar.lzma 2010/02/22 | 1496 | systems/win32/miktex/tm/packages/xetex-pstricks.tar.lzma 2019/03/07 | 161645 | systems/win32/miktex/tm/packages/xetexref.tar.lzma 2016/11/05 | 55120 | systems/win32/miktex/tm/packages/xetex.tar.lzma @@ -265657,9 +265665,9 @@ 2019/08/12 | 14654 | systems/win32/w32tex/00FILES.euc 2019/08/12 | 14654 | systems/win32/w32tex/00FILES.sjis 2019/11/15 | 4908836 | systems/win32/w32tex/aleph-w32.tar.xz -2019/11/30 | 63227688 | systems/win32/w32tex/biblatex-biber.tar.xz +2019/12/01 | 63288264 | systems/win32/w32tex/biblatex-biber.tar.xz 2016/12/13 | 65971452 | systems/win32/w32tex/cbfonts.tar.xz -2019/12/01 | 555140 | systems/win32/w32tex/ChangeLog +2019/12/02 | 555313 | systems/win32/w32tex/ChangeLog 2009/08/03 | 141221 | systems/win32/w32tex/ChangeLog.0 2009/08/03 | 221890 | systems/win32/w32tex/ChangeLog.1 2009/08/03 | 116462 | systems/win32/w32tex/ChangeLog.2 @@ -265697,11 +265705,11 @@ 2019/11/04 | 524272 | systems/win32/w32tex/mftrace-w32.tar.xz 2018/07/14 | 6364952 | systems/win32/w32tex/minitoc.tar.xz 2019/01/25 | 882860 | systems/win32/w32tex/m-tx.tar.xz -2019/11/22 | 8243124 | systems/win32/w32tex/newtxpx-boondoxfonts.tar.xz +2019/12/02 | 8243180 | systems/win32/w32tex/newtxpx-boondoxfonts.tar.xz 2019/11/07 | 1217272 | systems/win32/w32tex/omegaj-w32.tar.xz 2019/09/08 | 357888 | systems/win32/w32tex/otfbeta.tar.xz 2019/11/30 | 12851568 | systems/win32/w32tex/pdftex-w32.tar.xz -2019/11/28 | 81377476 | systems/win32/w32tex/pgfcontrib.tar.xz +2019/12/01 | 81401856 | systems/win32/w32tex/pgfcontrib.tar.xz 2015/01/26 | 189072 | systems/win32/w32tex/plain2-2.54-w32.tar.xz 2019/10/22 | 2933444 | systems/win32/w32tex/platex.tar.xz 2018/03/05 | 1467972 | systems/win32/w32tex/pmx.tar.xz @@ -265873,7 +265881,7 @@ 2004/06/04 | 404 | tds/tds.sed 2004/06/23 | 65418 | tds/tds.tex 2019/05/29 | 304264 | tds.zip -2019/12/03 | 186 | timestamp +2019/12/04 | 186 | timestamp 2002/08/26 | 61898 | usergrps/dante/antrag.pdf 2002/08/26 | 118217 | usergrps/dante/antrag.ps 2017/06/30 | 917 | usergrps/dante/dtk/doc/beispiel.bib diff --git a/FILES.byname.gz b/FILES.byname.gz index 0b7eae57e7..1742a8c9f0 100644 Binary files a/FILES.byname.gz and b/FILES.byname.gz differ diff --git a/FILES.last07days b/FILES.last07days index d343e0ced0..824ee5b442 100644 --- a/FILES.last07days +++ b/FILES.last07days @@ -1,289 +1,380 @@ +2019/12/03 | 9757 | macros/latex/contrib/biblatex-contrib/archaeologie/README.md +2019/12/03 | 96208 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2019/12/03 | 954075 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2019/12/03 | 94638 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2019/12/03 | 94239 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2019/12/03 | 93584 | macros/latex/contrib/bookmark/bookmark.dtx +2019/12/03 | 93474 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2019/12/03 | 932887 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2019/12/03 | 92935 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2019/12/03 | 91982 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2019/12/03 | 9188 | macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.tex +2019/12/03 | 91336 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma +2019/12/03 | 91154 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2019/12/03 | 87274 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2019/12/03 | 87219 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2019/12/03 | 86581 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma +2019/12/03 | 863198 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2019/12/03 | 85432 | systems/texlive/tlnet/archive/texlive-scripts.r52996.tar.xz +2019/12/03 | 8484 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2019/12/03 | 84534 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2019/12/03 | 839584 | systems/texlive/tlnet/archive/newtx.doc.r52998.tar.xz +2019/12/03 | 82709 | macros/latex/contrib/animate/animate.tex +2019/12/03 | 80505 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2019/12/03 | 79845 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2019/12/03 | 7936 | macros/latex/contrib/knowledge/knowledge-configuration.dtx +2019/12/03 | 789186 | macros/latex/contrib/knowledge.zip +2019/12/03 | 77959 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma +2019/12/03 | 77934 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2019/12/03 | 77318 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2019/12/03 | 765941 | systems/win32/miktex/tm/packages/graphicxsp.tar.lzma +2019/12/03 | 762366 | macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.dtx +2019/12/03 | 7504 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2019/12/03 | 73635 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2019/12/03 | 732 | systems/texlive/tlnet/archive/collection-latexrecommended.r53004.tar.xz +2019/12/03 | 72599 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2019/12/03 | 72571 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2019/12/03 | 72279 | systems/win32/miktex/tm/packages/pinoutikz.tar.lzma +2019/12/03 | 7172764 | systems/texlive/tlnet/archive/biblatex.doc.r53003.tar.xz +2019/12/03 | 71697 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2019/12/03 | 702619 | macros/latex/contrib/knowledge/knowledge.pdf +2019/12/03 | 70248 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2019/12/03 | 69608 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2019/12/03 | 69492 | systems/texlive/tlnet/archive/pinoutikz.doc.r52999.tar.xz +2019/12/03 | 69210 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2019/12/03 | 68676 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2019/12/03 | 67257 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2019/12/03 | 67250 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2019/12/03 | 6699 | macros/latex/contrib/knowledge/knowledge-example.tex +2019/12/03 | 655 | macros/latex/contrib/biblatex-contrib/biblatex-phys/README.md +2019/12/03 | 652 | systems/win32/miktex/tm/packages/next/pr.ini +2019/12/03 | 65023 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2019/12/03 | 63288 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2019/12/03 | 63273 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2019/12/03 | 63117 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2019/12/03 | 62910 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2019/12/03 | 61657 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2019/12/03 | 61567 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2019/12/03 | 61218 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2019/12/03 | 60328 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2019/12/03 | 5976 | systems/texlive/tlnet/archive/collection-latexextra.r53003.tar.xz +2019/12/03 | 59458 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma +2019/12/03 | 58793 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2019/12/03 | 57640 | macros/latex/contrib/embedfile/embedfile.dtx +2019/12/03 | 575923 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2019/12/03 | 57320 | systems/texlive/tlnet/archive/xetexko.r53002.tar.xz +2019/12/03 | 57219 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2019/12/03 | 56619 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2019/12/03 | 56421 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2019/12/03 | 563306 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2019/12/03 | 560770 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2019/12/03 | 54739 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2019/12/03 | 544015 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2019/12/03 | 540 | systems/texlive/tlnet/archive/collection-latex.r53004.tar.xz +2019/12/03 | 53995 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2019/12/03 | 538878 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2019/12/03 | 53444 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma +2019/12/03 | 533455 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2019/12/03 | 52141 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2019/12/03 | 51771 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2019/12/03 | 51204 | systems/texlive/tlnet/archive/texlive-scripts.doc.r52996.tar.xz +2019/12/03 | 512001 | systems/win32/miktex/tm/packages/files.csv.lzma +2019/12/03 | 511550 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2019/12/03 | 50827 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2019/12/03 | 50790 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2019/12/03 | 50579 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2019/12/03 | 503071 | install/macros/latex/contrib/bookmark.tds.zip +2019/12/03 | 498554 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2019/12/03 | 49771 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2019/12/03 | 49262 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2019/12/03 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2019/12/03 | 481265 | macros/latex/contrib/bookmark.zip +2019/12/03 | 47978 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2019/12/03 | 475757 | macros/latex/contrib/bookmark/bookmark.pdf +2019/12/03 | 460970 | install/macros/latex/contrib/biblatex-contrib/biblatex-phys.tds.zip +2019/12/03 | 459931 | macros/latex/contrib/biblatex-contrib/biblatex-phys.zip +2019/12/03 | 45810 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2019/12/03 | 45740 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2019/12/03 | 457346 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2019/12/03 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2019/12/03 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2019/12/03 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2019/12/03 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2019/12/03 | 45589 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2019/12/03 | 45464 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2019/12/03 | 4533088 | systems/texlive/tlnet/archive/newtx.r52998.tar.xz +2019/12/03 | 449940 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma +2019/12/03 | 44982 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2019/12/03 | 448675 | macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.pdf +2019/12/03 | 448456 | systems/texlive/tlnet/archive/hyperref.source.r53004.tar.xz +2019/12/03 | 44697 | macros/latex/contrib/knowledge/knowledge-utils.dtx +2019/12/03 | 43438 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2019/12/03 | 42943 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2019/12/03 | 42573 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2019/12/03 | 41878 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2019/12/03 | 41862 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2019/12/03 | 40989 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2019/12/03 | 40736 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2019/12/03 | 406694 | install/macros/latex/contrib/embedfile.tds.zip +2019/12/03 | 39846 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2019/12/03 | 397370 | macros/latex/contrib/embedfile.zip +2019/12/03 | 3947419 | systems/texlive/tlnet/install-tl-unx.tar.gz +2019/12/03 | 3925892 | macros/latex/contrib/animate/animate.pdf +2019/12/03 | 39220 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2019/12/03 | 391565 | macros/latex/contrib/embedfile/embedfile.pdf +2019/12/03 | 391460 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2019/12/03 | 38864 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2019/12/03 | 387514 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-x64-2.9.tar.lzma +2019/12/03 | 382257 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.pdf +2019/12/03 | 3792 | systems/texlive/tlnet/archive/logreq.doc.r53003.tar.xz +2019/12/03 | 366 | systems/win32/miktex/tm/packages/pr.ini +2019/12/03 | 36634 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2019/12/03 | 36378 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2019/12/03 | 356321 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2019/12/03 | 354499 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-2.9.tar.lzma +2019/12/03 | 35215 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2019/12/03 | 34845 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2019/12/03 | 34835 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2019/12/03 | 33548 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2019/12/03 | 33399 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2019/12/03 | 331355 | systems/win32/miktex/tm/packages/csquotes.tar.lzma +2019/12/03 | 328 | macros/latex/contrib/bookmark/README.md +2019/12/03 | 328875 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2019/12/03 | 325872 | systems/texlive/tlnet/archive/oberdiek.source.r53004.tar.xz +2019/12/03 | 3237505 | install/macros/latex/contrib/animate.tds.zip +2019/12/03 | 3235221 | macros/latex/contrib/animate.zip +2019/12/03 | 32349 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2019/12/03 | 323255 | systems/win32/miktex/tm/packages/luatexko.tar.lzma +2019/12/03 | 32264 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2019/12/03 | 321500 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2019/12/03 | 3213732 | systems/texlive/tlnet/archive/hyperref.doc.r53004.tar.xz +2019/12/03 | 3212 | systems/texlive/tlnet/archive/logreq.r53003.tar.xz +2019/12/03 | 31292 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2019/12/03 | 31153 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2019/12/03 | 30989 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2019/12/03 | 308660 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2019/12/03 | 30238 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2019/12/03 | 300508 | systems/texlive/tlnet/archive/luatexko.doc.r53001.tar.xz +2019/12/03 | 29689 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2019/12/03 | 293696 | systems/win32/miktex/tm/packages/xetexko.tar.lzma +2019/12/03 | 29295 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2019/12/03 | 29239 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2019/12/03 | 291825 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-acs.pdf +2019/12/03 | 29145 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2019/12/03 | 28711 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2019/12/03 | 281675 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2019/12/03 | 281285 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2019/12/03 | 27819 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2019/12/03 | 276599 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2019/12/03 | 276273 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-biochem.pdf +2019/12/03 | 275766 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-angew.pdf +2019/12/03 | 273290 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-rsc.pdf +2019/12/03 | 271812 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2019/12/03 | 2700 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.cbx +2019/12/03 | 26977 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2019/12/03 | 26799 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2019/12/03 | 26661 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2019/12/03 | 26509 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2019/12/03 | 26177 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2019/12/03 | 2614 | macros/latex/contrib/knowledge/makefile +2019/12/03 | 2579407 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2019/12/03 | 25326 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2019/12/03 | 2500 | systems/texlive/tlnet/archive/pinoutikz.r52999.tar.xz +2019/12/03 | 248023 | systems/win32/miktex/tm/packages/biblatex-apa6.tar.lzma +2019/12/03 | 247498 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2019/12/03 | 246890 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2019/12/03 | 246455 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2019/12/03 | 2459482 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2019/12/03 | 24073 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2019/12/03 | 237541 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2019/12/03 | 236080 | systems/texlive/tlnet/archive/xetexko.doc.r53002.tar.xz +2019/12/03 | 23343 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2019/12/03 | 22960 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2019/12/03 | 2289 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.cbx +2019/12/03 | 226776 | systems/texlive/tlnet/archive/biblatex-apa6.doc.r53000.tar.xz +2019/12/03 | 22539406 | systems/texlive/tlnet/install-tl.zip +2019/12/03 | 2223 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.cbx +2019/12/03 | 2221 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.cbx +2019/12/03 | 2204 | macros/latex/contrib/biblatex-contrib/archaeologie/Makefile +2019/12/03 | 21760 | systems/texlive/tlnet/archive/luatexko.r53001.tar.xz +2019/12/03 | 215468 | systems/texlive/tlnet/archive/biblatex.r53003.tar.xz +2019/12/03 | 2148016 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2019/12/03 | 214150 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2019/12/03 | 20988 | systems/texlive/tlnet/archive/biblatex-apa6.r53000.tar.xz +2019/12/03 | 20737 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2019/12/03 | 2025 | macros/latex/contrib/knowledge/README.md +2019/12/03 | 202427 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2019/12/03 | 198079 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2019/12/03 | 19790 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2019/12/03 | 194996 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2019/12/03 | 19463 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.bbx +2019/12/03 | 1945837 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2019/12/03 | 193314 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2019/12/03 | 192916 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2019/12/03 | 192916 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2019/12/03 | 18753 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.bbx +2019/12/03 | 187296 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2019/12/03 | 18700220 | systems/texlive/tlnet/install-tl-windows.exe +2019/12/03 | 185298 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2019/12/03 | 184159 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2019/12/03 | 182759 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2019/12/03 | 182368 | systems/texlive/tlnet/archive/erewhon-math.r52997.tar.xz +2019/12/03 | 17830 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.bbx +2019/12/03 | 17763 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2019/12/03 | 177583 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2019/12/03 | 17699 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2019/12/03 | 1760 | systems/texlive/tlnet/archive/collection-fontsextra.r52997.tar.xz +2019/12/03 | 1759 | macros/latex/contrib/knowledge/knowledge.ins +2019/12/03 | 169201 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2019/12/03 | 1679149 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2019/12/03 | 167844 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2019/12/03 | 16680 | macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.bbx +2019/12/03 | 166013 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2019/12/03 | 165965 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2019/12/03 | 160558 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2019/12/03 | 16041 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2019/12/03 | 15989166 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2019/12/03 | 15895 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2019/12/03 | 157894 | macros/latex/contrib/knowledge/knowledge-code.dtx +2019/12/03 | 156072 | systems/texlive/tlnet/archive/texlive-docindex.doc.r52996.tar.xz +2019/12/03 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2019/12/03 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2019/12/03 | 152436 | macros/latex/contrib/knowledge/knowledge.tex +2019/12/03 | 1524215 | install/macros/latex/contrib/biblatex-contrib/biblatex-chem.tds.zip +2019/12/03 | 1522445 | macros/latex/contrib/biblatex-contrib/biblatex-chem.zip +2019/12/03 | 152163 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2019/12/03 | 150090 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2019/12/03 | 148 | macros/latex/contrib/embedfile/README.md +2019/12/03 | 147095 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2019/12/03 | 146762 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2019/12/03 | 1464048 | systems/texlive/tlnet/archive/erewhon-math.doc.r52997.tar.xz +2019/12/03 | 1460 | macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.cbx +2019/12/03 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2019/12/03 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2019/12/03 | 14050 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2019/12/03 | 139242 | macros/latex/contrib/animate/animate.sty +2019/12/03 | 1387 | macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.dbx +2019/12/03 | 137170 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2019/12/03 | 13519 | macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.bib +2019/12/03 | 133204 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2019/12/03 | 1329052 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2019/12/03 | 13062 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2019/12/03 | 127172 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2019/12/03 | 12670 | macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.bbx +2019/12/03 | 12421 | macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.tex +2019/12/03 | 1203294 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2019/12/03 | 1195624 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2019/12/03 | 116802 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2019/12/03 | 115304 | systems/texlive/tlnet/archive/oberdiek.r53004.tar.xz +2019/12/03 | 1151924 | macros/latex/contrib/biblatex-contrib/archaeologie.zip +2019/12/03 | 1148234 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2019/12/03 | 1147394 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2019/12/03 | 112994 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2019/12/03 | 111236 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2019/12/03 | 10993 | macros/latex/contrib/animate/ChangeLog +2019/12/03 | 109880 | systems/texlive/tlnet/archive/texlive-docindex.r52996.tar.xz +2019/12/03 | 108788 | systems/texlive/tlnet/archive/hyperref.r53004.tar.xz +2019/12/03 | 108760 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2019/12/03 | 1069506 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2019/12/03 | 1069220 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2019/12/03 | 1068590 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2019/12/03 | 1062129 | macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.pdf +2019/12/03 | 10519844 | systems/texlive/tlnet/archive/oberdiek.doc.r53004.tar.xz +2019/12/03 | 1042663 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2019/12/03 | 102380 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2019/12/03 | 100681 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma 2019/12/02 | 98923 | macros/xetex/generic/xetexko/xetexko-space.sty 2019/12/02 | 98102 | systems/win32/miktex/tm/packages/hvqrurl.tar.lzma 2019/12/02 | 980052 | systems/win32/miktex/tm/packages/circuitikz.tar.lzma 2019/12/02 | 979408 | systems/texlive/tlnet/archive/tracklang.doc.r52991.tar.xz 2019/12/02 | 96644 | systems/texlive/tlnet/archive/hvqrurl.doc.r52993.tar.xz -2019/12/02 | 96206 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma -2019/12/02 | 954076 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma -2019/12/02 | 94639 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma -2019/12/02 | 94238 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma -2019/12/02 | 93474 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma -2019/12/02 | 932883 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma -2019/12/02 | 92935 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma 2019/12/02 | 92719 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/biblatex-apa6.pdf 2019/12/02 | 924032 | macros/latex/contrib/graphicxsp.zip -2019/12/02 | 91979 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma -2019/12/02 | 91337 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma -2019/12/02 | 91155 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma 2019/12/02 | 881896 | systems/texlive/tlnet/archive/circuitikz.doc.r52990.tar.xz -2019/12/02 | 87274 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma -2019/12/02 | 87219 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma -2019/12/02 | 86581 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma -2019/12/02 | 863201 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma -2019/12/02 | 8484 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma -2019/12/02 | 84536 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma 2019/12/02 | 8332 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/ngerman-apa6.lbx 2019/12/02 | 8243 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/nswissgerman-apa6.lbx +2019/12/02 | 8243180 | systems/win32/w32tex/newtxpx-boondoxfonts.tar.xz 2019/12/02 | 8239 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/swissgerman-apa6.lbx 2019/12/02 | 8231 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/naustrian-apa6.lbx 2019/12/02 | 8217 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/austrian-apa6.lbx 2019/12/02 | 8192 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/german-apa6.lbx -2019/12/02 | 80507 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma -2019/12/02 | 79845 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma 2019/12/02 | 7888 | graphics/pgf/contrib/pinoutikz/pinoutikz.sty 2019/12/02 | 7807801 | support/texlab.zip -2019/12/02 | 77960 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma -2019/12/02 | 77934 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma 2019/12/02 | 7768 | macros/xetex/generic/xetexko/xetexko-josa.sty -2019/12/02 | 77319 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma -2019/12/02 | 7505 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2019/12/02 | 73635 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma -2019/12/02 | 72599 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma -2019/12/02 | 72572 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2019/12/02 | 71699 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma 2019/12/02 | 71516 | graphics/pgf/contrib/pinoutikz.zip -2019/12/02 | 70249 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2019/12/02 | 69607 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma -2019/12/02 | 69211 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2019/12/02 | 68674 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma 2019/12/02 | 68402 | graphics/pgf/contrib/pinoutikz/pinoutikz_doc_en.pdf -2019/12/02 | 67257 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2019/12/02 | 67251 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma 2019/12/02 | 66918 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/apa6.bbx 2019/12/02 | 6584 | macros/luatex/generic/luatexko/ChangeLog -2019/12/02 | 652 | systems/win32/miktex/tm/packages/next/pr.ini -2019/12/02 | 65025 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma 2019/12/02 | 64605 | macros/luatex/generic/luatexko/luatexko.lua 2019/12/02 | 6355 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/greek-apa6.lbx -2019/12/02 | 63288 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2019/12/02 | 63272 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma -2019/12/02 | 63115 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2019/12/02 | 62910 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma 2019/12/02 | 628059 | systems/win32/miktex/tm/packages/fourier.tar.lzma 2019/12/02 | 62507 | macros/latex/contrib/csquotes/csquotes.sty -2019/12/02 | 61656 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2019/12/02 | 61567 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma -2019/12/02 | 61218 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma -2019/12/02 | 60329 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma 2019/12/02 | 6023 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/spanish-apa6.lbx 2019/12/02 | 5987 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/galician-apa6.lbx -2019/12/02 | 59458 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma -2019/12/02 | 58795 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2019/12/02 | 575921 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma 2019/12/02 | 57524 | systems/texlive/tlnet/archive/tracklang.source.r52991.tar.xz 2019/12/02 | 5737 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/russian-apa6.lbx -2019/12/02 | 57220 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma -2019/12/02 | 56620 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2019/12/02 | 5651 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2019/12/02 | 5649 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/slovene-apa6.lbx -2019/12/02 | 56423 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma -2019/12/02 | 563305 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma -2019/12/02 | 560770 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma -2019/12/02 | 54739 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2019/12/02 | 544016 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2019/12/02 | 555313 | systems/win32/w32tex/ChangeLog 2019/12/02 | 5410 | macros/xetex/generic/xetexko/ChangeLog -2019/12/02 | 53995 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma 2019/12/02 | 5395 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/danish-apa6.lbx -2019/12/02 | 538880 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma 2019/12/02 | 5378 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/french-apa6.lbx 2019/12/02 | 5373796 | systems/win32/miktex/tm/packages/newtx.tar.lzma -2019/12/02 | 53446 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma -2019/12/02 | 533459 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma 2019/12/02 | 5312 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/italian-apa6.lbx 2019/12/02 | 5283 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/american-apa6.lbx 2019/12/02 | 5282 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/english-apa6.lbx -2019/12/02 | 52141 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2019/12/02 | 51772 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma 2019/12/02 | 5156 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/british-apa6.lbx -2019/12/02 | 511772 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2019/12/02 | 511555 | systems/win32/miktex/tm/packages/files.csv.lzma 2019/12/02 | 5093 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/nynorsk-apa6.lbx -2019/12/02 | 50828 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2019/12/02 | 50791 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma 2019/12/02 | 5077 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/norwegian-apa6.lbx 2019/12/02 | 5077 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/norsk-apa6.lbx 2019/12/02 | 5075 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/dutch-apa6.lbx -2019/12/02 | 50580 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma 2019/12/02 | 5004 | macros/xetex/generic/xetexko/xetexko-vertical.sty -2019/12/02 | 498555 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma -2019/12/02 | 49772 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma 2019/12/02 | 4970 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/brazilian-apa6.lbx -2019/12/02 | 49263 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma -2019/12/02 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2019/12/02 | 4874 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/swedish-apa6.lbx 2019/12/02 | 4844 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/portuguese-apa6.lbx -2019/12/02 | 47977 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma -2019/12/02 | 45811 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2019/12/02 | 45740 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2019/12/02 | 457347 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2019/12/02 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2019/12/02 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc -2019/12/02 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2019/12/02 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc -2019/12/02 | 45591 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2019/12/02 | 45467 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2019/12/02 | 449940 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma -2019/12/02 | 44981 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2019/12/02 | 43438 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2019/12/02 | 42943 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma -2019/12/02 | 42574 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2019/12/02 | 41878 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2019/12/02 | 41864 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2019/12/02 | 40991 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma -2019/12/02 | 40736 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma 2019/12/02 | 4049 | macros/xetex/generic/xetexko/xetexko-hanging.sty -2019/12/02 | 39846 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma 2019/12/02 | 39492 | macros/xetex/generic/xetexko/hanjaexa_hangul.tab -2019/12/02 | 3947528 | systems/texlive/tlnet/install-tl-unx.tar.gz -2019/12/02 | 39221 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma -2019/12/02 | 391462 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma -2019/12/02 | 38863 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma -2019/12/02 | 387513 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-x64-2.9.tar.lzma 2019/12/02 | 38281 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/biblatex-apa6-test-references.bib +2019/12/02 | 3824 | macros/latex/contrib/animate/README.md 2019/12/02 | 3783 | macros/luatex/generic/luatexko/luatexko-uhc2utf8.lua 2019/12/02 | 3753 | macros/latex/contrib/csquotes/csq-compat.def 2019/12/02 | 3720 | macros/luatex/generic/luatexko/README -2019/12/02 | 367 | systems/win32/miktex/tm/packages/pr.ini -2019/12/02 | 36633 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma 2019/12/02 | 3651 | macros/xetex/generic/xetexko/xetexko.sty -2019/12/02 | 36381 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma 2019/12/02 | 361496 | systems/texlive/tlnet/archive/fourier.doc.r52994.tar.xz -2019/12/02 | 356319 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2019/12/02 | 354497 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-2.9.tar.lzma -2019/12/02 | 35215 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma 2019/12/02 | 3513 | macros/xetex/generic/xetexko/README -2019/12/02 | 34845 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma -2019/12/02 | 34834 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma 2019/12/02 | 338392 | install/macros/latex/contrib/csquotes.tds.zip 2019/12/02 | 337399 | macros/latex/contrib/csquotes.zip -2019/12/02 | 33547 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma -2019/12/02 | 33400 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2019/12/02 | 328877 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma 2019/12/02 | 326756 | macros/luatex/generic/luatexko.zip -2019/12/02 | 32348 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma -2019/12/02 | 32266 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma 2019/12/02 | 32235 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/biblatex-apa6.tex -2019/12/02 | 321501 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2019/12/02 | 31295 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma -2019/12/02 | 31155 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma 2019/12/02 | 310223 | macros/xetex/generic/xetexko.zip 2019/12/02 | 31010 | macros/luatex/generic/luatexko/luatexko-doc.tex -2019/12/02 | 30990 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma -2019/12/02 | 308659 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma -2019/12/02 | 30240 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma -2019/12/02 | 29690 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma -2019/12/02 | 29296 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma -2019/12/02 | 29239 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma 2019/12/02 | 291994 | macros/latex/contrib/csquotes/csquotes.pdf 2019/12/02 | 291555 | macros/luatex/generic/luatexko/luatexko-doc.pdf -2019/12/02 | 29142 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma 2019/12/02 | 28832 | macros/xetex/generic/xetexko/xetexko-doc.tex -2019/12/02 | 28710 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma 2019/12/02 | 283026 | macros/latex/contrib/biblatex-contrib/biblatex-apa6.zip -2019/12/02 | 281673 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma -2019/12/02 | 281285 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2019/12/02 | 27819 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma -2019/12/02 | 276602 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma -2019/12/02 | 271812 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2019/12/02 | 26977 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2019/12/02 | 26800 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2019/12/02 | 26663 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma 2019/12/02 | 265280 | systems/texlive/tlnet/archive/fourier.r52994.tar.xz -2019/12/02 | 26509 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2019/12/02 | 26176 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma -2019/12/02 | 2579406 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma 2019/12/02 | 25779 | macros/luatex/generic/luatexko/luatexko.sty -2019/12/02 | 25328 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma -2019/12/02 | 247663 | systems/win32/miktex/tm/packages/biblatex-apa6.tar.lzma -2019/12/02 | 247500 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2019/12/02 | 246891 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2019/12/02 | 246455 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma -2019/12/02 | 2459483 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma -2019/12/02 | 24072 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma -2019/12/02 | 237540 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2019/12/02 | 23344 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2019/12/02 | 22959 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma 2019/12/02 | 227528 | macros/xetex/generic/xetexko/xetexko-doc.pdf -2019/12/02 | 226436 | systems/texlive/tlnet/archive/biblatex-apa6.doc.r52992.tar.xz -2019/12/02 | 22539445 | systems/texlive/tlnet/install-tl.zip -2019/12/02 | 2148168 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz -2019/12/02 | 214151 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2019/12/02 | 21004 | systems/texlive/tlnet/archive/biblatex-apa6.r52992.tar.xz 2019/12/02 | 2086 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/apa6.dbx -2019/12/02 | 20739 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma 2019/12/02 | 20319 | macros/latex/contrib/csquotes/csquotes.def 2019/12/02 | 20248 | macros/xetex/generic/xetexko/xetexko-font.sty -2019/12/02 | 202429 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma -2019/12/02 | 198080 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma -2019/12/02 | 19791 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma -2019/12/02 | 194997 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma -2019/12/02 | 1945837 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma -2019/12/02 | 193314 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma -2019/12/02 | 192951 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2019/12/02 | 192926 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma 2019/12/02 | 19104 | systems/texlive/tlnet/archive/tracklang.r52991.tar.xz -2019/12/02 | 187298 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma -2019/12/02 | 18699327 | systems/texlive/tlnet/install-tl-windows.exe 2019/12/02 | 18585 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/apa6.cbx -2019/12/02 | 185298 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma -2019/12/02 | 184158 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma -2019/12/02 | 182759 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma 2019/12/02 | 1812 | macros/xetex/generic/xetexko/hanjacom_hangul.tab -2019/12/02 | 17763 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma -2019/12/02 | 177584 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2019/12/02 | 17698 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma 2019/12/02 | 1759 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/README 2019/12/02 | 17414 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/biblatex-apa6-test.tex -2019/12/02 | 169203 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma -2019/12/02 | 1679151 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma -2019/12/02 | 167844 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma -2019/12/02 | 166014 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma -2019/12/02 | 165963 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma 2019/12/02 | 1652509 | systems/win32/miktex/tm/packages/erewhon-math.tar.lzma 2019/12/02 | 16457 | macros/luatex/generic/luatexko/luatexko-normalize.lua -2019/12/02 | 160559 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma -2019/12/02 | 16043 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma -2019/12/02 | 15987591 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2019/12/02 | 15896 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma 2019/12/02 | 157458 | systems/win32/miktex/tm/packages/barracuda.tar.lzma -2019/12/02 | 156064 | systems/texlive/tlnet/archive/texlive-docindex.doc.r52989.tar.xz -2019/12/02 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2019/12/02 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2019/12/02 | 152163 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2019/12/02 | 150089 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma 2019/12/02 | 14864 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/biblatex-apa6-test-citations.bib 2019/12/02 | 1470 | macros/latex/contrib/graphicxsp/README.md -2019/12/02 | 147097 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma -2019/12/02 | 146763 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma -2019/12/02 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2019/12/02 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2019/12/02 | 14049 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma -2019/12/02 | 137170 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2019/12/02 | 133205 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma -2019/12/02 | 1329052 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma -2019/12/02 | 13062 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma -2019/12/02 | 127173 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma 2019/12/02 | 125412 | macros/xetex/generic/xetexko/hanja_hangul.tab 2019/12/02 | 1248 | graphics/pgf/contrib/pinoutikz/README.md 2019/12/02 | 1240 | systems/texlive/tlnet/archive/hvqrurl.r52993.tar.xz 2019/12/02 | 122685 | macros/latex/contrib/csquotes/csquotes.tex -2019/12/02 | 1203296 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma -2019/12/02 | 1195623 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma -2019/12/02 | 116800 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma -2019/12/02 | 1147591 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma -2019/12/02 | 1146652 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2019/12/02 | 112993 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma -2019/12/02 | 111235 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma 2019/12/02 | 110096 | macros/latex/contrib/biblatex-contrib/biblatex-apa6/biblatex-apa6-test.pdf -2019/12/02 | 109880 | systems/texlive/tlnet/archive/texlive-docindex.r52989.tar.xz -2019/12/02 | 108760 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma -2019/12/02 | 1069840 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2019/12/02 | 1068824 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma -2019/12/02 | 1068589 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma 2019/12/02 | 106136 | systems/texlive/tlnet/archive/circuitikz.r52990.tar.xz 2019/12/02 | 1057831 | systems/win32/miktex/tm/packages/tracklang.tar.lzma -2019/12/02 | 1042665 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma -2019/12/02 | 102381 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma -2019/12/02 | 100681 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma 2019/12/01 | 9 | support/texlab/tests/scenarios/diagnostics/bibtex/foo.bib 2019/12/01 | 990309 | fonts/fourier-GUT.zip 2019/12/01 | 98 | support/texlab/tests/scenarios/definition/latex/label/item.tex @@ -309,7 +400,6 @@ 2019/12/01 | 8681 | support/texlab/crates/bibutils_sys/src/wordin.c 2019/12/01 | 86683 | graphics/pgf/contrib/circuitikz/tex/pgfcirc.defines.tex 2019/12/01 | 8636 | support/texlab/crates/bibutils_sys/src/xml.c -2019/12/01 | 85456 | systems/texlive/tlnet/archive/texlive-scripts.r52974.tar.xz 2019/12/01 | 850 | support/texlab/src/diagnostics/mod.rs 2019/12/01 | 84 | support/texlab/tests/scenarios/completion/latex/citation/foo.tex 2019/12/01 | 848 | macros/generic/tracklang/samples/animals/animals2.sty @@ -321,6 +411,7 @@ 2019/12/01 | 827 | support/texlab/src/range.rs 2019/12/01 | 825 | support/texlab/tests/scenarios/folding/bar.bib 2019/12/01 | 815539 | graphics/pgf/contrib/circuitikz/doc/circuitikzmanual.pdf +2019/12/01 | 81401856 | systems/win32/w32tex/pgfcontrib.tar.xz 2019/12/01 | 808 | support/texlab/tests/scenarios/symbol/workspace/foo.aux 2019/12/01 | 8005 | support/texlab/src/symbol/mod.rs 2019/12/01 | 793 | support/texlab/src/action.rs @@ -381,6 +472,7 @@ 2019/12/01 | 63 | support/texlab/tests/scenarios/diagnostics/build/foo.tex 2019/12/01 | 637 | support/texlab/tests/test_hover_bibtex_field.rs 2019/12/01 | 6358326 | systems/texlive/tlnet/update-tlmgr-r52975.sh +2019/12/01 | 63288264 | systems/win32/w32tex/biblatex-biber.tar.xz 2019/12/01 | 6323 | fonts/erewhon-math/fourier-otf.sty 2019/12/01 | 630 | macros/generic/tracklang/samples/regions/sample-regions2-map.tex 2019/12/01 | 62 | support/texlab/tests/scenarios/symbol/hierarchical/theorem.aux @@ -395,7 +487,6 @@ 2019/12/01 | 60 | support/texlab/tests/scenarios/symbol/hierarchical/enumerate.aux 2019/12/01 | 60 | support/texlab/tests/scenarios/hover/bibtex/field/foo.bib 2019/12/01 | 5992 | support/texlab/src/reference/latex_label.rs -2019/12/01 | 5980 | systems/texlive/tlnet/archive/collection-latexextra.r52986.tar.xz 2019/12/01 | 5932 | support/texlab/crates/bibutils_sys/src/gb18030.c 2019/12/01 | 588 | support/texlab/tests/test_definition_latex_math_operator.rs 2019/12/01 | 586860 | systems/win32/miktex/tm/packages/biblatex-ext.tar.lzma @@ -414,7 +505,6 @@ 2019/12/01 | 5586 | support/texlab/src/completion/latex/user.rs 2019/12/01 | 557708 | systems/texlive/tlnet/archive/biblatex-ext.doc.r52977.tar.xz 2019/12/01 | 555 | support/texlab/crates/bibutils_sys/src/unicode.h -2019/12/01 | 555140 | systems/win32/w32tex/ChangeLog 2019/12/01 | 551 | support/texlab/crates/bibutils_sys/src/utf8.h 2019/12/01 | 54 | support/texlab/tests/scenarios/completion/bibtex/field/foo.bib 2019/12/01 | 548 | support/texlab/tests/test_hover_latex_component.rs @@ -428,7 +518,6 @@ 2019/12/01 | 525 | support/texlab/tests/test_hover_latex_citation.rs 2019/12/01 | 52052 | systems/texlive/tlnet/archive/curve2e.source.r52978.tar.xz 2019/12/01 | 5129 | graphics/pgf/contrib/circuitikz/doc/ctikzmanutils.sty -2019/12/01 | 51204 | systems/texlive/tlnet/archive/texlive-scripts.doc.r52974.tar.xz 2019/12/01 | 511 | graphics/pgf/contrib/circuitikz/doc/circuitikz-context.tex 2019/12/01 | 507783 | systems/win32/miktex/tm/packages/kvoptions.tar.lzma 2019/12/01 | 503 | support/texlab/crates/bibutils_sys/src/type.h @@ -586,7 +675,6 @@ 2019/12/01 | 327 | macros/generic/tracklang/samples/animals/sample-animals-babel.tex 2019/12/01 | 32782 | fonts/newtx/README 2019/12/01 | 3276 | graphics/pgf/contrib/circuitikz/README.md -2019/12/01 | 325872 | systems/texlive/tlnet/archive/oberdiek.source.r52987.tar.xz 2019/12/01 | 3256 | support/texlab/src/folding/latex_section.rs 2019/12/01 | 32553 | support/texlab/crates/bibutils_sys/src/modsin.c 2019/12/01 | 3236 | support/texlab/src/syntax/latex/env.rs @@ -890,7 +978,6 @@ 2019/12/01 | 1174 | support/texlab/src/folding/mod.rs 2019/12/01 | 1165613 | macros/generic/tracklang.zip 2019/12/01 | 115 | support/texlab/crates/bibutils_sys/src/iso639_1.h -2019/12/01 | 115296 | systems/texlive/tlnet/archive/oberdiek.r52987.tar.xz 2019/12/01 | 1145 | support/texlab/tests/test_completion_latex_label.rs 2019/12/01 | 11404 | support/texlab/src/syntax/latex/mod.rs 2019/12/01 | 113 | support/texlab/tests/scenarios/definition/latex/label/theorem.tex @@ -905,7 +992,6 @@ 2019/12/01 | 108116 | support/texlab/crates/bibutils_sys/src/ristypes.c 2019/12/01 | 10719 | graphics/pgf/contrib/circuitikz/tex/circuitikz.sty 2019/12/01 | 10687 | support/texlab/crates/bibutils_sys/src/isiout.c -2019/12/01 | 10519844 | systems/texlive/tlnet/archive/oberdiek.doc.r52987.tar.xz 2019/12/01 | 1041 | macros/generic/tracklang/samples/sample-tracklang6.tex 2019/12/01 | 103 | macros/latex/contrib/hvqrurl/Changes 2019/12/01 | 102 | support/texlab/tests/scenarios/completion/latex/component/foo.tex @@ -957,7 +1043,6 @@ 2019/11/30 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose-ibid.bbx 2019/11/30 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-verb.bbx 2019/11/30 | 637 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric-comp.bbx -2019/11/30 | 63227688 | systems/win32/w32tex/biblatex-biber.tar.xz 2019/11/30 | 628 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-alphabetic.bbx 2019/11/30 | 622 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-verbose.bbx 2019/11/30 | 619 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-numeric.bbx @@ -967,7 +1052,6 @@ 2019/11/30 | 6067 | macros/latex/contrib/biblatex-contrib/biblatex-ext/README.md 2019/11/30 | 59892 | systems/texlive/tlnet/archive/ulthese.r52972.tar.xz 2019/11/30 | 588 | macros/latex/contrib/epstopdf-pkg/README.md -2019/11/30 | 5838 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2019/11/30 | 5833 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authortitle-comp.cbx 2019/11/30 | 5773 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ticomp.cbx 2019/11/30 | 5587 | macros/latex/contrib/biblatex-contrib/biblatex-ext/ext-authoryear-ibid.cbx @@ -1038,7 +1122,6 @@ 2019/11/29 | 97925 | macros/latex/contrib/oberdiek/atenddvi.pdf 2019/11/29 | 9776 | macros/latex/contrib/biblatex-contrib/biblatex-apa/russian-apa.lbx 2019/11/29 | 9768 | macros/latex/contrib/biblatex-contrib/biblatex-apa/slovene-apa.lbx -2019/11/29 | 94821 | macros/latex/contrib/oberdiek/bookmark.dtx 2019/11/29 | 9459 | macros/latex/contrib/biblatex-contrib/biblatex-apa/danish-apa.lbx 2019/11/29 | 94401 | macros/latex/contrib/oberdiek/chemarr.pdf 2019/11/29 | 941845 | install/macros/latex/contrib/inputenx.tds.zip @@ -1083,7 +1166,6 @@ 2019/11/29 | 6368459 | macros/latex/contrib/tuda-ci.zip 2019/11/29 | 622092 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaBeamer.pdf 2019/11/29 | 62065 | macros/latex/contrib/oberdiek/hycolor.dtx -2019/11/29 | 61839 | macros/latex/contrib/oberdiek/embedfile.dtx 2019/11/29 | 590864 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaLetter.pdf 2019/11/29 | 590728 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaSciPoster.pdf 2019/11/29 | 58 | systems/mac/mactex/MacTeXtras-20191129.zip.md5 @@ -1176,7 +1258,6 @@ 2019/11/29 | 294529 | macros/latex/contrib/oberdiek/ltxcmds.pdf 2019/11/29 | 2932 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaAnnouncement.tex 2019/11/29 | 29259 | macros/latex/contrib/oberdiek/eolgrab.dtx -2019/11/29 | 290659 | macros/latex/contrib/oberdiek/bookmark.pdf 2019/11/29 | 29028 | macros/latex/contrib/oberdiek/pdflscape.dtx 2019/11/29 | 28849 | macros/latex/contrib/oberdiek/pdfcrypt.dtx 2019/11/29 | 28802 | macros/latex/contrib/oberdiek/selinput.dtx @@ -1215,7 +1296,6 @@ 2019/11/29 | 219165 | macros/latex/contrib/oberdiek/kvsetkeys.pdf 2019/11/29 | 2177 | macros/latex/contrib/tuda-ci/tex/beamerfontthemeTUDa.sty 2019/11/29 | 21736 | macros/latex/contrib/oberdiek/picture.dtx -2019/11/29 | 215002 | macros/latex/contrib/oberdiek/embedfile.pdf 2019/11/29 | 21225 | macros/latex/contrib/oberdiek/pdfcolfoot.dtx 2019/11/29 | 21047 | macros/latex/contrib/oberdiek/settobox.dtx 2019/11/29 | 2098 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaReport.tex @@ -1355,7 +1435,6 @@ 2019/11/28 | 8464 | systems/texlive/tlnet/archive/xpdfopen.i386-solaris.r52917.tar.xz 2019/11/28 | 832 | systems/texlive/tlnet/archive/tetex.win32.r46853.tar.xz 2019/11/28 | 8228 | systems/texlive/tlnet/archive/xpdfopen.amd64-netbsd.r52917.tar.xz -2019/11/28 | 81377476 | systems/win32/w32tex/pgfcontrib.tar.xz 2019/11/28 | 812 | macros/latex/contrib/reledmac/examples/makefile 2019/11/28 | 8116 | systems/texlive/tlnet/archive/xpdfopen.amd64-freebsd.r52917.tar.xz 2019/11/28 | 8072 | systems/texlive/tlnet/archive/xpdfopen.x86_64-linux.r52917.tar.xz @@ -1385,12 +1464,10 @@ 2019/11/28 | 7340 | systems/texlive/tlnet/archive/xpdfopen.aarch64-linux.r52917.tar.xz 2019/11/28 | 72940 | systems/texlive/tlnet/archive/tetex.r52939.tar.xz 2019/11/28 | 720392 | systems/texlive/tlnet/archive/l3build.doc.r52948.tar.xz -2019/11/28 | 72012 | systems/win32/miktex/tm/packages/pinoutikz.tar.lzma 2019/11/28 | 7164 | systems/texlive/tlnet/archive/xpdfopen.x86_64-darwinlegacy.r52917.tar.xz 2019/11/28 | 7139 | macros/generic/unicode-data/load-unicode-xetex-classes.tex 2019/11/28 | 7080 | systems/texlive/tlnet/archive/xpdfopen.i386-freebsd.r52917.tar.xz 2019/11/28 | 7056 | macros/generic/unicode-data/load-unicode-data.tex -2019/11/28 | 69308 | systems/texlive/tlnet/archive/pinoutikz.doc.r52946.tar.xz 2019/11/28 | 684780 | systems/win32/w32tex/extractpdfmark-w32.tar.xz 2019/11/28 | 6793 | macros/latex/contrib/reledmac/examples/2-footnote_spacing.tex 2019/11/28 | 6784 | systems/texlive/tlnet/archive/xpdfopen.x86_64-darwin.r52917.tar.xz @@ -1452,7 +1529,6 @@ 2019/11/28 | 249260 | fonts/fourier-GUT/doc/fourier-doc-en.pdf 2019/11/28 | 2468868 | systems/win32/w32tex/tex4htk-w32.tar.xz 2019/11/28 | 243 | macros/latex/contrib/reledmac/doc-more/makefile -2019/11/28 | 2436 | systems/texlive/tlnet/archive/pinoutikz.r52946.tar.xz 2019/11/28 | 24332 | systems/texlive/tlnet/archive/animate.r52944.tar.xz 2019/11/28 | 24281 | macros/latex/contrib/reledmac/examples/3-reledpar_columns_different_languages.pdf 2019/11/28 | 24222 | macros/latex/contrib/reledmac/doc-include/migrate-mac.dtx @@ -1544,210 +1620,47 @@ 2019/11/28 | 10008 | macros/latex/contrib/reledmac/examples/4-reledpar_one_series_per_pstart.tex 2019/11/28 | 10000 | systems/texlive/tlnet/archive/dviasm.r52941.tar.xz 2019/11/27 | 8915 | macros/latex/contrib/l3build/l3build-install.lua -2019/11/27 | 78592 | systems/texlive/tlnet/archive/bxjscls.source.r52927.tar.xz 2019/11/27 | 785828 | install/macros/latex/contrib/l3build.tds.zip 2019/11/27 | 781880 | macros/latex/contrib/l3build.zip 2019/11/27 | 767421 | systems/win32/miktex/tm/packages/l3backend.tar.lzma 2019/11/27 | 765270 | graphics/pgf/contrib/dynkin-diagrams.zip 2019/11/27 | 7438 | macros/latex/contrib/l3build/l3build-arguments.lua 2019/11/27 | 735799 | graphics/pgf/contrib/dynkin-diagrams/dynkin-diagrams.pdf -2019/11/27 | 727776 | systems/texlive/tlnet/archive/l3backend.doc.r52928.tar.xz 2019/11/27 | 7205 | macros/latex/contrib/l3build/l3build-manifest.lua 2019/11/27 | 704370 | macros/latex/contrib/l3build/l3build.pdf 2019/11/27 | 6790 | macros/latex/contrib/l3build/l3build-variables.lua 2019/11/27 | 6789 | macros/latex/contrib/l3build/l3build-typesetting.lua 2019/11/27 | 633 | graphics/pgf/contrib/dynkin-diagrams/README 2019/11/27 | 594 | graphics/pgf/contrib/dynkin-diagrams/d44.tex -2019/11/27 | 59008 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm 2019/11/27 | 55827 | graphics/pgf/contrib/dynkin-diagrams/dynkin-diagrams.tex 2019/11/27 | 543 | graphics/pgf/contrib/dynkin-diagrams/borovoi.tex 2019/11/27 | 5392 | macros/latex/contrib/l3build/l3build.lua 2019/11/27 | 467227 | systems/win32/miktex/tm/packages/attachfile2.tar.lzma 2019/11/27 | 4472 | macros/latex/contrib/l3build/l3build-ctan.lua -2019/11/27 | 447156 | systems/texlive/tlnet/archive/attachfile2.doc.r52929.tar.xz 2019/11/27 | 43962412 | systems/win32/w32tex/web2c-w32.tar.xz 2019/11/27 | 4303 | macros/latex/contrib/l3build/l3build-stdmain.lua -2019/11/27 | 3925895 | macros/latex/contrib/animate/animate.pdf 2019/11/27 | 346455 | macros/latex/contrib/bxcalc.zip 2019/11/27 | 33539 | macros/latex/contrib/l3build/l3build-check.lua 2019/11/27 | 3239 | macros/latex/contrib/l3build/l3build-aux.lua -2019/11/27 | 3237886 | install/macros/latex/contrib/animate.tds.zip -2019/11/27 | 3235602 | macros/latex/contrib/animate.zip -2019/11/27 | 31260 | systems/texlive/tlnet/archive/bxjscls.r52927.tar.xz 2019/11/27 | 3106 | macros/latex/contrib/l3build/l3build-unpack.lua 2019/11/27 | 26317 | macros/generic/unicode-data/BidiMirroring.txt -2019/11/27 | 25824 | systems/texlive/tlnet/archive/l3backend.source.r52928.tar.xz 2019/11/27 | 24004 | macros/generic/unicode-data/BidiMirroring-5-1-0.txt 2019/11/27 | 2339 | macros/latex/contrib/l3build/CONTRIBUTING.md 2019/11/27 | 2305 | macros/latex/contrib/l3build/l3build-tagging.lua 2019/11/27 | 2191 | macros/latex/contrib/l3build/l3build-help.lua -2019/11/27 | 19544 | systems/texlive/tlnet/archive/attachfile2.source.r52929.tar.xz 2019/11/27 | 187846 | systems/win32/miktex/tm/packages/make4ht.tar.lzma 2019/11/27 | 1854 | graphics/pgf/contrib/dynkin-diagrams/simple-lie-algebras.tex 2019/11/27 | 1829 | graphics/pgf/contrib/dynkin-diagrams/EulerProducts.tex -2019/11/27 | 1824300 | systems/texlive/tlnet/archive/bxjscls.doc.r52927.tar.xz 2019/11/27 | 1817 | macros/latex/contrib/l3build/l3build.1 2019/11/27 | 170264 | systems/win32/miktex/tm/packages/fontools.tar.lzma 2019/11/27 | 1537 | macros/latex/contrib/l3build/l3build.ins 2019/11/27 | 1495 | macros/latex/contrib/l3build/l3build-clean.lua 2019/11/27 | 145 | graphics/pgf/contrib/dynkin-diagrams/DoneTwoElBendy.tex -2019/11/27 | 139302 | macros/latex/contrib/animate/animate.sty 2019/11/27 | 135 | graphics/pgf/contrib/dynkin-diagrams/DoneTwoElStraight.tex -2019/11/27 | 11920 | systems/texlive/tlnet/archive/l3backend.r52928.tar.xz 2019/11/27 | 11748 | macros/latex/contrib/l3build/l3build-file-functions.lua 2019/11/27 | 11575 | macros/latex/contrib/l3build/l3build-upload.lua 2019/11/27 | 11220 | macros/latex/contrib/l3build/CHANGELOG.md -2019/11/27 | 11060 | systems/texlive/tlnet/archive/attachfile2.r52929.tar.xz 2019/11/27 | 11024 | macros/latex/contrib/l3build/l3build-manifest-setup.lua -2019/11/27 | 10908 | macros/latex/contrib/animate/ChangeLog 2019/11/27 | 104561 | macros/latex/contrib/l3build/l3build.dtx 2019/11/27 | 1032 | graphics/pgf/contrib/dynkin-diagrams/hermitian-symmetric-spaces.tex 2019/11/27 | 1024 | macros/latex/contrib/l3build/README.md -2019/11/26 | 9928 | support/make4ht/mkparams.lua -2019/11/26 | 99191 | info/ptex-manual/ptex-guide-en.pdf -2019/11/26 | 986 | support/make4ht/domfilters/make4ht-t4htlinks.lua -2019/11/26 | 9796 | support/make4ht/lapp-mk4.lua -2019/11/26 | 974 | support/make4ht/extensions/make4ht-ext-latexmk_build.lua -2019/11/26 | 95260 | info/ptex-manual/eptex_resume.tex -2019/11/26 | 92590 | macros/latex/contrib/attachfile2/attachfile2.dtx -2019/11/26 | 8335 | support/make4ht/extensions/make4ht-ext-dvisvgm_hashes.lua -2019/11/26 | 82720 | macros/latex/contrib/animate/animate.tex -2019/11/26 | 827057 | systems/win32/miktex/tm/packages/fontsetup.tar.lzma -2019/11/26 | 8176 | macros/luatex/generic/barracuda/lib/lib-driver/drv-svg.lua -2019/11/26 | 8032 | fonts/utilities/fontools/share/fontools_lgr.enc -2019/11/26 | 798 | support/make4ht/make4ht-doc.tex -2019/11/26 | 798 | support/make4ht/filters/make4ht-cleanspan.lua -2019/11/26 | 7915 | support/make4ht/make4ht-aeneas-config.lua -2019/11/26 | 7628 | fonts/utilities/fontools/bin/splitttc -2019/11/26 | 761058 | macros/latex/contrib/l3backend.zip -2019/11/26 | 7599 | support/make4ht/formats/make4ht-odt.lua -2019/11/26 | 713 | support/make4ht/filters/make4ht-entities-to-unicode.lua -2019/11/26 | 71067 | info/ptex-manual/ptex-manual.tex -2019/11/26 | 69935 | fonts/utilities/fontools/doc/autoinst.pdf -2019/11/26 | 694464 | info/ptex-manual/eptex_resume.pdf -2019/11/26 | 6807 | support/make4ht/domfilters/make4ht-collapsetoc.lua -2019/11/26 | 6356 | support/make4ht/make4ht-lib.lua -2019/11/26 | 63372 | info/ptex-manual/eptexdoc.tex -2019/11/26 | 631111 | systems/win32/miktex/tm/packages/mol2chemfig.tar.lzma -2019/11/26 | 627 | support/make4ht/extensions/make4ht-ext-common_filters.lua -2019/11/26 | 627 | support/make4ht/domfilters/make4ht-odtimagesize.lua -2019/11/26 | 6005 | support/make4ht/make4ht-indexing.lua -2019/11/26 | 596 | support/make4ht/filters/make4ht-filter.lua -2019/11/26 | 595 | support/make4ht/domfilters/make4ht-idcolons.lua -2019/11/26 | 543 | macros/latex/contrib/attachfile2/README.md -2019/11/26 | 543232 | systems/win32/miktex/tm/packages/nomencl.tar.lzma -2019/11/26 | 5355 | support/make4ht/make4ht-dvireader.lua -2019/11/26 | 524 | dviware/dviasm/README -2019/11/26 | 481162 | systems/win32/miktex/tm/packages/xindex.tar.lzma -2019/11/26 | 473930 | install/macros/latex/contrib/attachfile2.tds.zip -2019/11/26 | 4641 | support/make4ht/domfilters/make4ht-aeneas.lua -2019/11/26 | 463737 | systems/win32/miktex/tm/packages/letterswitharrows.tar.lzma -2019/11/26 | 46241 | support/make4ht/readme.tex -2019/11/26 | 454280 | macros/latex/contrib/attachfile2.zip -2019/11/26 | 445753 | macros/latex/contrib/attachfile2/attachfile2.pdf -2019/11/26 | 4301 | support/make4ht/extensions/make4ht-ext-staticsite.lua -2019/11/26 | 4282 | info/ptex-manual/ptex-manual.sty -2019/11/26 | 427325 | systems/win32/miktex/tm/packages/pdftexcmds.tar.lzma -2019/11/26 | 42676 | dviware/dviasm/dviasm.py -2019/11/26 | 425 | support/make4ht/filters/make4ht-fix-links.lua -2019/11/26 | 42357 | info/ptex-manual/ptexdoc_asciimw.tex -2019/11/26 | 416498 | systems/win32/miktex/tm/packages/footnoterange.tar.lzma -2019/11/26 | 402 | support/make4ht/filters/make4ht-hruletohr.lua -2019/11/26 | 4028 | support/make4ht/make4ht -2019/11/26 | 395 | support/make4ht/formats/make4ht-html5.lua -2019/11/26 | 387216 | systems/win32/miktex/tm/packages/pxchfon.tar.lzma -2019/11/26 | 386 | support/make4ht/filters/make4ht-fixligatures.lua -2019/11/26 | 3861 | support/make4ht/extensions/make4ht-ext-preprocess_input.lua -2019/11/26 | 3835 | macros/luatex/generic/barracuda/lib/barracuda.lua -2019/11/26 | 38347 | macros/luatex/generic/barracuda/example/006-six.svg -2019/11/26 | 3824 | macros/latex/contrib/animate/README.md -2019/11/26 | 381432 | info/ptex-manual/ptex-manual.pdf -2019/11/26 | 380603 | info/ptex-manual/eptexdoc.pdf -2019/11/26 | 3729 | fonts/utilities/fontools/share/fontools_t2b.enc -2019/11/26 | 37155 | info/ptex-manual/ptex-guide-en.tex -2019/11/26 | 37005 | support/make4ht/README -2019/11/26 | 3651 | fonts/utilities/fontools/share/fontools_t2c.enc -2019/11/26 | 363599 | systems/win32/miktex/tm/packages/pdfpages.tar.lzma -2019/11/26 | 3534 | macros/latex/contrib/animate/files/scarab.mp -2019/11/26 | 35293 | info/ptex-manual/jtex_asciimw.tex -2019/11/26 | 344 | support/make4ht/formats/make4ht-tei.lua -2019/11/26 | 3412 | support/make4ht/filters/make4ht-staticsite.lua -2019/11/26 | 3372 | info/ptex-manual/fam256p.tex -2019/11/26 | 3277 | support/make4ht/make4ht-htlatex.lua -2019/11/26 | 3273 | support/make4ht/domfilters/make4ht-joincharacters.lua -2019/11/26 | 326 | support/make4ht/formats/make4ht-xhtml.lua -2019/11/26 | 3247 | support/make4ht/make4ht-xtpipes.lua -2019/11/26 | 321 | support/make4ht/domfilters/make4ht-odtpartable.lua -2019/11/26 | 3191 | support/make4ht/filters/make4ht-mathjaxnode.lua -2019/11/26 | 3173 | info/ptex-manual/fam256d.tex -2019/11/26 | 309 | support/make4ht/extensions/make4ht-ext-join_colors.lua -2019/11/26 | 3080 | fonts/utilities/fontools/share/fontools_ts1.enc -2019/11/26 | 299671 | systems/win32/miktex/tm/packages/datetime2-serbian.tar.lzma -2019/11/26 | 291 | support/make4ht/filters/make4ht-entities.lua -2019/11/26 | 2907 | fonts/utilities/fontools/share/fontools_t2a.enc -2019/11/26 | 2906 | fonts/utilities/fontools/README -2019/11/26 | 2905 | support/make4ht/make4ht-logging.lua -2019/11/26 | 288 | support/make4ht/extensions/make4ht-ext-odttemplate.lua -2019/11/26 | 2855 | fonts/utilities/fontools/share/fontools_ly1.enc -2019/11/26 | 283083 | systems/win32/miktex/tm/packages/powerdot-fuberlin.tar.lzma -2019/11/26 | 2815 | fonts/utilities/fontools/share/fontools_t1.enc -2019/11/26 | 280080 | systems/texlive/tlnet/archive/powerdot-fuberlin.doc.tar.xz -2019/11/26 | 27582 | fonts/utilities/fontools/bin/ot2kpx -2019/11/26 | 2751 | fonts/utilities/fontools/share/fontools_ts3.enc -2019/11/26 | 27439 | fonts/utilities/fontools/doc/ot2kpx.pdf -2019/11/26 | 271 | support/make4ht/extensions/make4ht-ext-mathjaxnode.lua -2019/11/26 | 27061 | fonts/utilities/fontools/doc/afm2afm.pdf -2019/11/26 | 2704 | systems/texlive/tlnet/archive/powerdot-fuberlin.tar.xz -2019/11/26 | 2679 | support/make4ht/make4ht-errorlogparser.lua -2019/11/26 | 2656 | fonts/utilities/fontools/share/fontools_t3.enc -2019/11/26 | 264 | support/make4ht/filters/make4ht-cleanspan-nat.lua -2019/11/26 | 264764 | info/ptex-manual/ptexdoc_asciimw.pdf -2019/11/26 | 2587 | fonts/utilities/fontools/share/fontools_ot1.enc -2019/11/26 | 2577716 | info/ptex-manual.zip -2019/11/26 | 251872 | info/ptex-manual/jtex_asciimw.pdf -2019/11/26 | 2465 | support/make4ht/make4ht-config.lua -2019/11/26 | 2409 | macros/latex/contrib/animate/files/exp.mp -2019/11/26 | 2362595 | systems/win32/miktex/tm/packages/xcharter.tar.lzma -2019/11/26 | 2324 | support/make4ht/filters/make4ht-odttemplate.lua -2019/11/26 | 2270 | support/make4ht/filters/make4ht-domfilter.lua -2019/11/26 | 226132744 | systems/win32/miktex/setup/windows-x64/basic-miktex-2.9.7269-x64.exe -2019/11/26 | 22455 | support/make4ht/changelog.tex -2019/11/26 | 2216 | support/make4ht/domfilters/make4ht-joincolors.lua -2019/11/26 | 219731 | support/make4ht.zip -2019/11/26 | 217572616 | systems/win32/miktex/setup/windows-x86/basic-miktex-2.9.7269.exe -2019/11/26 | 2169 | support/make4ht/domfilters/make4ht-tablerows.lua -2019/11/26 | 20550 | fonts/utilities/fontools/doc/splitttc.pdf -2019/11/26 | 20341 | info/ptex-manual/jtexdoc_asciimw.tex -2019/11/26 | 19615 | info/ptex-manual/ptexskip_asciimw.tex -2019/11/26 | 195399 | fonts/utilities/fontools.zip -2019/11/26 | 1935899 | systems/win32/miktex/tm/packages/bxjscls.tar.lzma -2019/11/26 | 1820 | fonts/fourier-GUT/map/fourier.map -2019/11/26 | 1808735 | systems/win32/miktex/tm/packages/caption.tar.lzma -2019/11/26 | 17997 | fonts/utilities/fontools/GPLv2.txt -2019/11/26 | 164929 | info/ptex-manual/ptexskip_asciimw.pdf -2019/11/26 | 16427 | info/ptex-manual/jfm.tex -2019/11/26 | 16404 | support/make4ht/mkutils.lua -2019/11/26 | 157050 | info/ptex-manual/jfm.pdf -2019/11/26 | 1534 | systems/win32/miktex/tm/packages/pdfcolmk.tar.lzma -2019/11/26 | 1516 | info/ptex-manual/LICENSE -2019/11/26 | 1464 | systems/texlive/tlnet/archive/collection-publishers.tar.xz -2019/11/26 | 145704 | info/ptex-manual/jtexdoc_asciimw.pdf -2019/11/26 | 1406 | support/make4ht/domfilters/make4ht-mathmlfixes.lua -2019/11/26 | 13334 | fonts/utilities/fontools/bin/afm2afm -2019/11/26 | 1329 | support/make4ht/extensions/make4ht-ext-tidy.lua -2019/11/26 | 128196 | support/make4ht/make4ht-doc.pdf -2019/11/26 | 123182 | systems/win32/miktex/tm/packages/tikz-kalender.tar.lzma -2019/11/26 | 121870 | graphics/pgf/contrib/dynkin-diagrams/dynkin-diagrams.sty -2019/11/26 | 1215 | support/make4ht/filters/make4ht-svg-height.lua -2019/11/26 | 1206 | info/ptex-manual/README.md -2019/11/26 | 120397 | systems/win32/miktex/tm/packages/newfloat.tar.lzma -2019/11/26 | 118928 | systems/win32/miktex/tm/packages/pxjahyper.tar.lzma -2019/11/26 | 114778 | fonts/utilities/fontools/bin/autoinst -2019/11/26 | 1143 | support/make4ht/formats/make4ht-docbook.lua -2019/11/26 | 11342 | dviware/dviasm.zip -2019/11/26 | 1093 | support/make4ht/make4ht-odtfilter.lua -2019/11/26 | 1088 | macros/luatex/generic/barracuda/example/006-code39-test.lua -2019/11/26 | 104 | macros/luatex/generic/barracuda/example/004-ean-test.lua -2019/11/26 | 1047 | support/make4ht/domfilters/make4ht-fixinlines.lua -2019/11/26 | 1039 | support/make4ht/make4ht-filterlib.lua -2019/11/26 | 1034 | support/make4ht/extensions/make4ht-ext-common_domfilters.lua diff --git a/macros/latex/contrib/animate/ChangeLog b/macros/latex/contrib/animate/ChangeLog index 11d3c6b893..c2965e0508 100644 --- a/macros/latex/contrib/animate/ChangeLog +++ b/macros/latex/contrib/animate/ChangeLog @@ -1,3 +1,6 @@ +2019-12-03 + * fix: another occurrence of quotes issue, now fixed at a central place + 2019-11-27 * fix: quotes around \@filef@und added by \IfFileExists removed for luatex compatibility (fix provided by U Fischer); using JS API dirtifies PDF diff --git a/macros/latex/contrib/animate/animate.pdf b/macros/latex/contrib/animate/animate.pdf index f4861129f6..0ed8c00b69 100644 --- a/macros/latex/contrib/animate/animate.pdf +++ b/macros/latex/contrib/animate/animate.pdf @@ -1,7 +1,7 @@ %PDF-1.4 %¿÷¢þ 720 0 obj -<< /Linearized 1 /L 3925895 /H [ 3293260 576 ] /O 2404 /E 3328494 /N 30 /T 3911375 >> +<< /Linearized 1 /L 3925892 /H [ 3293260 576 ] /O 2404 /E 3328490 /N 30 /T 3911372 >> endobj xref @@ -1693,75 +1693,75 @@ xref 0003293836 00000 n 0003294424 00000 n 0003294555 00000 n -0003298458 00000 n -0003298713 00000 n -0003298902 00000 n -0003299091 00000 n -0003299238 00000 n -0003299385 00000 n -0003299532 00000 n -0003299679 00000 n -0003299826 00000 n -0003299973 00000 n -0003300120 00000 n -0003300267 00000 n -0003300414 00000 n -0003300561 00000 n -0003300708 00000 n -0003300855 00000 n -0003301007 00000 n -0003301159 00000 n -0003301311 00000 n -0003301463 00000 n -0003301610 00000 n -0003301757 00000 n -0003301904 00000 n -0003302051 00000 n -0003302203 00000 n -0003302355 00000 n -0003302507 00000 n -0003302659 00000 n -0003302806 00000 n -0003302953 00000 n -0003303129 00000 n -0003303305 00000 n -0003303487 00000 n -0003303669 00000 n -0003303707 00000 n -0003303848 00000 n -0003303899 00000 n -0003304004 00000 n -0003304128 00000 n -0003304253 00000 n -0003304301 00000 n -0003304652 00000 n -0003304953 00000 n -0003305432 00000 n -0003305831 00000 n -0003306356 00000 n -0003307000 00000 n -0003313245 00000 n -0003315506 00000 n -0003325784 00000 n -0003326341 00000 n -0003326466 00000 n -0003326583 00000 n -0003326648 00000 n -0003326746 00000 n -0003326859 00000 n -0003326972 00000 n -0003327090 00000 n -0003327209 00000 n -0003327366 00000 n -0003327472 00000 n -0003327586 00000 n -0003327708 00000 n -0003327858 00000 n -0003328005 00000 n -0003328160 00000 n -0003328283 00000 n -0003328390 00000 n -trailer << /Info 323 0 R /Root 721 0 R /Size 2475 /Prev 3911365 /ID [<120cb9f2c4ad1913b9a491fe1f3825da>] >> +0003298454 00000 n +0003298709 00000 n +0003298898 00000 n +0003299087 00000 n +0003299234 00000 n +0003299381 00000 n +0003299528 00000 n +0003299675 00000 n +0003299822 00000 n +0003299969 00000 n +0003300116 00000 n +0003300263 00000 n +0003300410 00000 n +0003300557 00000 n +0003300704 00000 n +0003300851 00000 n +0003301003 00000 n +0003301155 00000 n +0003301307 00000 n +0003301459 00000 n +0003301606 00000 n +0003301753 00000 n +0003301900 00000 n +0003302047 00000 n +0003302199 00000 n +0003302351 00000 n +0003302503 00000 n +0003302655 00000 n +0003302802 00000 n +0003302949 00000 n +0003303125 00000 n +0003303301 00000 n +0003303483 00000 n +0003303665 00000 n +0003303703 00000 n +0003303844 00000 n +0003303895 00000 n +0003304000 00000 n +0003304124 00000 n +0003304249 00000 n +0003304297 00000 n +0003304648 00000 n +0003304949 00000 n +0003305428 00000 n +0003305827 00000 n +0003306352 00000 n +0003306996 00000 n +0003313241 00000 n +0003315502 00000 n +0003325780 00000 n +0003326337 00000 n +0003326462 00000 n +0003326579 00000 n +0003326644 00000 n +0003326742 00000 n +0003326855 00000 n +0003326968 00000 n +0003327086 00000 n +0003327205 00000 n +0003327362 00000 n +0003327468 00000 n +0003327582 00000 n +0003327704 00000 n +0003327854 00000 n +0003328001 00000 n +0003328156 00000 n +0003328279 00000 n +0003328386 00000 n +trailer << /Info 323 0 R /Root 721 0 R /Size 2475 /Prev 3911362 /ID [<8f5d7594143fc0f39e284d12721c4b7d><41de6486a628b25d0e1363fe74092ccc>] >> startxref 0 %%EOF @@ -1906,7 +1906,7 @@ stream xœËLÓH4ˆ/ÈI¬ÌÌK׬±K‹S5JŠJS5­k3Ó4b™Å ÑM¨Úâ ÌôŒ["k4%jj NJ…¢­Huqjj¶[Qbnª†¦5]%Òendstream endobj 741 0 obj -<< /AA << /PC << /JS 740 0 R /S /JavaScript >> /PI << /JS 740 0 R /S /JavaScript >> /PO << /JS 739 0 R /S /JavaScript >> /PV << /JS 739 0 R /S /JavaScript >> >> /AP << /N 728 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/11/27]) /F 4 /FT /Btn /Ff 65537 /H /N /MK << /I 728 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 333.72 629.38 347.04 638.62 ] /Subtype /Widget /T (anm0) /Type /Annot >> +<< /AA << /PC << /JS 740 0 R /S /JavaScript >> /PI << /JS 740 0 R /S /JavaScript >> /PO << /JS 739 0 R /S /JavaScript >> /PV << /JS 739 0 R /S /JavaScript >> >> /AP << /N 728 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/12/03]) /F 4 /FT /Btn /Ff 65537 /H /N /MK << /I 728 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 333.72 629.38 347.04 638.62 ] /Subtype /Widget /T (anm0) /Type /Annot >> endobj 742 0 obj << /BaseFont /GULBTF+LinLibertineTI /Encoding 2396 0 R /FirstChar 27 /FontDescriptor 743 0 R /LastChar 246 /Subtype /Type1 /ToUnicode 2395 0 R /Type /Font /Widths [ 564 0 0 0 0 0 0 0 0 0 0 0 268 306 313 0 0 219 333 219 291 0 0 0 0 0 0 0 0 0 444 219 0 0 527 0 0 0 667 557 0 667 526 457 664 0 280 414 637 519 804 0 668 499 0 0 454 544 0 597 0 628 0 0 0 0 0 0 0 268 486 478 389 489 401 314 477 519 276 259 486 266 783 518 447 489 0 357 353 307 521 472 688 475 503 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 447 ] >> @@ -1953,7 +1953,7 @@ stream xœËLÓH4Œ/ÈI¬ÌÌK׬±K‹S5JŠJS5­k3Ó4b™Å ÑM¨Úâ ÌôŒ["k4%jj NJ…¢­Huqjj¶[Qbnª†¦5_)%Ùendstream endobj 752 0 obj -<< /AA << /PC << /JS 751 0 R /S /JavaScript >> /PI << /JS 751 0 R /S /JavaScript >> /PO << /JS 750 0 R /S /JavaScript >> /PV << /JS 750 0 R /S /JavaScript >> >> /AP << /N 745 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/11/27]) /F 4 /FT /Btn /Ff 65537 /H /N /MK << /I 745 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 124.8 594.94 166.8 606.94 ] /Subtype /Widget /T (anm1) /Type /Annot >> +<< /AA << /PC << /JS 751 0 R /S /JavaScript >> /PI << /JS 751 0 R /S /JavaScript >> /PO << /JS 750 0 R /S /JavaScript >> /PV << /JS 750 0 R /S /JavaScript >> >> /AP << /N 745 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/12/03]) /F 4 /FT /Btn /Ff 65537 /H /N /MK << /I 745 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 124.8 594.94 166.8 606.94 ] /Subtype /Widget /T (anm1) /Type /Annot >> endobj 753 0 obj << /BaseFont /DQEGUT+LibertinusT1Math /Encoding 2393 0 R /FirstChar 11 /FontDescriptor 754 0 R /LastChar 122 /Subtype /Type1 /ToUnicode 2392 0 R /Type /Font /Widths [ 522 472 458 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 465 0 0 0 0 0 0 0 0 0 0 220 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 299 0 0 0 475 503 436 ] >> @@ -2221,7 +2221,7 @@ stream xœËLÓH4Š/ÈI¬ÌÌK׬±K‹S5JŠJS5­k3Ó4b™Å ÑM¨Úâ ÌôŒ["k4%jj NJ…¢­Huqjj¶[Qbnª†¦5`Ã%àendstream endobj 810 0 obj -<< /AA << /D << /JS (try{if\(a2_playing\){a2_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 809 0 R /S /JavaScript >> /PI << /JS 809 0 R /S /JavaScript >> /PO << /JS 808 0 R /S /JavaScript >> /PV << /JS 808 0 R /S /JavaScript >> /U << /JS (try{if\(!a2_isPaused\)a2_stopFirst\(\);if\(event.shift\)a2_playsRight=!a2_playsRight;if\(a2_idx==8&&a2_playsRight\)a2_stopFirst\(\);if\(a2_idx==0&&!a2_playsRight\)a2_stopLast\(\);if\(a2_playsRight\){a2_playRight\(\);}else{a2_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 790 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/11/27]) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 790 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 217.2 541.18 376.2 703.18 ] /Subtype /Widget /T (anm2) /Type /Annot >> +<< /AA << /D << /JS (try{if\(a2_playing\){a2_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 809 0 R /S /JavaScript >> /PI << /JS 809 0 R /S /JavaScript >> /PO << /JS 808 0 R /S /JavaScript >> /PV << /JS 808 0 R /S /JavaScript >> /U << /JS (try{if\(!a2_isPaused\)a2_stopFirst\(\);if\(event.shift\)a2_playsRight=!a2_playsRight;if\(a2_idx==8&&a2_playsRight\)a2_stopFirst\(\);if\(a2_idx==0&&!a2_playsRight\)a2_stopLast\(\);if\(a2_playsRight\){a2_playRight\(\);}else{a2_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 790 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/12/03]) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 790 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 217.2 541.18 376.2 703.18 ] /Subtype /Widget /T (anm2) /Type /Annot >> endobj 811 0 obj << /BBox [ 0 8269 150 8419 ] /Filter /FlateDecode /FormType 1 /Matrix [ 0.833333 0 0 -0.833333 0 6890.83 ] /Resources << /ProcSet [ /PDF ] >> /Subtype /Form /Type /XObject /Length 167 >> @@ -6276,7 +6276,7 @@ stream xœËLÓH4Ž/ÈI¬ÌÌK׬±K‹S5JŠJS5­k3Ó4b™Å ÑM¨Úâ ÌôŒ["k4%jj NJ…¢­Huqjj¶[Qbnª†¦5b]%çendstream endobj 1561 0 obj -<< /AA << /D << /JS (try{if\(a3_playing\){a3_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1560 0 R /S /JavaScript >> /PI << /JS 1560 0 R /S /JavaScript >> /PO << /JS 1559 0 R /S /JavaScript >> /PV << /JS 1559 0 R /S /JavaScript >> /U << /JS (try{if\(!a3_isPaused\)a3_stopFirst\(\);if\(event.shift\)a3_playsRight=!a3_playsRight;if\(a3_idx==100&&a3_playsRight\)a3_stopFirst\(\);if\(a3_idx==0&&!a3_playsRight\)a3_stopLast\(\);if\(a3_playsRight\){a3_playRight\(\);}else{a3_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 1357 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/11/27]) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 1357 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 159.12 450.7 434.16 715.06 ] /Subtype /Widget /T (anm3) /Type /Annot >> +<< /AA << /D << /JS (try{if\(a3_playing\){a3_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1560 0 R /S /JavaScript >> /PI << /JS 1560 0 R /S /JavaScript >> /PO << /JS 1559 0 R /S /JavaScript >> /PV << /JS 1559 0 R /S /JavaScript >> /U << /JS (try{if\(!a3_isPaused\)a3_stopFirst\(\);if\(event.shift\)a3_playsRight=!a3_playsRight;if\(a3_idx==100&&a3_playsRight\)a3_stopFirst\(\);if\(a3_idx==0&&!a3_playsRight\)a3_stopLast\(\);if\(a3_playsRight\){a3_playRight\(\);}else{a3_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 1357 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/12/03]) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 1357 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 159.12 450.7 434.16 715.06 ] /Subtype /Widget /T (anm3) /Type /Annot >> endobj 1562 0 obj << /AA << /D << /JS (a3_stopFirst\(\);) /S /JavaScript >> >> /AP << /N 811 0 R >> /BS << /W 0 >> /F 0 /FT /Btn /Ff 65536 /H /I /MK << /I 811 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 229.92 434.98 244.32 449.26 ] /Subtype /Widget /T (3.EndLeft) /Type /Annot >> @@ -9987,7 +9987,7 @@ stream xœËLÓH4‰/ÈI¬ÌÌK׬±K‹S5JŠJS5­k3Ó4b™Å ÑM¨Úâ ÌôŒ["k4%jj NJ…¢­‘Hyqjj¶[Qbnªo ¯&bendstream endobj 1664 0 obj -<< /AA << /D << /JS (try{if\(a4_playing\){a4_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1663 0 R /S /JavaScript >> /PI << /JS 1663 0 R /S /JavaScript >> /PO << /JS 1662 0 R /S /JavaScript >> /PV << /JS 1662 0 R /S /JavaScript >> /U << /JS (try{if\(!a4_isPaused\)a4_stopFirst\(\);if\(event.shift\)a4_playsRight=!a4_playsRight;if\(a4_idx==0\)a4_playsRight=true;if\(a4_idx==28\)a4_playsRight=false;if\(a4_playsRight\){a4_playRight\(\);}else{a4_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 1660 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/11/27]) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 1660 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 174.6 583.18 418.68 715.06 ] /Subtype /Widget /T (anm4) /Type /Annot >> +<< /AA << /D << /JS (try{if\(a4_playing\){a4_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 1663 0 R /S /JavaScript >> /PI << /JS 1663 0 R /S /JavaScript >> /PO << /JS 1662 0 R /S /JavaScript >> /PV << /JS 1662 0 R /S /JavaScript >> /U << /JS (try{if\(!a4_isPaused\)a4_stopFirst\(\);if\(event.shift\)a4_playsRight=!a4_playsRight;if\(a4_idx==0\)a4_playsRight=true;if\(a4_idx==28\)a4_playsRight=false;if\(a4_playsRight\){a4_playRight\(\);}else{a4_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 1660 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/12/03]) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 1660 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 174.6 583.18 418.68 715.06 ] /Subtype /Widget /T (anm4) /Type /Annot >> endobj 1665 0 obj << /AA << /D << /JS (a4_stopFirst\(\);) /S /JavaScript >> >> /AP << /N 811 0 R >> /BS << /W 0 >> /F 0 /FT /Btn /Ff 65536 /H /I /MK << /I 811 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 229.92 567.34 244.32 581.74 ] /Subtype /Widget /T (4.EndLeft) /Type /Annot >> @@ -18825,7 +18825,7 @@ stream xœËLÓH4/ÈI¬ÌÌK׬±K‹S5JŠJS5­k3Ó4b™Å ÑM¨Úâ ÌôŒ["k4%jj NJ…¢­¡¥H}qjj¶[QbnªHÀû¿&Éendstream endobj 2253 0 obj -<< /AA << /D << /JS (try{if\(a5_playing\){a5_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 2252 0 R /S /JavaScript >> /PI << /JS 2252 0 R /S /JavaScript >> /PO << /JS 2251 0 R /S /JavaScript >> /PV << /JS 2251 0 R /S /JavaScript >> /U << /JS (try{if\(!a5_isPaused\)a5_stopFirst\(\);if\(event.shift\)a5_playsRight=!a5_playsRight;if\(a5_idx==190&&a5_playsRight\)a5_stopFirst\(\);if\(a5_idx==0&&!a5_playsRight\)a5_stopLast\(\);if\(a5_playsRight\){a5_playRight\(\);}else{a5_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 2249 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/11/27]) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 2249 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 125.28 394.42 468 715.06 ] /Subtype /Widget /T (anm5) /Type /Annot >> +<< /AA << /D << /JS (try{if\(a5_playing\){a5_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 2252 0 R /S /JavaScript >> /PI << /JS 2252 0 R /S /JavaScript >> /PO << /JS 2251 0 R /S /JavaScript >> /PV << /JS 2251 0 R /S /JavaScript >> /U << /JS (try{if\(!a5_isPaused\)a5_stopFirst\(\);if\(event.shift\)a5_playsRight=!a5_playsRight;if\(a5_idx==190&&a5_playsRight\)a5_stopFirst\(\);if\(a5_idx==0&&!a5_playsRight\)a5_stopLast\(\);if\(a5_playsRight\){a5_playRight\(\);}else{a5_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 2249 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/12/03]) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 2249 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 125.28 394.42 468 715.06 ] /Subtype /Widget /T (anm5) /Type /Annot >> endobj 2254 0 obj << /AA << /D << /JS (a5_stopFirst\(\);) /S /JavaScript >> >> /AP << /N 811 0 R >> /BS << /W 0 >> /F 0 /FT /Btn /Ff 65536 /H /I /MK << /I 811 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 229.92 378.58 244.32 392.98 ] /Subtype /Widget /T (5.EndLeft) /Type /Annot >> @@ -19318,7 +19318,7 @@ stream xœËLÓH4‹/ÈI¬ÌÌK׬±K‹S5JŠJS5­k3Ó4b™Å ÑM¨Úâ ÌôŒ["k4%jj NJ…¢­Huqjj¶[Qbnª†¦5g+%üendstream endobj 2351 0 obj -<< /AA << /D << /JS (try{if\(a6_playing\){a6_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 2350 0 R /S /JavaScript >> /PI << /JS 2350 0 R /S /JavaScript >> /PO << /JS 2349 0 R /S /JavaScript >> /PV << /JS 2349 0 R /S /JavaScript >> /U << /JS (try{if\(!a6_isPaused\)a6_stopFirst\(\);if\(event.shift\)a6_playsRight=!a6_playsRight;if\(a6_idx==0\)a6_playsRight=true;if\(a6_idx==25\)a6_playsRight=false;if\(a6_playsRight\){a6_playRight\(\);}else{a6_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 2297 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/11/27]) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 2297 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 176.4 165.34 417 418.66 ] /Subtype /Widget /T (anm6) /Type /Annot >> +<< /AA << /D << /JS (try{if\(a6_playing\){a6_pause\(\);}}catch\(e\){}) /S /JavaScript >> /PC << /JS 2350 0 R /S /JavaScript >> /PI << /JS 2350 0 R /S /JavaScript >> /PO << /JS 2349 0 R /S /JavaScript >> /PV << /JS 2349 0 R /S /JavaScript >> /U << /JS (try{if\(!a6_isPaused\)a6_stopFirst\(\);if\(event.shift\)a6_playsRight=!a6_playsRight;if\(a6_idx==0\)a6_playsRight=true;if\(a6_idx==25\)a6_playsRight=false;if\(a6_playsRight\){a6_playRight\(\);}else{a6_playLeft\(\);}}catch\(e\){}) /S /JavaScript >> >> /AP << /N 2297 0 R >> /BS << /W 0 >> /Contents (animation by animate[2019/12/03]) /F 4 /FT /Btn /Ff 65536 /H /N /MK << /I 2297 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 176.4 165.34 417 418.66 ] /Subtype /Widget /T (anm6) /Type /Annot >> endobj 2352 0 obj << /AA << /D << /JS (a6_stopFirst\(\);) /S /JavaScript >> >> /AP << /N 811 0 R >> /BS << /W 0 >> /F 0 /FT /Btn /Ff 65536 /H /I /MK << /I 811 0 R /IF << /FB true /S /A >> /TP 1 >> /Rect [ 229.92 149.62 244.32 163.9 ] /Subtype /Widget /T (6.EndLeft) /Type /Annot >> @@ -19676,9 +19676,9 @@ endobj 2403 0 obj << /Filter /FlateDecode /S 492 /O 665 /Length 487 >> stream -xœc```c0rða`g`àØÍ Ì`6+H”¥I@Aá#ƒB##‡„€#C«|˜ÿÊ'æw 7X]b9í¡Á7…)ä» ×gF“ Ò˜ç:H_`obTI0×îgH6Ð<Â^í½µâÐ\CŽŒBÞß•X"ïm·>W¼áù®¾o2Ï­EÅd–]=}Ã}±d³Þ´s9 ½–®ž¾!éìâ°S"«¢vV³éÜ2 ¾‘ÜTùMð‰çT½dËͳ5‚Vf=}#±9ãê¦V­éÒn:Mõ¾a R™-¶.î`·Z®XÏm Êj¶Ü)š!{›Í°š Vuhm¿’ÏÊœHŸ´‹knžih™tMIÒÉÙnkÁr•Â’gç ¬E6 bßÖ¢o<‘[²ÀJ<§êÎNå -ÕêãI3θ–ó Ã-Ô -dF+k†* °;ûƒ#Zcëåc7™b8 ¤r·°]@¥dŠO°+`ð˜48¨0L¦ fgÆÖ¦FKé QŽÏ9+›?i¿`àa-> ÍðeƒÐFöAÆvi‡RÆ–Æ=¬>Ü FÍ+Tz„ ôçl£æ@†{9[í´ +xœc```c0rða`g`àØÍ Ì`6+H”¥I@Aá#ƒB##‡„€#C«|˜ÿJ‚“ó;†‹¬.±œvˆÐà›ÂÊà.Ãõ™Ñd‚ôæ¹ÒØ›UÌ5„û’ 4°W;do­ø4×Ѐc'£ƒ÷7F%–ˆÃ{Û­Ïox¾«ï›ÌskQ1™€¥AWOßpŸp,Ù¬7í\ÎB¯¥«§oH:»8ì”Ȫ¨Õl:·LA‚o$·U~|â9U/Ùról •YOßHlθº©Ukú†´›NS½oƒTf‹­‹;Ø­–+ÖÀs¨²š-wŠfÈÞf3¬f‚•DZÛ¯ä³2'Ò'íâš›gAZfÝDS’tr¶ÛZ°\¥°äÙ9k‘ ƒØ·µèOä–,°Ï©º³S¹Buc€úxÒŒ3®å<Ãp µ™ÑŠÁš¡(ìÄþàˆVcàã˜Ázù¨ÃM¦Îi‡\Æ-lP)™†"Æì +<& Ž* €)¨€ÙÁ™1‚µ€©Ñ’EFzB”ãsÎÊæOÚ/8dX „H3|`Ù t €Ñ…½@Á‡1€AÚ¡”1„%@ q«w‚Qó +•a=$À9›Áè€1!ÀÀÀ^ƒêî endstream endobj 2404 0 obj @@ -19688,28 +19688,21 @@ endobj << /FT /Btn /Ff 65537 /Rect [ 0.960007 837.94 3.96001 840.94 ] /Subtype /Widget /T (pbs@ARFix@1) /Type /Annot >> endobj 2406 0 obj -<< /Filter /FlateDecode /Length 3828 >> -stream -xœí[Ûr·Í3Á/û–Y—w„Æ~³dÉ¡c'²Ì8®Ø©ŠLÑKâR&åKþ>§Ì gwHŠ«¥ÊåJ©JÍÎt}9}Àü´P=-ÿ©ÿŸÜûûƒ{Oüâþ§~ù ü—¨ýÿ‰Q‹ç—øëà§Ê//ê?Çg‹ûGü-(ôšœ]ýxP$ÓBkê•]xo{³8:;ø®;Z®to=%ê^,©×A«Ø,U“r)þûèsf¤0C½óJCàÑ3HxŠ‡•q֙Э—"ŒNÝ)®T¢º³å -/çüäÑ7ù¶Ó1@Ý -÷£ÖN‡ªp2z¯{ -ó}ŠÁBàÊôÊQôÝ1F¥¢í^.MOÎ$/~ÎêðJHev1Qlº¨O -ëZùØÛÅÊØ>QJEá'm‰‚ï^A´ÒÖB†ëµ:t¿eÁ&$Íêl´sÝúÙÒö¤OÎö>úÐ]`ÜVõ:Æî3–h£Ó¸©zOÚ[ñö ¾RÚ)Zò |u§CŸ‚B€O²§é£.®þp¹r½N^ÇQ¦´«Ä;#Í3ˆ§ä0¿…'5Ò LÉYëàØÍ‹×ùB[ß]·>.\î øªÞ;Ýõjõt¸õÃpÑW pññpï|¸8zBo“õ¦‰^ OG=ã¼Ö›#…ž§[?žNNF:Îâ¤^Œ~ØÌòbä‹«Óûÿ^yO^¹ c·á½ µ5ó4`CcÆ«7@ˆh鮽ëéîo X^3J/ °ç|ì~ÖàÂ$%gŒÉ²°ô*ÏHÛ9¬ÑB¹¯h¼Jù -˜\ÀÐùE„\obFz)£à -/áÐà.;Ù÷Þ;gB@Aíd ì¦7]7;îFÃNÁˆ@ºc`^òÉ#ÁXè_‘N}LjRôcnŒ¹¶ûP€úµ+ù = -š§ÞÛd -F;Ýß²… DD=Î)-^9ÃäâçÕߣ×D¸ŠLÊШF¦û±B‘à%XÜy¯©˜Þ£©À‹%²Ñ[•jÍðNý&c²R°Ê)4£QeÖ£YŸ}Ñ'8¬`Pt¥1Ù¬´†IQE¾Keœ¯r`yV~²¤Ø²Ô}„_ Ïêîs®‰ -¥2´—ÁE¤}»õ5—Ö”ŒÝ˜b„ rÕÐär©×.e¸îY‹1ôötb…±Ölä†ö7=Œm»Os]d:ãíÀ ñƒ¹'ÜLÉšG4‘˜Å7K›F”ñR‘å8\UÁ+¸®Åý†PØ¿Ü’AB*ä„îì¼­£˜ ˜&æ’dž°ŠC`™ ‡ÀI“ ã¼w(é`—ìžH6‰@1Pe‚·Èxù±Ü¥jh•ØÒÀe™´I§ -QñÆAn†¬ðy¤£ÿÇÉ ÷3VÃpe1ƒ³£¦ä¼n#Msšì¶øèåìÅ@›!øDÒöÅG&ijãl³rÛ¸îÖ¨!‰3„äe¾‘’ÎŽ{ÀˆâH`œ|쬴£ùįjmr³?C©ÑªK¨jeÊx®ñ ^Áâ› ŒP#£ ˜ÙÂb=TFseè.J &‘ÅÑG~×ýu‰pR”Û”°\÷_`žvˆÚ_}¢1ìëæ¬Ä¬’Ôsø£0]âgeŒ`é²0q™S4˜ÿc6¦ëC¢-kqzÉ Uârv?³7ð¬šÀ‡…*ÀÍ!—}„&f‚`˜¼¡oÀ­ÍðEPØ ŒÙ¬b°xªtê!M¸”š;Uý.² <¡ ëÂ>›vLPø(gåjˆ½wÁXÅØœa ÁœVZST+£mÎ ½Ú¯-gÈ7ì&{Up.´ -ñ™àÔ·©Ñ·¦Îr0Z -¦"s]ŽŽÓ’­å$Kù¡LÖ†}Ç,¯iú„¨FyBÉs²< ëï0  Ù?¢ö|h]<[…Qåð,(]t¯Ð2¨‘ËÞ‚À:Õ+àâJcŒ¡Ÿ¬áJ.¸IdŒŒ8¿áÀIâh·ò«Ž"‰‹¼àô¼¼–š qŽPÈp·2Ëç øÀŠÂèÍ=—!‡›Åð„Ô&é_åI.¶m¶óqjš9ùÀ™¼Z‰#1?tô”¥üûH’a|É¿“Ó†.G¦ ½ñCdΖfWÁ'4ˆ;Oš0ž] EÌA÷È)*ß  cšÂ~ˤ†gZ-ãî„…î±\ÈGæîÂ)˜C^d€JÙGµ`ñÖA9&Ù õEÌ›çeR.Ó»CÜèV*´°R!ŸÓÌ cÔ~ªµP``fãa“ Ôi"j€)AÅ+«Ðü|»ä%nÑÚ¤¯´Mi³ÔiPeļúI¬˜›ÜP圈Ûb>O2–oÝæpmksC÷ 3_‹™\± hÒÈe4eƒ€Í>É‹Ë>Ä ŠÁøà„µnv>ú*²ÉSÃMl ìàžKÉ‹li-—,ßbAÄ(çüh4Ú9Ð>$.¿åôä$(HõŽÓk -›ìbb\ŠÐhQw>®Ä8Ä,‡_йòÏÌþŠÞm„€ÍF¬.È¿!•qñŠÖ~ ¡m:µŒ€¤ŠŒWê¿Y_¶-´…Ñè…Á\8%GÝ&°ÏÙÔ*ïó¬sȆ ]Ù„…50§³N_ñû%ô[Ž¡¶R˜  ëg“æ—–+äYÏïrZˆƒ\êƒr%Â1. X‡)xiOgç0çC×Mìy„ òÔ ä­cKPIùþ)_jâÒ~žw{x]±©ºÕNÇdFÃr®eĵ ë~XÎ…"Pnÿë÷ï¦ëºUéyÑ„‰ ã‘w£àÁEOÊf–Ï­`…!u?e8@…ð°vvœæ¼¼ê­ÍÅ‘òòµn"ðçýÎí=^/ëÎûñÐdnwë ›Tíìôd‹ds}”Vå V"¥ïÉpá!æ“ëò¹²|ñ6idËšÏ~œ4àÝzéF];»IëaƒÍ6/ý#óË{XÍ9°ÍwÜþÚ„ßK¼@UÅïyᬬg™¼I­šxVá˼풘‹žó.5/ѶÌÜŸÛÔïÜ7©ÚÙ} -¥´†kþ;ZòÁ†®2㉠P°yW@ßEa5N]ásáèé[Hm0TšÂ+ÊT_«.0ø:*{'Ά°wíÍuíêNbÏËÂ,Ù7w>È›¡°hÖ*T»©Óüõ¬²pòòõ1¯ÃN0‡Ô{ó›œq¸c¿Ý¬ë†-ò9¿¡!…ßPEÝè6dZ Þg`VøbIèPÁõ»û ­Öä6 µ èg ï€<;ÂSî‰t^=ò0sÞY¿1ûµ!äíþhr–ò+õ¡˜ n^£çc MP<¢•M¼„c7îÎ_ÞæÙ?Ž -Ÿb{món»¬¾½M&̇GgÒ2†B‰!´×»gÂ;êÚ9œ½6tË„²Ò‰VØÈcb'e‘°ó®ýà©tiÁI­ÖðúÇt•‘JÃø2æ͇áæÉxóÕÖ“|¹.—>…áQÜ·ë¤^$/w‡UïŸ1ZtôZf_IQ“ ­LQCœdér…~¹·Áýžâÿ˜b.õÚÊà¤1ì;U.cÚ¶í vgê`xIfÌé:<ÎýRâåŽéÅ@ -ÃvÞI'hÄ˨4Áä˜ÚWåNÀ„>ºmÒÈ»%בFJdß/it±×S›Ñ@î>Þ^ëÎÑ@`EElÁð°›µÖÖå̼.5ëì‘ʆ[8nŸL°š¥ ¹Yåî(á­•îZ)EáŠk¹á'ygK%ÒP9Ý¿’P—ì„.溢ùdG£‹‚#2ýã£Æ'Þô€*Ñ Ö%ààd:+}aŒ¡P¯²§‰k‰Zc‘^õ¬]¼Í[*µ;úî„D2 9féLR‹$>2ߤTÎS„È r|s?·Z¹~Îa1¶9@>1­¯¥øûï[9:[ÙE½?›}öÍ èž·Ë‹­×øÙ×íî‹YvqÜž½¼–]p=æó{, "–E% w]@o¥vç<~ü¾`6Qõ¾uý¼4v °\Ÿùp5o„Öc8H…£|²Lço*ð³I\_[V·¢ù’/“ѱœ1à”/_ˆ”¬Þ÷Q£Šš´ ¨•y›¨§ç  ô¥\?*õÝ'÷IË»Å6Ëž(ØÙü Fì^mç¬È"NksVüT¶¹??»Þ’pEvúØû)÷§z?Â%ƒÜú—òÉN”¯¸ÛZt0¯n-"¦¼ñÀšyRDþæÆ}ïù+b\¿G|;½»’òø»«ôøm÷è®\øÖ|Ps~ÍM¼3»:7¥Ã¼SUG¢áù ÆûÍy瘌}6®ËïvI£;@Ü»ß)ïºÖé¬²³aQF0S`Uäo ïÜ;ürñæâ瓃{ÿ\ÐÁ½¿ð_÷?À?‡Ÿ.þtððpqí×gŽ7‹]œßç êÃ_Ÿ)þæÄÇv¢W|·¦3JØÅ*o_«(¿¼ã¦ÿôlzÅ^D@¸Þ)Ÿš 6¢ -zü6&êr8&ø¼Œ÷Þ²>"mó‰+þòçQ9鼟hb_ògŠ1EFŠå}ñÀu‡OéçsÊäìSLðBO–6—±ÞªåšÿŠ“…4ìèGÇ¿fÙ‘Û<±þÓnÞÏr8¯u½Œ ±ïPïiX70¹Q º6F!üÒ¼qÁ²ùPäϨ¼h¬©|@ÅËz6”o—¬–‰—„$$¿f’@åãRŽ>2ÛBà¤Ð}¯øyý¬0÷hóép>fvBŒE PŒåM9’Êœ®åÎËй7áªÉ!ŸßlŸ 2lœN!@úaþò6$oó™ê̪<~]SÄpƒ¢ù ÎGù‹ ->Ü4\–ó8ÌÚÚ„êXø³Ó5¯•ÕÂÝ;§ƒåS.S×´6* Y',?ª®'/MØz.2:ÎǼ/ (&OûNŸßÃ4nŸn•.ðÑкôCù¬COÑ·fŽÊÄcŽ?¿®ç²ÚŽª Q¾Ôн -UfÑQeˆÏòÖKt7clqðõ91­Q~Ž„rÓ‹z´‚ÅÛÖÚy±óÕÁÿn[+> +stream +xœí[ÛŽ·Íóü‚_æ-=†§Åâ~³dÉ‘/ˆ,o#v€H«µ´vdïÊ—ü}N‘ìfõlÏ®v4+F @jõtW‘u9uŠdÿ¼T=-ÿ©ÿŸ-îüýÞÇ~y÷Ó{‹û_Ý+ÿ%jÿlÔòùÅ-~^P~yYÿ9>[Þ=â'hI¡×äìòèÇE‘LK­©Wvé½íÍòèlñ}w´ZëÞzJÔ½XQ¯ƒV±;Y©>&åRü÷Ñç,ÌHa†z畆À£gð+ã¬3¡Û¬4DºS\©D!tg«5^ÎùÉ£oòm§c€º5îG­Uádô^÷$>â!ûƒ…Àµé•£è»c(ŒJEÛ½\™žœI^þüœÕá•Êìb¢ØtQŸ0Öµö±·Ëµ±}¢”ŠÂO Úß½‚h¥­… ×kuè~Ï‚MHšÕÙ>hçºÍ³•íI;"žœí}ô¡;Ǹ­êuŒÝg,ÑF§qSõž´·âí|¥´S´âAÞ?Z|}•§CŸ‚B€O²§é£.®þpµv½N^ÇQ¦´]â‘æÄSr˜ßÒ“é¦ä¬upìöÅOùB[ß] ·>.î´‹5\î øªÞ;½$êÕ(êÉpëépÑW pññpïõpq&ô„Þ&ëM1*<.žŒzÆym¶G +=O.ýx:U8é8‹“z1úa;Ë‹‘Ïw§÷ÿ½òž¼rÆ^v‚¶©vé" ¶fžlh `ÄTàïu÷ `à<4ݧŒ ‰Ï°²&€Ãæ1c¡Ü­rÆЗ<`åéjûˆ\ö[£0ºÓ£F5^Ñx•ò€¸  óË©ÞDž‡N}`´]ç%üÏeÏzÌÀ9ƒ¸ÁÀµÇ ÍMo€´Œh@s܆=ñ:oǺä“1F<<"°Ð¿& ¸&ß[“â àÉ@k»/1e¢OP°’Ú£Šy˜Ð&S€Ù)èþox¡ÎfsJ‹WŽÅ0¹bà9GõwØÑgûH&q½€ Ý›îGEBøÂà^¤‚é짩Àâf«R-Îi¢ßd V +V9…fc4JËf4ëó¢/úć *Í 4&›•öÁ")ªÈw‰C£ŒóU!ÏÊOVW–ºð«q0 î>çB¨PC{ùW\DŠÑ·[ßp=MÉØ­)æA˜ 'Q M.×wí¨…˱^£@ ½½˜Ea¬ Û „¡=ÂMc[$ +Ç so2ð€´½•n¦³ŒÄ,¾]Ø4¢v—2ì(ÇẠ+^Ãu-î·„Âþuà– ÒQ± 'tg‡àmÅEÀ41<6„UË=Nšg½CŸ`÷D²Iºˆ*dEÆËå.UC«Ä–|(ËLM:UˆÚŠ7r3d…Ï#ý?N^¸Ÿ>€+‹œ5%çuišÓd/‹^Î^ ´‚ßq =$m_|d’¦6Î6‹!·ë>` +²•8CH^Ôèyè츌(ŽÆÉÇÎ +t4ŸøU­Mnöçq(5Zu U­LϾaÀk X|”jd3[X¬‡Ê`®´ÜE Ô„"²<úrqôá÷Ý+„“¢Ü;°+¸î¿À.<íµ¿1úDcØ×ÍY‰©4è?’Ôsø£0]àgeŒ æBŸá*§h0ÿÇlLׇD—¬Åé%'T ëáÚ_ØxVM`‰ÃÀBàæ€Ë>Bç2A0ÌÞÐ×àÖvø"(ìÆl×1ØNM3Ç 8“׫!qÄ æ‡.‚^˜²öy‘$ÃøŠ'§ \ŽLzã‡Èœ+,Í®‚NhzYX#€P”ÁLô€œ¢ò½0°Ð8¦9!ì/™´ÀðL«eÜ­°Ð–«ùÀÜ]8…óWà†RöQ-˜G¼uPŽIvM}óæy™”Ëðäî7ºU† +-¬TÈç43赟j-˜ÙxØdušˆ`JPñßKà*4?ß­x݆[´6é¶ !m—:ªŒ˜—aæk1“K‚&|QFS6Øìã¼¢ìC ¢ŒNXëvç£w‘Mž/;5`k`w÷\J^dKk¹dù "Fé<ç£Ñ^íCâñ{NßHN‚ÒˆTï8½¦°É.&Æ¥u¯ÇUƒ‡˜åð :Wþ™ÙïèÝFØnÄê²,ñ[Rw´ö mÓ©e$Ud̸RGøÍú²W¡-Œ–—ê0NÉQ· ìã×lj•7w69dCЮì¼ÀšŒÓY§wü~ý–c¨­&¨Dç’W +™öòŒKH«5òŒW2xŽ§x!‡ú \‰pŒËÖa +^ÚÓÙ9ÌùÐu{aƒ^…,`©æ79ãpË~»^×5ûâs~CC +¿¡ŠºÑmÈ8´¼ÏÀ¬ðÅ$’С‚ëwwZ5¬ÉmjÐÏÞ#yv „§Ü%é¼z0äaæ¼²~cökCÈ{üÑä,åWêC1Aܽ26:FÏg› xDk›x ÇnÝ¿¼É³>ÅöÚöÝvY}{“L˜!ŽÎ¤e …Ch¯÷Ï„wÔµw&8{e&è– e¥­°‘gÃNÊ"`ç?\ûÁ RéÒ‚“Z­áõé*#!•2†ñeÌ›ÃÍ“ñæ«KOòå¦\ú†GqwÜ®“z‘¼ÜV½ÅhÐÑk™}%EM&´2EU q’¥«5úåÞ÷GŠÿ?cŠ¹Ôk+ƒ“Æ°ïT¹ŒéðÙ¶‡Ú½©ƒá%™1§êð(÷K‰—;¦  ( Ûy' œ s,£Ò“W`j_•;úè.“FÞ-¹Š4R"û~I£‹½žÚŒBp‹ôñæZ÷Ž³(*b †û嬬µ¶.gæu©YgìP6ÜÂq‡d‚Õ,mÈÍ*·G o¬tߊH) +W\É ?É;[*y”†ÊéÎø•„ºd't1×Í';]‘éý0>ñ¦Tù8žÓäíSQ„ÎJ_c($Ô«ìiâÅZ¢VÁX¤W=koó–ŠE펾û!‘ ÃGŽd:“Ô"‰ÏÉ7é•ó!ò‚Ÿ‡ÃœÄÏ­Vnžs˜FŒmŽOLëk)þá‡VΟÌVvQïÏfŸ}3ǺçíòüÒküìOíî‹YvqÜž½¸’]p=æóG, "–E% ·]@o¤vï<~ü¨`6Qõ¡uó¼4v °\ŸùD5o„Öc8H…£|²Lç)ð³I\_[V·¢ù’/“ѱœ1à”/Ÿ…”¬Þ÷Q£Šš´ ¨•y›¨§ç  ô¥\?*õÝ'÷IË»Å6Ëž(ØÙü Fì^]ÎY‘Eœ:Wæ¬ ù[©.„]æþüìæ’„Ùécï§ÜŸBèý— r›_Ëw:Q:¼ânkÑÁ¼ºˆ˜ò~ÄæIù›÷ƒç¯ˆqýðÍôîKzÈãïJ¬Ò[Pà·Ý£Û¹ð­ù æüš›xgvunJ‡y§ªŽDÃóŒ5öÛòÎ1ûl\—?í’Fw€¸w¿UÞu­9ÒÜ5KYggâŒ`¦ÀªÈÞ}¸¸óð«å›ó_Nwþ¹¤Å¿ñ_wÝÃ??]þeqÿáòÊOÎo»8-¾ÏÔ †?9Sü͉íD¯øXMg”°ËuÞ¾VQ~nÇMÿéÙ*ôŠ½ˆ€p½!S>5AlDt>}‰ºŽ >/ã}†·¬H›‡ùÄîó œô ÞO4±/ùÛÄŒ"#Åò¾xàºÃ§ôó9erv„)&x¡'ËG›ËXoÔrͺÇÉBvô£ãbÙ‘Û<±þÓnÞÍr8¯u½Œ ±ïPïiX×0¹Q º¶F!üÒ¼qβùPä/¨¼h¬©|>ÅËz6”o—¬–‰—„$$¿e’@å‹RŽ>2ÛBà¤Ð}¯øyó¬0÷hóép>fvBŒE PŒåM9’Êœnä^—¡soÂU!“C> 8¾Ù¾dØ8C$€ôýü¹mHÞæ3Õ™Uy(ü¦¦ˆáEó!@ò|¸i¸(çq˜µµ Õ±ðg§^+!«…»÷N˧\¦¯imT²NX~T-\O^špé¹Èè8kð¾€@¢˜<:}þÓ¸yºUºÀGCëvÐÓòY‡ž¢oÍ•‰Çs]ÏeµU¢|©¡{ªÌ¢£ÊŸå­—ènÆØâàësbZ£ü å¦õh ‹·­µ+òb9æëÅÿ³Å(Íendstream endobj 2407 0 obj << /AA << /PC << /JS 740 0 R /S /JavaScript >> /PI << /JS 740 0 R /S /JavaScript >> /PO << /JS 739 0 R /S /JavaScript >> /PV << /JS 739 0 R /S /JavaScript >> >> /F 2 /Rect [ 333.72 629.38 338.76 634.54 ] /Subtype /Screen /Type /Annot >> @@ -20353,7 +20346,7 @@ endobj << /FT /Btn /Ff 65537 /Rect [ 0.960007 837.94 3.96001 840.94 ] /Subtype /Widget /T (pbs@ARFix@9) /Type /Annot >> endobj 64 0 obj -<< /Filter /FlateDecode /Length 5845 >> +<< /Filter /FlateDecode /Length 5846 >> stream xœÅ]k¥Gqþ>Ešoœ1¯û~A&Rl "8‹ 2Hlv½kË;Çöìbc ÿ=U}­¾½g.g!áãwÞKwuuÕSOUµ¿½f¿fø¿ôÏ·Wüæã>5×ýüã«O~ýqüWÎë¿*Ùõë·WðWß^ñððuúÇ‹ÛëžÁV_ûÍaÔõ³WWñÍüš µ¹kËÌÆÝõ³Û«Ïÿs¼Ñg^‰Ã_âO'ïêÅwåâ×õâ©\|[/~Y.þ­^ü¼\üY½øá7›Lúÿ”‹zö+”oæ³ù«gÿüÙáããÚ”dF¾ÀŸLHxåóã Û,gÆÈÃé5¾Ê9gáõ|“RI‰ÊmÒ+˜±Øœd*?¯™Æi#7£Íá>m¸ç @@ -20386,11 +20379,7 @@ J@ ²Íë`ìmŠðZùy³ñ¬Ç¤1?±GêÒN-z%ŒêˆÎtˆõBX…´Ø@$àL¥œSÍc`7–¶fðœ¡Àm:3¾q¢åëc"Ö’úâ-"cÍh¿h‚ÂÑ4ªÉCÕÇ©/¨Æc)¸ ©ÅHß2UøEgÖ¶v¿%Í{ ò„ŠçòœJÁxô“fu)@ä¥Ĺù5ÎKCŸæã&y°=¨EF§Y]€Øø¦Tb?ä 3; Nj¬lJÓWZ—¼Oi‹‰ç…¶åN±µ¨œ3xnîÓ­•\˪êˆ4<¯·M­{Hµ§“së‘cnÑ•¼T„¦ÂÕY\ØSå­LwxEÐþl*~^aEúÝ34cb™•_OâBv žópî@(R–»Gš¥×Þƒ4#hÍß6GìÝ/©[Ï‹æM3F ~[z‘U–¶•1ù]Àõ3ÏŸ_ô7ÆrŸ&ÇòØù )ÞÚ6±N+{ºzž,kÓºå»M:à‡#†‚ØGºHÑæÇ|›2ÌÆ._ÉS¼4ê‹5CÂ.®›&ÁÎ ¥ÓÄr6—•:‘²Ê£r–” =ì؈´pÔ|§*_ãv=z °a¼?×vHRGíŠCÓmæ#&x¹iÊGãL«åŠµ_ÛU7ÎЉ*RÜÝi‹F/¾>n%Y;rFÆÙÞ*Š)ƒá–áx¬| =BãÜ©“0¹k÷jÝ;uUåj A#Éך¶¶mÖBÔ×Ë`Ó9¥iffYà>9óu,]7JX’¿ÎˆNkqN-) -É*ü½Þ@š±ç½ÿïÇ@,å€éºÇÈÙÝßµ#3¸Ó(QD¾ð¶>õbøn—\ùfšÑúrM—ýª-ã‡ÿmüW_0;ÿyôp>@ä 4"äÑt<·å˜íB"iñ´O;u ÕŽôÚ¦©f¤µ9cÝ4|Z1¬h³Ë˜á‚œ–´ÍùªôPkØö·ÒuïÕ(•8°Ò¾çÀ-(ÞÌ‹v $ 'b/ªGç$×ç6Ÿ!»Ÿ'¬GϘ¬æŠº{,M²,4p·}´"{» VëzÛå¶Û$ݪ·õêóa{Ÿï 7´!‘šgåêšÿÎy¢p”mC}>lO×lßÛ"šËÏÊÅzÊO>ðÆ z¤/?¨ùìÎÊAÌä¶Äü§}èËØ6; ”Ç£,t§Y_nT8¬üœ^ƾ;ô+ÇèuË4Ù×# b -‰á$Un9 ºûæ+™rчÿÄ¿GØõó#¶…Ã8Ç©œ'ÿõƒjâÜâš!¬¯Œ™¿N*ó¹ÑÁh.éúHíÔjMãËsÖéUÆüøzÀË´ &RTcVåBêYú2ÑPum -o¯®»óº<@%•“ÑÀ–ÿòÇûŠÒçñUgx ‡æcŽ1|!—Ö0± -Í>q…õ³U.tïÔyÍO?nˆ pžm°kvÕ\ -ÅEtrÓáhl>“á¾úR Ño¯þn¡úäendstream +É*ü½Þ@š±ç½ÿïÇ@,å€éºÇÈÙÝßµ#3¸Ó(QD¾ð¶>õbøn—\ùfšÑúrM—ýª-ã‡ÿmüW_0;ÿyôp>@ä 4"äÑt<·å˜íB"iñ´O;u ÕŽôÚ¦©f¤µ9cÝ4|Z1¬h³Ë˜á‚œ–´ÍùªôPkØö·ÒuïÕ(•8°Ò¾çÀ-(ÞÌ‹v $ 'b/ªGç$×ç6Ÿ!»Ÿ'¬GϘ¬æŠº{,M²,4p·}´"{» VëzÛå¶Û$ݪ·õêóa{Ÿï 7´!‘šgåêšÿÎy¢p”mC}>lO×lßÛ"šËÏÊÅzÊO>ðÆ z¤/?¨ùìñÊAÌä”YbþÓ>ôel›‰ÊãQºÓ¬/7*V~N/cHßú•côºe‚lŒë‘1…Äp’*·Ý}ó‚•L¹èÃâß#ìúùÛÂaœ¿ˆãTΓÿúA5qnñ?Í ÖWÆÌ߈ '•ùÜè`4—t}¤vjµ¦ñå9ëôª c~ü=àeZ“N©ª1«r!õ,}™h¨:6…·W×Ýy] ’ÊÉh`Ëùã}Eésˆxª3> @@ -22928,7 +22917,7 @@ endobj << /Count 30 /Kids [ 2404 0 R 1 0 R 11 0 R 21 0 R 29 0 R 42 0 R 48 0 R 56 0 R 62 0 R 72 0 R 78 0 R 88 0 R 102 0 R 116 0 R 126 0 R 136 0 R 142 0 R 152 0 R 164 0 R 172 0 R 182 0 R 196 0 R 204 0 R 214 0 R 232 0 R 238 0 R 246 0 R 252 0 R 260 0 R 296 0 R ] /Type /Pages >> endobj 323 0 obj -<< /Author (Alexander Grahn) /CreationDate (D:20191127122219+01'00') /Creator (LaTeX with hyperref) /Keywords (include portable PDF animation SVG animation animated PDF animated SVG dvisvgm html TeX4ht web animating embed animated graphics LaTeX pdfLaTeX LuaLaTeX PSTricks pgf TikZ LaTeX-picture MetaPost inline graphics vector graphics animated GIF LaTeX dvips ps2pdf dvipdfmx XeLaTeX JavaScript Acrobat Reader PDF-XChange Foxit Reader Firefox Chrome Chromium) /ModDate (D:20191127122219+01'00') /Producer (GPL Ghostscript 9.50) /Subject (Documentation) /Title (The animate Package) >> +<< /Author (Alexander Grahn) /CreationDate (D:20191203080641+01'00') /Creator (LaTeX with hyperref) /Keywords (include portable PDF animation SVG animation animated PDF animated SVG dvisvgm html TeX4ht web animating embed animated graphics LaTeX pdfLaTeX LuaLaTeX PSTricks pgf TikZ LaTeX-picture MetaPost inline graphics vector graphics animated GIF LaTeX dvips ps2pdf dvipdfmx XeLaTeX JavaScript Acrobat Reader PDF-XChange Foxit Reader Firefox Chrome Chromium) /ModDate (D:20191203080641+01'00') /Producer (GPL Ghostscript 9.50) /Subject (Documentation) /Title (The animate Package) >> endobj 324 0 obj << /Limits [ (Doc-Start) (table.4) ] /Names [ (Doc-Start) 326 0 R (Hfootnote.1) 338 0 R (Item.1) 698 0 R (Item.2) 699 0 R (Item.3) 700 0 R (Item.4) 701 0 R (Item.5) 703 0 R (Item.6) 704 0 R (Item.7) 705 0 R (Item.8) 706 0 R (beginend) 347 0 R (cite.chupin) 709 0 R (cite.dvisvgm) 710 0 R (cite.gilg05) 711 0 R (cite.hol) 712 0 R (cite.luque12) 713 0 R (cite.media9) 714 0 R (cite.texsx) 716 0 R (dest:mem) 697 0 R (figure.1) 428 0 R (figure.2) 444 0 R (figure.3) 516 0 R (figure.4) 527 0 R (figure.5) 610 0 R (lstlisting.-1) 360 0 R (lstlisting.-2) 370 0 R (lstlisting.-3) 389 0 R (lstlisting.-4) 429 0 R (lstlisting.-5) 475 0 R (lstlisting.-6) 518 0 R (lstlisting.-7) 585 0 R (lstlisting.-8) 661 0 R (lstlisting.-9) 689 0 R (lstnumber.-1.1) 361 0 R (lstnumber.-1.2) 362 0 R (lstnumber.-1.3) 363 0 R (lstnumber.-1.4) 364 0 R (lstnumber.-1.5) 365 0 R (lstnumber.-1.6) 366 0 R (lstnumber.-1.7) 367 0 R (lstnumber.-2.1) 371 0 R (lstnumber.-2.10) 380 0 R (lstnumber.-2.11) 381 0 R (lstnumber.-2.12) 382 0 R (lstnumber.-2.2) 372 0 R (lstnumber.-2.3) 373 0 R (lstnumber.-2.4) 374 0 R (lstnumber.-2.5) 375 0 R (lstnumber.-2.6) 376 0 R (lstnumber.-2.7) 377 0 R (lstnumber.-2.8) 378 0 R (lstnumber.-2.9) 379 0 R (lstnumber.-3.1) 390 0 R (lstnumber.-3.10) 399 0 R (lstnumber.-3.11) 400 0 R (lstnumber.-3.12) 401 0 R (lstnumber.-3.13) 402 0 R (lstnumber.-3.14) 403 0 R (lstnumber.-3.15) 404 0 R (lstnumber.-3.16) 405 0 R (lstnumber.-3.17) 406 0 R (lstnumber.-3.18) 407 0 R (lstnumber.-3.19) 408 0 R (lstnumber.-3.2) 391 0 R (lstnumber.-3.20) 409 0 R (lstnumber.-3.21) 410 0 R (lstnumber.-3.22) 411 0 R (lstnumber.-3.23) 412 0 R (lstnumber.-3.24) 413 0 R (lstnumber.-3.25) 414 0 R (lstnumber.-3.26) 415 0 R (lstnumber.-3.27) 416 0 R (lstnumber.-3.28) 417 0 R (lstnumber.-3.29) 418 0 R (lstnumber.-3.3) 392 0 R (lstnumber.-3.30) 419 0 R (lstnumber.-3.31) 420 0 R (lstnumber.-3.32) 421 0 R (lstnumber.-3.33) 422 0 R (lstnumber.-3.34) 423 0 R (lstnumber.-3.35) 424 0 R (lstnumber.-3.36) 425 0 R (lstnumber.-3.37) 426 0 R (lstnumber.-3.4) 393 0 R (lstnumber.-3.5) 394 0 R (lstnumber.-3.6) 395 0 R (lstnumber.-3.7) 396 0 R (lstnumber.-3.8) 397 0 R (lstnumber.-3.9) 398 0 R (lstnumber.-4.1) 430 0 R (lstnumber.-4.10) 439 0 R (lstnumber.-4.11) 440 0 R (lstnumber.-4.12) 441 0 R (lstnumber.-4.13) 442 0 R (lstnumber.-4.14) 445 0 R (lstnumber.-4.15) 446 0 R (lstnumber.-4.16) 447 0 R (lstnumber.-4.17) 448 0 R (lstnumber.-4.18) 449 0 R (lstnumber.-4.19) 450 0 R (lstnumber.-4.2) 431 0 R (lstnumber.-4.20) 451 0 R (lstnumber.-4.21) 452 0 R (lstnumber.-4.22) 453 0 R (lstnumber.-4.23) 454 0 R (lstnumber.-4.24) 455 0 R (lstnumber.-4.25) 456 0 R (lstnumber.-4.26) 457 0 R (lstnumber.-4.27) 458 0 R (lstnumber.-4.28) 459 0 R (lstnumber.-4.29) 460 0 R (lstnumber.-4.3) 432 0 R (lstnumber.-4.30) 461 0 R (lstnumber.-4.31) 462 0 R (lstnumber.-4.32) 463 0 R (lstnumber.-4.33) 464 0 R (lstnumber.-4.34) 465 0 R (lstnumber.-4.35) 466 0 R (lstnumber.-4.36) 467 0 R (lstnumber.-4.37) 469 0 R (lstnumber.-4.38) 470 0 R (lstnumber.-4.39) 471 0 R (lstnumber.-4.4) 433 0 R (lstnumber.-4.40) 472 0 R (lstnumber.-4.41) 473 0 R (lstnumber.-4.5) 434 0 R (lstnumber.-4.6) 435 0 R (lstnumber.-4.7) 436 0 R (lstnumber.-4.8) 437 0 R (lstnumber.-4.9) 438 0 R (lstnumber.-5.1) 476 0 R (lstnumber.-5.10) 485 0 R (lstnumber.-5.11) 486 0 R (lstnumber.-5.12) 487 0 R (lstnumber.-5.13) 488 0 R (lstnumber.-5.14) 489 0 R (lstnumber.-5.15) 490 0 R (lstnumber.-5.16) 491 0 R (lstnumber.-5.17) 492 0 R (lstnumber.-5.18) 493 0 R (lstnumber.-5.19) 494 0 R (lstnumber.-5.2) 477 0 R (lstnumber.-5.20) 495 0 R (lstnumber.-5.21) 496 0 R (lstnumber.-5.22) 497 0 R (lstnumber.-5.23) 498 0 R (lstnumber.-5.24) 499 0 R (lstnumber.-5.25) 500 0 R (lstnumber.-5.26) 501 0 R (lstnumber.-5.27) 502 0 R (lstnumber.-5.28) 503 0 R (lstnumber.-5.29) 504 0 R (lstnumber.-5.3) 478 0 R (lstnumber.-5.30) 505 0 R (lstnumber.-5.31) 506 0 R (lstnumber.-5.32) 507 0 R (lstnumber.-5.33) 508 0 R (lstnumber.-5.34) 509 0 R (lstnumber.-5.35) 510 0 R (lstnumber.-5.36) 511 0 R (lstnumber.-5.37) 512 0 R (lstnumber.-5.38) 513 0 R (lstnumber.-5.39) 514 0 R (lstnumber.-5.4) 479 0 R (lstnumber.-5.40) 517 0 R (lstnumber.-5.5) 480 0 R (lstnumber.-5.6) 481 0 R (lstnumber.-5.7) 482 0 R (lstnumber.-5.8) 483 0 R (lstnumber.-5.9) 484 0 R (lstnumber.-6.1) 519 0 R (lstnumber.-6.10) 530 0 R (lstnumber.-6.11) 531 0 R (lstnumber.-6.12) 532 0 R (lstnumber.-6.13) 533 0 R (lstnumber.-6.14) 534 0 R (lstnumber.-6.15) 535 0 R (lstnumber.-6.16) 536 0 R (lstnumber.-6.17) 537 0 R (lstnumber.-6.18) 538 0 R (lstnumber.-6.19) 539 0 R (lstnumber.-6.2) 520 0 R (lstnumber.-6.20) 540 0 R (lstnumber.-6.21) 541 0 R (lstnumber.-6.22) 542 0 R (lstnumber.-6.23) 543 0 R (lstnumber.-6.24) 544 0 R (lstnumber.-6.25) 545 0 R (lstnumber.-6.26) 547 0 R (lstnumber.-6.27) 548 0 R (lstnumber.-6.28) 549 0 R (lstnumber.-6.29) 550 0 R (lstnumber.-6.3) 521 0 R (lstnumber.-6.30) 551 0 R (lstnumber.-6.31) 552 0 R (lstnumber.-6.32) 553 0 R (lstnumber.-6.33) 554 0 R (lstnumber.-6.34) 555 0 R (lstnumber.-6.35) 556 0 R (lstnumber.-6.36) 557 0 R (lstnumber.-6.37) 558 0 R (lstnumber.-6.38) 559 0 R (lstnumber.-6.39) 560 0 R (lstnumber.-6.4) 522 0 R (lstnumber.-6.40) 561 0 R (lstnumber.-6.41) 562 0 R (lstnumber.-6.42) 563 0 R (lstnumber.-6.43) 564 0 R (lstnumber.-6.44) 565 0 R (lstnumber.-6.45) 566 0 R (lstnumber.-6.46) 567 0 R (lstnumber.-6.47) 568 0 R (lstnumber.-6.48) 569 0 R (lstnumber.-6.49) 570 0 R (lstnumber.-6.5) 523 0 R (lstnumber.-6.50) 571 0 R (lstnumber.-6.51) 572 0 R (lstnumber.-6.52) 573 0 R (lstnumber.-6.53) 574 0 R (lstnumber.-6.54) 575 0 R (lstnumber.-6.55) 576 0 R (lstnumber.-6.56) 577 0 R (lstnumber.-6.57) 578 0 R (lstnumber.-6.58) 579 0 R (lstnumber.-6.59) 580 0 R (lstnumber.-6.6) 524 0 R (lstnumber.-6.60) 581 0 R (lstnumber.-6.61) 582 0 R (lstnumber.-6.62) 583 0 R (lstnumber.-6.63) 584 0 R (lstnumber.-6.7) 525 0 R (lstnumber.-6.8) 528 0 R (lstnumber.-6.9) 529 0 R (lstnumber.-7.1) 586 0 R (lstnumber.-7.10) 596 0 R (lstnumber.-7.11) 597 0 R (lstnumber.-7.12) 598 0 R (lstnumber.-7.13) 599 0 R (lstnumber.-7.14) 600 0 R (lstnumber.-7.15) 601 0 R (lstnumber.-7.16) 602 0 R (lstnumber.-7.17) 603 0 R (lstnumber.-7.18) 604 0 R (lstnumber.-7.19) 605 0 R (lstnumber.-7.2) 588 0 R (lstnumber.-7.20) 606 0 R (lstnumber.-7.21) 607 0 R (lstnumber.-7.22) 608 0 R (lstnumber.-7.23) 609 0 R (lstnumber.-7.24) 612 0 R (lstnumber.-7.25) 613 0 R (lstnumber.-7.26) 614 0 R (lstnumber.-7.27) 615 0 R (lstnumber.-7.28) 616 0 R (lstnumber.-7.29) 617 0 R (lstnumber.-7.3) 589 0 R (lstnumber.-7.30) 618 0 R (lstnumber.-7.31) 619 0 R (lstnumber.-7.32) 620 0 R (lstnumber.-7.33) 621 0 R (lstnumber.-7.34) 622 0 R (lstnumber.-7.35) 623 0 R (lstnumber.-7.36) 624 0 R (lstnumber.-7.37) 625 0 R (lstnumber.-7.38) 626 0 R (lstnumber.-7.39) 627 0 R (lstnumber.-7.4) 590 0 R (lstnumber.-7.40) 628 0 R (lstnumber.-7.41) 629 0 R (lstnumber.-7.42) 630 0 R (lstnumber.-7.43) 631 0 R (lstnumber.-7.44) 632 0 R (lstnumber.-7.45) 633 0 R (lstnumber.-7.46) 634 0 R (lstnumber.-7.47) 635 0 R (lstnumber.-7.48) 636 0 R (lstnumber.-7.49) 637 0 R (lstnumber.-7.5) 591 0 R (lstnumber.-7.50) 638 0 R (lstnumber.-7.51) 639 0 R (lstnumber.-7.52) 640 0 R (lstnumber.-7.53) 641 0 R (lstnumber.-7.54) 642 0 R (lstnumber.-7.55) 643 0 R (lstnumber.-7.56) 644 0 R (lstnumber.-7.57) 645 0 R (lstnumber.-7.58) 646 0 R (lstnumber.-7.59) 647 0 R (lstnumber.-7.6) 592 0 R (lstnumber.-7.60) 648 0 R (lstnumber.-7.61) 649 0 R (lstnumber.-7.62) 650 0 R (lstnumber.-7.63) 651 0 R (lstnumber.-7.64) 652 0 R (lstnumber.-7.65) 653 0 R (lstnumber.-7.66) 654 0 R (lstnumber.-7.67) 655 0 R (lstnumber.-7.68) 656 0 R (lstnumber.-7.69) 657 0 R (lstnumber.-7.7) 593 0 R (lstnumber.-7.70) 658 0 R (lstnumber.-7.8) 594 0 R (lstnumber.-7.9) 595 0 R (lstnumber.-8.1) 662 0 R (lstnumber.-8.10) 671 0 R (lstnumber.-8.11) 672 0 R (lstnumber.-8.12) 673 0 R (lstnumber.-8.13) 674 0 R (lstnumber.-8.14) 675 0 R (lstnumber.-8.15) 676 0 R (lstnumber.-8.16) 677 0 R (lstnumber.-8.17) 678 0 R (lstnumber.-8.18) 679 0 R (lstnumber.-8.19) 680 0 R (lstnumber.-8.2) 663 0 R (lstnumber.-8.20) 681 0 R (lstnumber.-8.21) 682 0 R (lstnumber.-8.22) 683 0 R (lstnumber.-8.23) 684 0 R (lstnumber.-8.24) 685 0 R (lstnumber.-8.25) 686 0 R (lstnumber.-8.26) 687 0 R (lstnumber.-8.3) 664 0 R (lstnumber.-8.4) 665 0 R (lstnumber.-8.5) 666 0 R (lstnumber.-8.6) 667 0 R (lstnumber.-8.7) 668 0 R (lstnumber.-8.8) 669 0 R (lstnumber.-8.9) 670 0 R (lstnumber.-9.1) 690 0 R (lstnumber.-9.2) 691 0 R (lstnumber.-9.3) 692 0 R (lstnumber.-9.4) 693 0 R (lstnumber.-9.5) 695 0 R (page.1) 325 0 R (page.10) 346 0 R (page.11) 349 0 R (page.12) 352 0 R (page.13) 355 0 R (page.14) 358 0 R (page.15) 369 0 R (page.16) 383 0 R (page.17) 386 0 R (page.18) 427 0 R (page.19) 443 0 R (page.2) 328 0 R (page.20) 468 0 R (page.21) 515 0 R (page.22) 526 0 R (page.23) 546 0 R (page.24) 587 0 R (page.25) 611 0 R (page.26) 659 0 R (page.27) 688 0 R (page.28) 694 0 R (page.29) 702 0 R (page.3) 331 0 R (page.30) 715 0 R (page.4) 334 0 R (page.5) 336 0 R (page.6) 339 0 R (page.7) 341 0 R (page.8) 344 0 R (page.9) 345 0 R (section*.1) 327 0 R (section*.2) 337 0 R (section*.3) 340 0 R (section*.4) 350 0 R (section*.5) 351 0 R (section*.6) 354 0 R (section*.7) 357 0 R (section*.8) 359 0 R (section*.9) 708 0 R (section.1) 329 0 R (section.10) 696 0 R (section.11) 707 0 R (section.2) 330 0 R (section.3) 332 0 R (section.4) 333 0 R (section.5) 335 0 R (section.6) 342 0 R (section.7) 368 0 R (section.8) 387 0 R (section.9) 660 0 R (subsection.6.1) 343 0 R (subsection.6.2) 348 0 R (subsection.8.1) 388 0 R (subsection.8.2) 474 0 R (table.1) 353 0 R (table.2) 356 0 R (table.3) 384 0 R (table.4) 385 0 R ] >> @@ -24122,14 +24111,14 @@ stream -GPL Ghostscript 9.50 +GPL Ghostscript 9.50 include portable PDF animation SVG animation animated PDF animated SVG dvisvgm html TeX4ht web animating embed animated graphics LaTeX pdfLaTeX LuaLaTeX PSTricks pgf TikZ LaTeX-picture MetaPost inline graphics vector graphics animated GIF LaTeX dvips ps2pdf dvipdfmx XeLaTeX JavaScript Acrobat Reader PDF-XChange Foxit Reader Firefox Chrome Chromium -2019-11-27T12:22:19+01:00 -2019-11-27T12:22:19+01:00 +2019-12-03T08:06:41+01:00 +2019-12-03T08:06:41+01:00 LaTeX with hyperref - -The animate PackageAlexander GrahnDocumentation + +The animate PackageAlexander GrahnDocumentation @@ -24139,726 +24128,726 @@ endobj xref 0 720 0000000000 65535 f -0003328494 00000 n -0003328726 00000 n -0003328854 00000 n -0003334231 00000 n -0003334376 00000 n -0003334521 00000 n -0003334666 00000 n -0003334811 00000 n -0003334846 00000 n -0003334894 00000 n -0003334971 00000 n -0003335212 00000 n -0003335341 00000 n -0003338330 00000 n -0003338552 00000 n -0003338774 00000 n -0003338922 00000 n -0003339070 00000 n -0003339106 00000 n -0003339155 00000 n -0003339218 00000 n -0003339478 00000 n -0003339607 00000 n -0003344317 00000 n -0003344569 00000 n -0003344605 00000 n -0003344683 00000 n -0003344732 00000 n -0003344808 00000 n -0003345057 00000 n -0003345186 00000 n -0003352230 00000 n -0003352378 00000 n -0003352526 00000 n -0003352678 00000 n -0003352830 00000 n -0003353065 00000 n -0003353329 00000 n -0003353365 00000 n -0003353414 00000 n -0003353489 00000 n -0003354572 00000 n -0003354793 00000 n -0003354922 00000 n -0003361541 00000 n -0003361577 00000 n -0003361626 00000 n -0003361716 00000 n -0003361943 00000 n -0003362072 00000 n -0003366317 00000 n -0003366464 00000 n -0003366611 00000 n -0003366647 00000 n -0003366696 00000 n -0003366772 00000 n -0003366985 00000 n -0003367114 00000 n -0003372605 00000 n -0003372641 00000 n -0003372690 00000 n -0003372739 00000 n -0003372980 00000 n -0003373109 00000 n -0003379027 00000 n -0003379174 00000 n -0003379321 00000 n -0003379468 00000 n -0003379615 00000 n -0003379651 00000 n -0003379700 00000 n -0003379749 00000 n -0003379962 00000 n -0003380092 00000 n -0003386360 00000 n -0003386396 00000 n -0003386445 00000 n -0003386535 00000 n -0003386776 00000 n -0003386906 00000 n -0003393643 00000 n -0003393791 00000 n -0003393939 00000 n -0003394084 00000 n -0003394229 00000 n -0003394265 00000 n -0003394314 00000 n -0003394376 00000 n -0003394655 00000 n -0003394785 00000 n -0003400221 00000 n -0003400367 00000 n -0003400513 00000 n -0003400659 00000 n -0003400805 00000 n -0003400957 00000 n -0003401109 00000 n -0003401254 00000 n -0003401399 00000 n -0003401435 00000 n -0003401485 00000 n -0003401548 00000 n -0003401839 00000 n -0003401970 00000 n -0003406005 00000 n -0003406152 00000 n -0003406299 00000 n -0003406452 00000 n -0003406605 00000 n -0003406755 00000 n -0003406905 00000 n -0003407053 00000 n -0003407201 00000 n -0003407238 00000 n -0003407288 00000 n -0003407351 00000 n -0003407602 00000 n -0003407733 00000 n -0003412539 00000 n -0003412685 00000 n -0003412831 00000 n -0003412977 00000 n -0003413123 00000 n -0003413160 00000 n -0003413210 00000 n -0003413287 00000 n -0003413538 00000 n -0003413669 00000 n -0003415671 00000 n -0003415824 00000 n -0003415977 00000 n -0003416126 00000 n -0003416275 00000 n -0003416312 00000 n -0003416362 00000 n -0003416412 00000 n -0003416639 00000 n -0003416770 00000 n -0003420432 00000 n -0003420469 00000 n -0003420519 00000 n -0003420569 00000 n -0003420820 00000 n -0003420951 00000 n -0003424348 00000 n -0003424495 00000 n -0003424642 00000 n -0003424789 00000 n -0003424936 00000 n -0003424973 00000 n -0003425023 00000 n -0003425143 00000 n -0003425611 00000 n -0003425742 00000 n -0003429272 00000 n -0003429524 00000 n -0003429671 00000 n -0003429818 00000 n -0003429968 00000 n -0003430118 00000 n -0003430155 00000 n -0003430612 00000 n -0003430662 00000 n -0003430908 00000 n -0003432187 00000 n -0003432318 00000 n -0003433568 00000 n -0003433825 00000 n -0003433862 00000 n -0003442932 00000 n -0003442982 00000 n -0003443157 00000 n -0003443408 00000 n -0003443539 00000 n -0003446220 00000 n -0003446367 00000 n -0003446514 00000 n -0003446664 00000 n -0003446814 00000 n -0003446851 00000 n -0003446901 00000 n -0003446979 00000 n -0003447634 00000 n -0003447765 00000 n -0003451705 00000 n -0003451962 00000 n -0003452109 00000 n -0003452256 00000 n -0003452429 00000 n -0003452665 00000 n -0003452702 00000 n -0003453653 00000 n -0003453703 00000 n -0003453796 00000 n -0003454461 00000 n -0003454560 00000 n -0003456649 00000 n -0003456780 00000 n -0003457913 00000 n -0003458170 00000 n -0003458207 00000 n -0003464342 00000 n -0003464392 00000 n -0003464456 00000 n -0003464707 00000 n -0003464838 00000 n -0003469404 00000 n -0003469551 00000 n -0003469698 00000 n -0003469849 00000 n -0003470000 00000 n -0003470037 00000 n -0003470087 00000 n -0003470137 00000 n -0003470758 00000 n -0003470889 00000 n -0003471741 00000 n -0003471993 00000 n -0003826453 00000 n -0003826530 00000 n -0003828819 00000 n -0003828894 00000 n -0003829051 00000 n -0003829143 00000 n -0003829285 00000 n -0003829455 00000 n -0003829718 00000 n -0003829974 00000 n -0003830011 00000 n -0003830897 00000 n -0003830947 00000 n -0003831026 00000 n -0003831245 00000 n -0003831376 00000 n -0003833124 00000 n -0003833161 00000 n -0003833211 00000 n -0003833261 00000 n -0003833496 00000 n -0003833627 00000 n -0003838191 00000 n -0003838342 00000 n -0003838493 00000 n -0003838530 00000 n -0003838580 00000 n -0003838644 00000 n -0003838863 00000 n -0003838994 00000 n -0003845194 00000 n -0003845231 00000 n -0003845281 00000 n -0003845345 00000 n -0003845580 00000 n -0003845711 00000 n -0003851496 00000 n -0003851643 00000 n -0003851790 00000 n -0003851827 00000 n -0003851877 00000 n -0003851968 00000 n -0003852427 00000 n -0003852558 00000 n -0003858398 00000 n -0003858543 00000 n -0003858688 00000 n -0003858833 00000 n -0003858978 00000 n -0003859171 00000 n -0003859364 00000 n -0003859513 00000 n -0003859662 00000 n -0003859810 00000 n -0003859958 00000 n -0003860106 00000 n -0003860254 00000 n -0003860432 00000 n -0003860610 00000 n -0003860836 00000 n -0003861014 00000 n -0003861192 00000 n -0003861418 00000 n -0003861621 00000 n -0003861824 00000 n -0003862050 00000 n -0003862253 00000 n -0003862456 00000 n -0003862682 00000 n -0003862854 00000 n -0003863026 00000 n -0003863209 00000 n -0003863392 00000 n -0003863577 00000 n -0003863762 00000 n -0003863799 00000 n -0003863849 00000 n -0003863926 00000 n -0003864241 00000 n -0003864372 00000 n -0003865008 00000 n -0003865192 00000 n -0003865376 00000 n -0003865569 00000 n -0003865753 00000 n -0003865937 00000 n -0003866130 00000 n -0003866294 00000 n -0003866458 00000 n -0003866651 00000 n -0003866815 00000 n -0003866979 00000 n -0003867172 00000 n -0003867209 00000 n -0003867259 00000 n -0003867322 00000 n -0003867804 00000 n -0003868181 00000 n -0003868401 00000 n -0003868641 00000 n -0003869615 00000 n -0003871992 00000 n -0003872337 00000 n -0003872560 00000 n -0003872845 00000 n -0003873449 00000 n -0003883061 00000 n -0003883132 00000 n -0003883200 00000 n -0003883268 00000 n -0003883333 00000 n -0003883397 00000 n -0003883462 00000 n -0003883531 00000 n -0003883597 00000 n -0003883663 00000 n -0003883729 00000 n -0003883795 00000 n -0003883864 00000 n -0003883929 00000 n -0003883995 00000 n -0003884061 00000 n -0003884126 00000 n -0003884195 00000 n -0003884261 00000 n -0003884327 00000 n -0003884393 00000 n -0003884462 00000 n -0003884528 00000 n -0003884594 00000 n -0003884660 00000 n -0003884729 00000 n -0003884795 00000 n -0003884861 00000 n -0003884927 00000 n -0003884993 00000 n -0003885059 00000 n -0003885129 00000 n -0003885196 00000 n -0003885263 00000 n -0003885330 00000 n -0003885397 00000 n -0003885464 00000 n -0003885531 00000 n -0003885598 00000 n -0003885665 00000 n -0003885732 00000 n -0003885798 00000 n -0003885865 00000 n -0003885932 00000 n -0003885999 00000 n -0003886069 00000 n -0003886136 00000 n -0003886202 00000 n -0003886268 00000 n -0003886335 00000 n -0003886402 00000 n -0003886469 00000 n -0003886535 00000 n -0003886602 00000 n -0003886669 00000 n -0003886736 00000 n -0003886803 00000 n -0003886870 00000 n -0003886937 00000 n -0003887004 00000 n -0003887071 00000 n -0003887138 00000 n -0003887208 00000 n -0003887275 00000 n -0003887342 00000 n -0003887409 00000 n -0003887476 00000 n -0003887543 00000 n -0003887609 00000 n -0003887675 00000 n -0003887742 00000 n -0003887809 00000 n -0003887876 00000 n -0003887942 00000 n -0003888008 00000 n -0003888075 00000 n -0003888142 00000 n -0003888209 00000 n -0003888275 00000 n -0003888342 00000 n -0003888409 00000 n -0003888476 00000 n -0003888542 00000 n -0003888608 00000 n -0003888675 00000 n -0003888742 00000 n -0003888809 00000 n -0003888876 00000 n -0003888943 00000 n -0003889010 00000 n -0003889077 00000 n -0003889144 00000 n -0003889211 00000 n -0003889278 00000 n -0003889345 00000 n -0003889412 00000 n -0003889479 00000 n -0003889545 00000 n -0003889612 00000 n -0003889679 00000 n -0003889746 00000 n -0003889813 00000 n -0003889880 00000 n -0003889947 00000 n -0003890013 00000 n -0003890080 00000 n -0003890147 00000 n -0003890214 00000 n -0003890281 00000 n -0003890348 00000 n -0003890415 00000 n -0003890482 00000 n -0003890549 00000 n -0003890616 00000 n -0003890683 00000 n -0003890750 00000 n -0003890817 00000 n -0003890884 00000 n -0003890951 00000 n -0003891021 00000 n -0003891088 00000 n -0003891155 00000 n -0003891222 00000 n -0003891289 00000 n -0003891353 00000 n -0003891417 00000 n -0003891481 00000 n -0003891547 00000 n -0003891614 00000 n -0003891681 00000 n -0003891748 00000 n -0003891815 00000 n -0003891882 00000 n -0003891949 00000 n -0003892016 00000 n -0003892083 00000 n -0003892150 00000 n -0003892217 00000 n -0003892284 00000 n -0003892351 00000 n -0003892418 00000 n -0003892484 00000 n -0003892551 00000 n -0003892618 00000 n -0003892685 00000 n -0003892752 00000 n -0003892819 00000 n -0003892885 00000 n -0003892951 00000 n -0003893018 00000 n -0003893085 00000 n -0003893152 00000 n -0003893219 00000 n -0003893285 00000 n -0003893352 00000 n -0003893419 00000 n -0003893486 00000 n -0003893553 00000 n -0003893620 00000 n -0003893687 00000 n -0003893754 00000 n -0003893818 00000 n -0003893885 00000 n -0003893952 00000 n -0003894019 00000 n -0003894086 00000 n -0003894153 00000 n -0003894219 00000 n -0003894286 00000 n -0003894353 00000 n -0003894420 00000 n -0003894487 00000 n -0003894554 00000 n -0003894621 00000 n -0003894688 00000 n -0003894755 00000 n -0003894822 00000 n -0003894889 00000 n -0003894956 00000 n -0003895023 00000 n -0003895090 00000 n -0003895157 00000 n -0003895224 00000 n -0003895291 00000 n -0003895358 00000 n -0003895425 00000 n -0003895492 00000 n -0003895559 00000 n -0003895626 00000 n -0003895693 00000 n -0003895760 00000 n -0003895830 00000 n -0003895897 00000 n -0003895964 00000 n -0003896031 00000 n -0003896098 00000 n -0003896165 00000 n -0003896232 00000 n -0003896299 00000 n -0003896366 00000 n -0003896433 00000 n -0003896500 00000 n -0003896567 00000 n -0003896634 00000 n -0003896701 00000 n -0003896768 00000 n -0003896835 00000 n -0003896902 00000 n -0003896969 00000 n -0003897034 00000 n -0003897100 00000 n -0003897167 00000 n -0003897234 00000 n -0003897301 00000 n -0003897366 00000 n -0003897433 00000 n -0003897500 00000 n -0003897567 00000 n -0003897634 00000 n -0003897700 00000 n -0003897767 00000 n -0003897834 00000 n -0003897904 00000 n -0003897971 00000 n -0003898038 00000 n -0003898104 00000 n -0003898170 00000 n -0003898237 00000 n -0003898304 00000 n -0003898371 00000 n -0003898437 00000 n -0003898503 00000 n -0003898570 00000 n -0003898637 00000 n -0003898704 00000 n -0003898770 00000 n -0003898837 00000 n -0003898904 00000 n -0003898971 00000 n -0003899038 00000 n -0003899105 00000 n -0003899172 00000 n -0003899239 00000 n -0003899303 00000 n -0003899370 00000 n -0003899437 00000 n -0003899504 00000 n -0003899571 00000 n -0003899638 00000 n -0003899704 00000 n -0003899771 00000 n -0003899838 00000 n -0003899905 00000 n -0003899972 00000 n -0003900039 00000 n -0003900106 00000 n -0003900173 00000 n -0003900240 00000 n -0003900307 00000 n -0003900374 00000 n -0003900441 00000 n -0003900508 00000 n -0003900575 00000 n -0003900642 00000 n -0003900709 00000 n -0003900776 00000 n -0003900842 00000 n -0003900908 00000 n -0003900975 00000 n -0003901042 00000 n -0003901109 00000 n -0003901175 00000 n -0003901241 00000 n -0003901308 00000 n -0003901375 00000 n -0003901442 00000 n -0003901508 00000 n -0003901575 00000 n -0003901642 00000 n -0003901709 00000 n -0003901776 00000 n -0003901843 00000 n -0003901910 00000 n -0003901977 00000 n -0003902041 00000 n -0003902108 00000 n -0003902175 00000 n -0003902245 00000 n -0003902312 00000 n -0003902379 00000 n -0003902445 00000 n -0003902511 00000 n -0003902578 00000 n -0003902645 00000 n -0003902712 00000 n -0003902778 00000 n -0003902844 00000 n -0003902911 00000 n -0003902978 00000 n -0003903045 00000 n -0003903111 00000 n -0003903178 00000 n -0003903245 00000 n -0003903312 00000 n -0003903379 00000 n -0003903446 00000 n -0003903513 00000 n -0003903580 00000 n -0003903644 00000 n -0003903711 00000 n -0003903778 00000 n -0003903845 00000 n -0003903912 00000 n -0003903979 00000 n -0003904045 00000 n -0003904112 00000 n -0003904179 00000 n -0003904246 00000 n -0003904313 00000 n -0003904380 00000 n -0003904447 00000 n -0003904514 00000 n -0003904581 00000 n -0003904648 00000 n -0003904715 00000 n -0003904782 00000 n -0003904849 00000 n -0003904916 00000 n -0003904983 00000 n -0003905050 00000 n -0003905117 00000 n -0003905184 00000 n -0003905251 00000 n -0003905318 00000 n -0003905385 00000 n -0003905452 00000 n -0003905519 00000 n -0003905586 00000 n -0003905653 00000 n -0003905720 00000 n -0003905787 00000 n -0003905854 00000 n -0003905921 00000 n -0003905988 00000 n -0003906055 00000 n -0003906122 00000 n -0003906189 00000 n -0003906253 00000 n -0003906317 00000 n -0003906381 00000 n -0003906448 00000 n -0003906515 00000 n -0003906582 00000 n -0003906649 00000 n -0003906716 00000 n -0003906783 00000 n -0003906850 00000 n -0003906917 00000 n -0003906984 00000 n -0003907051 00000 n -0003907118 00000 n -0003907185 00000 n -0003907251 00000 n -0003907317 00000 n -0003907387 00000 n -0003907454 00000 n -0003907521 00000 n -0003907588 00000 n -0003907655 00000 n -0003907722 00000 n -0003907789 00000 n -0003907856 00000 n -0003907923 00000 n -0003907993 00000 n -0003908060 00000 n -0003908127 00000 n -0003908194 00000 n -0003908261 00000 n -0003908331 00000 n -0003908398 00000 n -0003908465 00000 n -0003908531 00000 n -0003908598 00000 n -0003908665 00000 n -0003908732 00000 n -0003908799 00000 n -0003908866 00000 n -0003908933 00000 n -0003909000 00000 n -0003909067 00000 n -0003909134 00000 n -0003909201 00000 n -0003909268 00000 n -0003909307 00000 n -0003909337 00000 n -trailer << /Size 720 /ID [<120cb9f2c4ad1913b9a491fe1f3825da>] >> +0003328490 00000 n +0003328722 00000 n +0003328850 00000 n +0003334227 00000 n +0003334372 00000 n +0003334517 00000 n +0003334662 00000 n +0003334807 00000 n +0003334842 00000 n +0003334890 00000 n +0003334967 00000 n +0003335208 00000 n +0003335337 00000 n +0003338326 00000 n +0003338548 00000 n +0003338770 00000 n +0003338918 00000 n +0003339066 00000 n +0003339102 00000 n +0003339151 00000 n +0003339214 00000 n +0003339474 00000 n +0003339603 00000 n +0003344313 00000 n +0003344565 00000 n +0003344601 00000 n +0003344679 00000 n +0003344728 00000 n +0003344804 00000 n +0003345053 00000 n +0003345182 00000 n +0003352226 00000 n +0003352374 00000 n +0003352522 00000 n +0003352674 00000 n +0003352826 00000 n +0003353061 00000 n +0003353325 00000 n +0003353361 00000 n +0003353410 00000 n +0003353485 00000 n +0003354568 00000 n +0003354789 00000 n +0003354918 00000 n +0003361537 00000 n +0003361573 00000 n +0003361622 00000 n +0003361712 00000 n +0003361939 00000 n +0003362068 00000 n +0003366313 00000 n +0003366460 00000 n +0003366607 00000 n +0003366643 00000 n +0003366692 00000 n +0003366768 00000 n +0003366981 00000 n +0003367110 00000 n +0003372601 00000 n +0003372637 00000 n +0003372686 00000 n +0003372735 00000 n +0003372976 00000 n +0003373105 00000 n +0003379024 00000 n +0003379171 00000 n +0003379318 00000 n +0003379465 00000 n +0003379612 00000 n +0003379648 00000 n +0003379697 00000 n +0003379746 00000 n +0003379959 00000 n +0003380089 00000 n +0003386357 00000 n +0003386393 00000 n +0003386442 00000 n +0003386532 00000 n +0003386773 00000 n +0003386903 00000 n +0003393640 00000 n +0003393788 00000 n +0003393936 00000 n +0003394081 00000 n +0003394226 00000 n +0003394262 00000 n +0003394311 00000 n +0003394373 00000 n +0003394652 00000 n +0003394782 00000 n +0003400218 00000 n +0003400364 00000 n +0003400510 00000 n +0003400656 00000 n +0003400802 00000 n +0003400954 00000 n +0003401106 00000 n +0003401251 00000 n +0003401396 00000 n +0003401432 00000 n +0003401482 00000 n +0003401545 00000 n +0003401836 00000 n +0003401967 00000 n +0003406002 00000 n +0003406149 00000 n +0003406296 00000 n +0003406449 00000 n +0003406602 00000 n +0003406752 00000 n +0003406902 00000 n +0003407050 00000 n +0003407198 00000 n +0003407235 00000 n +0003407285 00000 n +0003407348 00000 n +0003407599 00000 n +0003407730 00000 n +0003412536 00000 n +0003412682 00000 n +0003412828 00000 n +0003412974 00000 n +0003413120 00000 n +0003413157 00000 n +0003413207 00000 n +0003413284 00000 n +0003413535 00000 n +0003413666 00000 n +0003415668 00000 n +0003415821 00000 n +0003415974 00000 n +0003416123 00000 n +0003416272 00000 n +0003416309 00000 n +0003416359 00000 n +0003416409 00000 n +0003416636 00000 n +0003416767 00000 n +0003420429 00000 n +0003420466 00000 n +0003420516 00000 n +0003420566 00000 n +0003420817 00000 n +0003420948 00000 n +0003424345 00000 n +0003424492 00000 n +0003424639 00000 n +0003424786 00000 n +0003424933 00000 n +0003424970 00000 n +0003425020 00000 n +0003425140 00000 n +0003425608 00000 n +0003425739 00000 n +0003429269 00000 n +0003429521 00000 n +0003429668 00000 n +0003429815 00000 n +0003429965 00000 n +0003430115 00000 n +0003430152 00000 n +0003430609 00000 n +0003430659 00000 n +0003430905 00000 n +0003432184 00000 n +0003432315 00000 n +0003433565 00000 n +0003433822 00000 n +0003433859 00000 n +0003442929 00000 n +0003442979 00000 n +0003443154 00000 n +0003443405 00000 n +0003443536 00000 n +0003446217 00000 n +0003446364 00000 n +0003446511 00000 n +0003446661 00000 n +0003446811 00000 n +0003446848 00000 n +0003446898 00000 n +0003446976 00000 n +0003447631 00000 n +0003447762 00000 n +0003451702 00000 n +0003451959 00000 n +0003452106 00000 n +0003452253 00000 n +0003452426 00000 n +0003452662 00000 n +0003452699 00000 n +0003453650 00000 n +0003453700 00000 n +0003453793 00000 n +0003454458 00000 n +0003454557 00000 n +0003456646 00000 n +0003456777 00000 n +0003457910 00000 n +0003458167 00000 n +0003458204 00000 n +0003464339 00000 n +0003464389 00000 n +0003464453 00000 n +0003464704 00000 n +0003464835 00000 n +0003469401 00000 n +0003469548 00000 n +0003469695 00000 n +0003469846 00000 n +0003469997 00000 n +0003470034 00000 n +0003470084 00000 n +0003470134 00000 n +0003470755 00000 n +0003470886 00000 n +0003471738 00000 n +0003471990 00000 n +0003826450 00000 n +0003826527 00000 n +0003828816 00000 n +0003828891 00000 n +0003829048 00000 n +0003829140 00000 n +0003829282 00000 n +0003829452 00000 n +0003829715 00000 n +0003829971 00000 n +0003830008 00000 n +0003830894 00000 n +0003830944 00000 n +0003831023 00000 n +0003831242 00000 n +0003831373 00000 n +0003833121 00000 n +0003833158 00000 n +0003833208 00000 n +0003833258 00000 n +0003833493 00000 n +0003833624 00000 n +0003838188 00000 n +0003838339 00000 n +0003838490 00000 n +0003838527 00000 n +0003838577 00000 n +0003838641 00000 n +0003838860 00000 n +0003838991 00000 n +0003845191 00000 n +0003845228 00000 n +0003845278 00000 n +0003845342 00000 n +0003845577 00000 n +0003845708 00000 n +0003851493 00000 n +0003851640 00000 n +0003851787 00000 n +0003851824 00000 n +0003851874 00000 n +0003851965 00000 n +0003852424 00000 n +0003852555 00000 n +0003858395 00000 n +0003858540 00000 n +0003858685 00000 n +0003858830 00000 n +0003858975 00000 n +0003859168 00000 n +0003859361 00000 n +0003859510 00000 n +0003859659 00000 n +0003859807 00000 n +0003859955 00000 n +0003860103 00000 n +0003860251 00000 n +0003860429 00000 n +0003860607 00000 n +0003860833 00000 n +0003861011 00000 n +0003861189 00000 n +0003861415 00000 n +0003861618 00000 n +0003861821 00000 n +0003862047 00000 n +0003862250 00000 n +0003862453 00000 n +0003862679 00000 n +0003862851 00000 n +0003863023 00000 n +0003863206 00000 n +0003863389 00000 n +0003863574 00000 n +0003863759 00000 n +0003863796 00000 n +0003863846 00000 n +0003863923 00000 n +0003864238 00000 n +0003864369 00000 n +0003865005 00000 n +0003865189 00000 n +0003865373 00000 n +0003865566 00000 n +0003865750 00000 n +0003865934 00000 n +0003866127 00000 n +0003866291 00000 n +0003866455 00000 n +0003866648 00000 n +0003866812 00000 n +0003866976 00000 n +0003867169 00000 n +0003867206 00000 n +0003867256 00000 n +0003867319 00000 n +0003867801 00000 n +0003868178 00000 n +0003868398 00000 n +0003868638 00000 n +0003869612 00000 n +0003871989 00000 n +0003872334 00000 n +0003872557 00000 n +0003872842 00000 n +0003873446 00000 n +0003883058 00000 n +0003883129 00000 n +0003883197 00000 n +0003883265 00000 n +0003883330 00000 n +0003883394 00000 n +0003883459 00000 n +0003883528 00000 n +0003883594 00000 n +0003883660 00000 n +0003883726 00000 n +0003883792 00000 n +0003883861 00000 n +0003883926 00000 n +0003883992 00000 n +0003884058 00000 n +0003884123 00000 n +0003884192 00000 n +0003884258 00000 n +0003884324 00000 n +0003884390 00000 n +0003884459 00000 n +0003884525 00000 n +0003884591 00000 n +0003884657 00000 n +0003884726 00000 n +0003884792 00000 n +0003884858 00000 n +0003884924 00000 n +0003884990 00000 n +0003885056 00000 n +0003885126 00000 n +0003885193 00000 n +0003885260 00000 n +0003885327 00000 n +0003885394 00000 n +0003885461 00000 n +0003885528 00000 n +0003885595 00000 n +0003885662 00000 n +0003885729 00000 n +0003885795 00000 n +0003885862 00000 n +0003885929 00000 n +0003885996 00000 n +0003886066 00000 n +0003886133 00000 n +0003886199 00000 n +0003886265 00000 n +0003886332 00000 n +0003886399 00000 n +0003886466 00000 n +0003886532 00000 n +0003886599 00000 n +0003886666 00000 n +0003886733 00000 n +0003886800 00000 n +0003886867 00000 n +0003886934 00000 n +0003887001 00000 n +0003887068 00000 n +0003887135 00000 n +0003887205 00000 n +0003887272 00000 n +0003887339 00000 n +0003887406 00000 n +0003887473 00000 n +0003887540 00000 n +0003887606 00000 n +0003887672 00000 n +0003887739 00000 n +0003887806 00000 n +0003887873 00000 n +0003887939 00000 n +0003888005 00000 n +0003888072 00000 n +0003888139 00000 n +0003888206 00000 n +0003888272 00000 n +0003888339 00000 n +0003888406 00000 n +0003888473 00000 n +0003888539 00000 n +0003888605 00000 n +0003888672 00000 n +0003888739 00000 n +0003888806 00000 n +0003888873 00000 n +0003888940 00000 n +0003889007 00000 n +0003889074 00000 n +0003889141 00000 n +0003889208 00000 n +0003889275 00000 n +0003889342 00000 n +0003889409 00000 n +0003889476 00000 n +0003889542 00000 n +0003889609 00000 n +0003889676 00000 n +0003889743 00000 n +0003889810 00000 n +0003889877 00000 n +0003889944 00000 n +0003890010 00000 n +0003890077 00000 n +0003890144 00000 n +0003890211 00000 n +0003890278 00000 n +0003890345 00000 n +0003890412 00000 n +0003890479 00000 n +0003890546 00000 n +0003890613 00000 n +0003890680 00000 n +0003890747 00000 n +0003890814 00000 n +0003890881 00000 n +0003890948 00000 n +0003891018 00000 n +0003891085 00000 n +0003891152 00000 n +0003891219 00000 n +0003891286 00000 n +0003891350 00000 n +0003891414 00000 n +0003891478 00000 n +0003891544 00000 n +0003891611 00000 n +0003891678 00000 n +0003891745 00000 n +0003891812 00000 n +0003891879 00000 n +0003891946 00000 n +0003892013 00000 n +0003892080 00000 n +0003892147 00000 n +0003892214 00000 n +0003892281 00000 n +0003892348 00000 n +0003892415 00000 n +0003892481 00000 n +0003892548 00000 n +0003892615 00000 n +0003892682 00000 n +0003892749 00000 n +0003892816 00000 n +0003892882 00000 n +0003892948 00000 n +0003893015 00000 n +0003893082 00000 n +0003893149 00000 n +0003893216 00000 n +0003893282 00000 n +0003893349 00000 n +0003893416 00000 n +0003893483 00000 n +0003893550 00000 n +0003893617 00000 n +0003893684 00000 n +0003893751 00000 n +0003893815 00000 n +0003893882 00000 n +0003893949 00000 n +0003894016 00000 n +0003894083 00000 n +0003894150 00000 n +0003894216 00000 n +0003894283 00000 n +0003894350 00000 n +0003894417 00000 n +0003894484 00000 n +0003894551 00000 n +0003894618 00000 n +0003894685 00000 n +0003894752 00000 n +0003894819 00000 n +0003894886 00000 n +0003894953 00000 n +0003895020 00000 n +0003895087 00000 n +0003895154 00000 n +0003895221 00000 n +0003895288 00000 n +0003895355 00000 n +0003895422 00000 n +0003895489 00000 n +0003895556 00000 n +0003895623 00000 n +0003895690 00000 n +0003895757 00000 n +0003895827 00000 n +0003895894 00000 n +0003895961 00000 n +0003896028 00000 n +0003896095 00000 n +0003896162 00000 n +0003896229 00000 n +0003896296 00000 n +0003896363 00000 n +0003896430 00000 n +0003896497 00000 n +0003896564 00000 n +0003896631 00000 n +0003896698 00000 n +0003896765 00000 n +0003896832 00000 n +0003896899 00000 n +0003896966 00000 n +0003897031 00000 n +0003897097 00000 n +0003897164 00000 n +0003897231 00000 n +0003897298 00000 n +0003897363 00000 n +0003897430 00000 n +0003897497 00000 n +0003897564 00000 n +0003897631 00000 n +0003897697 00000 n +0003897764 00000 n +0003897831 00000 n +0003897901 00000 n +0003897968 00000 n +0003898035 00000 n +0003898101 00000 n +0003898167 00000 n +0003898234 00000 n +0003898301 00000 n +0003898368 00000 n +0003898434 00000 n +0003898500 00000 n +0003898567 00000 n +0003898634 00000 n +0003898701 00000 n +0003898767 00000 n +0003898834 00000 n +0003898901 00000 n +0003898968 00000 n +0003899035 00000 n +0003899102 00000 n +0003899169 00000 n +0003899236 00000 n +0003899300 00000 n +0003899367 00000 n +0003899434 00000 n +0003899501 00000 n +0003899568 00000 n +0003899635 00000 n +0003899701 00000 n +0003899768 00000 n +0003899835 00000 n +0003899902 00000 n +0003899969 00000 n +0003900036 00000 n +0003900103 00000 n +0003900170 00000 n +0003900237 00000 n +0003900304 00000 n +0003900371 00000 n +0003900438 00000 n +0003900505 00000 n +0003900572 00000 n +0003900639 00000 n +0003900706 00000 n +0003900773 00000 n +0003900839 00000 n +0003900905 00000 n +0003900972 00000 n +0003901039 00000 n +0003901106 00000 n +0003901172 00000 n +0003901238 00000 n +0003901305 00000 n +0003901372 00000 n +0003901439 00000 n +0003901505 00000 n +0003901572 00000 n +0003901639 00000 n +0003901706 00000 n +0003901773 00000 n +0003901840 00000 n +0003901907 00000 n +0003901974 00000 n +0003902038 00000 n +0003902105 00000 n +0003902172 00000 n +0003902242 00000 n +0003902309 00000 n +0003902376 00000 n +0003902442 00000 n +0003902508 00000 n +0003902575 00000 n +0003902642 00000 n +0003902709 00000 n +0003902775 00000 n +0003902841 00000 n +0003902908 00000 n +0003902975 00000 n +0003903042 00000 n +0003903108 00000 n +0003903175 00000 n +0003903242 00000 n +0003903309 00000 n +0003903376 00000 n +0003903443 00000 n +0003903510 00000 n +0003903577 00000 n +0003903641 00000 n +0003903708 00000 n +0003903775 00000 n +0003903842 00000 n +0003903909 00000 n +0003903976 00000 n +0003904042 00000 n +0003904109 00000 n +0003904176 00000 n +0003904243 00000 n +0003904310 00000 n +0003904377 00000 n +0003904444 00000 n +0003904511 00000 n +0003904578 00000 n +0003904645 00000 n +0003904712 00000 n +0003904779 00000 n +0003904846 00000 n +0003904913 00000 n +0003904980 00000 n +0003905047 00000 n +0003905114 00000 n +0003905181 00000 n +0003905248 00000 n +0003905315 00000 n +0003905382 00000 n +0003905449 00000 n +0003905516 00000 n +0003905583 00000 n +0003905650 00000 n +0003905717 00000 n +0003905784 00000 n +0003905851 00000 n +0003905918 00000 n +0003905985 00000 n +0003906052 00000 n +0003906119 00000 n +0003906186 00000 n +0003906250 00000 n +0003906314 00000 n +0003906378 00000 n +0003906445 00000 n +0003906512 00000 n +0003906579 00000 n +0003906646 00000 n +0003906713 00000 n +0003906780 00000 n +0003906847 00000 n +0003906914 00000 n +0003906981 00000 n +0003907048 00000 n +0003907115 00000 n +0003907182 00000 n +0003907248 00000 n +0003907314 00000 n +0003907384 00000 n +0003907451 00000 n +0003907518 00000 n +0003907585 00000 n +0003907652 00000 n +0003907719 00000 n +0003907786 00000 n +0003907853 00000 n +0003907920 00000 n +0003907990 00000 n +0003908057 00000 n +0003908124 00000 n +0003908191 00000 n +0003908258 00000 n +0003908328 00000 n +0003908395 00000 n +0003908462 00000 n +0003908528 00000 n +0003908595 00000 n +0003908662 00000 n +0003908729 00000 n +0003908796 00000 n +0003908863 00000 n +0003908930 00000 n +0003908997 00000 n +0003909064 00000 n +0003909131 00000 n +0003909198 00000 n +0003909265 00000 n +0003909304 00000 n +0003909334 00000 n +trailer << /Size 720 /ID [<8f5d7594143fc0f39e284d12721c4b7d><41de6486a628b25d0e1363fe74092ccc>] >> startxref 216 %%EOF diff --git a/macros/latex/contrib/animate/animate.sty b/macros/latex/contrib/animate/animate.sty index c43aa7ef75..47c4d19d6f 100644 --- a/macros/latex/contrib/animate/animate.sty +++ b/macros/latex/contrib/animate/animate.sty @@ -13,7 +13,7 @@ \NeedsTeXFormat{LaTeX2e} -\def\@anim@version{2019/11/27} +\def\@anim@version{2019/12/03} \ProvidesPackage{animate} [\@anim@version\space PDF & SVG animations from files and inline graphics] @@ -84,8 +84,7 @@ % store result into macro given as #3 \ifpdf %pdflatex/lualatex \def\@anim@getpagecount#1#2#3{% - \edef\@anim@tempfilename{\noexpand\unquote@name{#1.#2}}% - \pdfximage page 1 {\@anim@tempfilename}\xdef#3{\the\pdflastximagepages}% + \pdfximage page 1 {#1.#2}\xdef#3{\the\pdflastximagepages}% } \else \if@anim@xetex @@ -1374,7 +1373,7 @@ \fi %determines file type of the sequence -\def\zap@finalspace#1 \@nil{#1} +\def\zap@finalspace#1 \@nil{\unquote@name{#1}} \ifpdf \def\@anim@getpath#1#2{% #2: empty | user provided file extension \ifx\@empty#2\@empty% diff --git a/macros/latex/contrib/animate/animate.tex b/macros/latex/contrib/animate/animate.tex index 532272fbd9..0a178a58f4 100644 --- a/macros/latex/contrib/animate/animate.tex +++ b/macros/latex/contrib/animate/animate.tex @@ -6,7 +6,6 @@ % http://mirrors.ctan.org/macros/latex/base/lppl.txt % for the details of that license. % -\listfiles \documentclass[a4paper]{article} \frenchspacing \usepackage[buttonbg=0.9]{animate} diff --git a/macros/latex/contrib/biblatex-contrib/archaeologie/README.md b/macros/latex/contrib/biblatex-contrib/archaeologie/README.md index 406a03a246..a2c6723228 100644 --- a/macros/latex/contrib/biblatex-contrib/archaeologie/README.md +++ b/macros/latex/contrib/biblatex-contrib/archaeologie/README.md @@ -4,7 +4,7 @@ bibLaTeX-__archaeologie__ Bundle bibLaTeX-style for archaeologists, historians and philologists. --- -Copyright (c) 2016-2019 Lukas C. Bossert +Copyright (c) 2015-2019 Lukas C. Bossert Copyright (c) 2015 Lukas C. Bossert | Johannes Friedl @@ -95,6 +95,11 @@ This bundle is constantly updated. For hints, errors or suggestions use the GitH All notable changes to this project will be documented in the [README.md](https://github.com/LukasCBossert/biblatex-archaeologie/blob/master/README.md). This project **does not** adhere to [Semantic Versioning](http://semver.org/). The markdown syntax is inspired by the conventions proposed by [keepachangelog.com](http://keepachangelog.com/). +## v2.4.3 (2019-12-03) +### *Fixed* +* Spelling error in Italian language for Dresden and München. Thanks to Matteo Turri. (Feedback always welcome!) +* Some code refactoring for better literate programming. + ## v2.4.2 (2019-05-01) ### *Fixed* diff --git a/macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.dtx b/macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.dtx index c75a565e3e..bf0085f0e0 100644 --- a/macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.dtx +++ b/macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.dtx @@ -1,7 +1,7 @@ %\iffalse %<*internal|bbx|cbx|dbx|lbx> -\def\archDate{2019/05/01} -\def\archVersion{2.4.2} +\def\archDate{2019/12/03} +\def\archVersion{2.4.3} % %<*internal> \iffalse @@ -64,7 +64,7 @@ bibLaTeX-__archaeologie__ Bundle bibLaTeX-style for archaeologists, historians and philologists. --- -Copyright (c) 2016-2019 Lukas C. Bossert +Copyright (c) 2015-2019 Lukas C. Bossert Copyright (c) 2015 Lukas C. Bossert | Johannes Friedl @@ -1295,8 +1295,8 @@ enhanced, colframe=yellow!20!black, sharp corners,rounded corners=southeast,arc is angular,arc=3mm, underlay={% - \path[fill=tcbcol@back!80!black] ([yshift=3mm]interior.south east)--++(-0.4,-0.1)--++(0.1,-0.2); - \path[draw=tcbcol@frame,shorten <=-0.05mm,shorten >=-0.05mm] ([yshift=3mm]interior.south east)--++(-0.4,-0.1)--++(0.1,-0.2); + \path[fill=white!80!black] ([yshift=3mm]interior.south east)--++(-0.4,-0.1)--++(0.1,-0.2); + \path[draw=black,shorten <=-0.05mm,shorten >=-0.05mm] ([yshift=3mm]interior.south east)--++(-0.4,-0.1)--++(0.1,-0.2); \path[fill=red!50!black,draw=none] (interior.south west) rectangle node[white]{\Huge\bfseries !} ([xshift=4mm]interior.north west); }, drop fuzzy shadow,#1 @@ -4811,7 +4811,7 @@ Lexikon-der-Technik,Bergmann2015,LTUR} \item[Brussels] <-- English\newline German: Brüssel\newline Italian: Bruxelles\newline Spanish: Bruselas\newline French: Bruxelles \item[Cologne] <-- English\newline German: Köln\newline Italian: Colonia\newline Spanish: Colonia\newline French: Cologne \item[Copenhagen] <-- English\newline German: Kopenhagen\newline Italian: Copenaghen\newline Spanish: Copenhague\newline French: Copenhague -\item[Dresden] <-- English\newline German: Dresden\newline Italian: Desda\newline Spanish: Dresde\newline French: Dresde +\item[Dresden] <-- English\newline German: Dresden\newline Italian: Dresda\newline Spanish: Dresde\newline French: Dresde \item[Florence] <-- English\newline German: Florenz\newline Italian: Firenze\newline Spanish: Firenze\newline French: Florence \item[Frankfurt] <-- English\newline German: Frankfurt am Main\newline Italian: Francoforte sul Meno\newline Spanish: Francfort del Meno\newline French: Francfort-sur-le-Main \item[Freiburg] <-- English\newline German: Freiburg \parentext{i. Breisgau}\newline Italian: Friburgo in Brisgovia\newline Spanish: Friburgo de Brisgovia\newline French: Fribourg-en-Brisgau @@ -4822,7 +4822,7 @@ Lexikon-der-Technik,Bergmann2015,LTUR} \item[Louvain] <-- English\newline German: Löwen\newline Italian: Lovanio\newline Spanish: Lovaina\newline French: Louvain \item[Mainz] <-- English\newline German: Mainz am Rhein\newline Italian: Magonza\newline Spanish: Maguncia\newline French: Mayence \item[Milano] <-- English\newline German: Mailand\newline Italian: Milano\newline Spanish: Milán\newline French: Milan -\item[Munich] <-- English\newline German: München\newline Italian: Monaco \parentext{di Bavaria}\newline Spanish: Múnich\newline French: Munich +\item[Munich] <-- English\newline German: München\newline Italian: Monaco di Baviera\newline Spanish: Múnich\newline French: Munich \item[Naples] <-- English\newline German: Neapel\newline Italian: Napoli\newline Spanish: Napoli\newline French: Naples \item[Paris] <-- English\newline German: Paris\newline Italian: Parigi\newline Spanish: París\newline French: Paris \item[Regensburg] <-- English\newline German: Regensburg\newline Italian: Ratisbona\newline Spanish: Ratisbona\newline French: Ratisbonne @@ -8106,6 +8106,12 @@ To see the long forms of journal titles or series you have to switch on the opti % ██ ██████ ██████ ██████ ██████ ██ ██ ███████ ██ ████ ██ % */ %<*readme> +## v2.4.3 (2019-12-03) +### *Fixed* +* Spelling error in Italian language for Dresden and München. Thanks to Matteo Turri. (Feedback always welcome!) +* Some code refactoring for better literate programming. + + ## v2.4.2 (2019-05-01) ### *Fixed* @@ -8287,7 +8293,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. useprefix=true,% mincrossrefs=1,% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbool{bbx:edby} \newbool{bbx:width} \newbool{bbx:yearseries} @@ -8316,7 +8324,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \newtoggle{bbx:arachne} \setlength{\biblabelsep}{0em} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyOption{lstabbrv}[true]{% \csuse{bool#1}{bib:lstabbrv}% \addbibresource{archaeologie-lstabbrv.bib}} @@ -8349,7 +8359,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. lstlocations,% lstpublishers,% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyOption[string]{biblabel}{% \ifcsundef{archblx@biblabel@#1} {\PackageError{biblatex-archaeologie} @@ -8392,11 +8404,15 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \ifstrequal{#1}{true}% {\AtEveryCite{\renewcommand*{\mkbibnamefamily}[1]{\textsc{##1}}}}% {}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \ExecuteBibliographyOptions{% autolang=hyphen,% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareEntryOption{ancient}[true]{\csuse{bool#1}{cbx:ancient}} \DeclareEntryOption{frgancient}[true]{% \ifstrequal{#1}{true}% @@ -8449,7 +8465,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {Weitere Informationen unter \url{http://biblatex-archaeologie.de}} {For further information see \url{http://biblatex-archaeologie.de}} } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareFieldFormat*{title}{#1\isdot} \DeclareFieldFormat{subtitle}{#1} \DeclareFieldFormat{booktitle}{#1} @@ -8509,12 +8527,16 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \ifhyperref% {\href{https://arachne.dainst.org/entity/#1}{\nolinkurl{#1}}}% {\nolinkurl{#1}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareFieldAlias{zenon}{eprint:zenon} \DeclareFieldAlias{jstor}{eprint:jstor} \DeclareFieldAlias{urn}{eprint:urn} \DeclareFieldAlias{arachne}{eprint:arachne} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareRedundantLanguages{german}{german,ngerman,austrian,naustrian} \DeclareRedundantLanguages{english,american}{english,american,british,% canadian,australian,newzealand,USenglish,UKenglish} @@ -8524,7 +8546,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \DeclareLanguageMapping{italian}{italian-archaeologie} \DeclareLanguageMapping{spanish}{spanish-archaeologie} %\DeclareLanguageMappingSuffix{-archaeologie} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \NewBibliographyString{origtitle} \NewBibliographyString{firstprint} \NewBibliographyString{reviewof} @@ -8541,7 +8565,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \NewBibliographyString{subvoce} \NewBibliographyString{owntranslation} \NewBibliographyString{magthesis} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewcommand*{\sqspace}{\addnbthinspace} \renewcommand*{\subtitlepunct}{\addperiod\addspace} \renewcommand*{\intitlepunct}{\addcolon\addspace} @@ -8785,7 +8811,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \enddateuncertainprint \dateeraprint{#1endyear}}}}}% \endgroup} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyAlias{collection}{book} \DeclareBibliographyAlias{reference}{book} \DeclareBibliographyAlias{institution}{school} @@ -8793,8 +8821,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \DeclareBibliographyAlias{incollection}{inbook} \DeclareBibliographyAlias{manual}{book} \DeclareBibliographyAlias{mathesis}{thesis} -%----------------------- - +% \end{macrocode} +% +% \begin{macrocode} \DeclareSortingTemplate{ndymdt}{ \sort{ \field{presort} @@ -8835,10 +8864,14 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \literal{9999} } } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareSortingTemplate{shortseries}{\sort{\field{shortseries}}} \DeclareSortingTemplate{shortjournal}{\sort{\field{shortjournal}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \defbibcheck{shortseries}{% \iffieldundef{shortseries}% {\skipentry}% @@ -8859,7 +8892,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\skipentry}% {\savefieldcs{journaltitle}{\strfield{journaltitle}}}}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareNameAlias{name:initials}{default} \DeclareNameAlias{author}{name:initials} \DeclareNameAlias{editor}{author} @@ -8869,13 +8904,17 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \DeclareNameAlias{bycommentator}{author} \DeclareNameAlias{bookauthor}{author} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareListFormat{location}{% #1\ifthenelse{\value{listcount}<\value{liststop}}% {\locationdelim}% {}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \AtEveryBibitem{% \iffieldequalstr{relatedtype}{translationof}% {\savename{translator}{\savedrelatedtranslator}% @@ -8887,10 +8926,12 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {}% {\clearname{translator}% \clearfield{origtitle}}} -%----------------------- +% \end{macrocode} +% %% provide macros to deal with intranslator, withincommentator, withinannotator, withinintroduction, withinforeword, withinafterword %% that is fields referring to the title work and not the booktitle work in inbook etc. works % these macros are essentially the same as the standard macros without the "in" +% \begin{macrocode} \newbibmacro*{byineditor+others}{% \ifnameundef{ineditor} {} @@ -8900,7 +8941,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \clearname{ineditor}% \newunit}% \usebibmacro{byintranslator+others}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{byintranslator+others}{% \ifnameundef{intranslator} {} @@ -8910,42 +8953,54 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \clearname{intranslator}% \newunit}% \usebibmacro{withinothers}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{withincommentator}{% \ifnameundef{incommentator} {} {\bibstring{withcommentator}% \setunit{\addspace}% \printnames[author]{incommentator}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{withinannotator}{% \ifnameundef{inannotator} {} {\bibstring{withannotator}% \setunit{\addspace}% \printnames[author]{inannotator}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{withinintroduction}{% \ifnameundef{inintroduction} {} {\bibstring{withintroduction}% \setunit{\addspace}% \printnames[author]{inintroduction}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{withinforeword}{% \ifnameundef{inforeword} {} {\bibstring{withforeword}% \setunit{\addspace}% \printnames[author]{inforeword}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{withinafterword}{% \ifnameundef{inafterword} {} {\bibstring{withafterword}% \setunit{\addspace}% \printnames[author]{inafterword}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{withinothers}{% \usebibmacro{withincommentator}% \clearname{incommentator}% @@ -8961,7 +9016,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \newunit \usebibmacro{withinafterword}% \clearname{inafterword}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro{labelwidthbib}{% \begingroup \DeclareFieldFormat{bibhyperref}{##1}% @@ -8971,14 +9028,18 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \printtext[bibcitelabel]{\usebibmacro{cite}}% \endgroup } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro{kicklabel}{% \sbox\arch@labelbox{\usebibmacro{labelwidthbib}}% \global\togglefalse{blx@insert}% \ifdim1.1\wd\arch@labelbox>% \labwidthsameline\leavevmode\newline \fi} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro{labelwidthfield}[1]{% \begingroup \DeclareFieldFormat{bibhyperref}{##1}% @@ -8987,14 +9048,18 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \defcounter{maxnames}{\blx@maxcitenames}% \printfield{#1}% \endgroup} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro{kicklabelfield}[1]{% \sbox\arch@labelbox{\usebibmacro{labelwidthfield}{#1}}% \global\togglefalse{blx@insert}% \ifdim.9\wd\arch@labelbox>% \labwidthsameline\leavevmode\newline \fi} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{pageref}{% \iflistundef{pageref} {} @@ -9004,7 +9069,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\bibstring{backrefpages}\ppspace} {\bibstring{backrefpage}\ppspace}% \printlist[pageref][-\value{listtotal}]{pageref}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{bbx:parunit}{% \ifbibliography{% \setunit{\bibpagerefpunct}\newblock @@ -9013,38 +9080,50 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \setunit{\addcomma\newline\nobreak}}% {\newunit}% } - %----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{eprint}{% \usebibmacro{bbx:parunit}% \iffieldundef{eprinttype}% {\printfield{eprint}}% {\printfield[eprint:\strfield{eprinttype}]{eprint}}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{zenon}{% \iffieldundef{zenon} {}% {\usebibmacro{bbx:parunit}% \printfield{zenon}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{jstor}{% \iffieldundef{jstor} {} {\usebibmacro{bbx:parunit}% \printfield{jstor}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{arachne}{% \iffieldundef{arachne} {} {\usebibmacro{bbx:parunit}% \printfield{arachne}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{urn}{% \iffieldundef{urn} {} {\usebibmacro{bbx:parunit}% \printfield{urn}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{url+urldate}{% \usebibmacro{bbx:parunit}% \iffieldundef{url} @@ -9052,7 +9131,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\printfield{url}% \setunit*{\addspace}% \printtext{\printurldate}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{doi+eprint+url}{% \usebibmacro{bbx:parunit}% \iftoggle{bbx:doi}{\printfield{doi}}{}% @@ -9063,7 +9144,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \iftoggle{bbx:zenon}{\usebibmacro{zenon}}{}% \iftoggle{bbx:url}{\usebibmacro{url+urldate}}{}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{editor}{% \ifboolexpr{% test \ifuseeditor % @@ -9074,11 +9157,15 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \printtext[editortype]{\bibstring{editor}}% \clearname{editor}}% {}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{bookauthor}{% \printnames{bookauthor}% \newunit} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareLabeldate{% \field{date} \field{year} @@ -9088,14 +9175,18 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \field{eventdate} \literal{nodate} } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{series}{% \ifboolexpr{test {\iffieldundef{shortseries}} % or bool {bbx:noabbrv}}% {\printtext[seriestitle]{\printfield[titlecase]{series}}}% {\printfield{shortseries}}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{series+number}{% \iffieldundef{series}% {}% @@ -9105,7 +9196,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \ifbool{bbx:yearseries}% {\newunit}% {\setunit{\addspace}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{journal}{% \ifboolexpr{test {\iffieldundef{shortjournal}}% or bool {bbx:noabbrv}}% @@ -9114,7 +9207,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \setunit{\subtitlepunct}% \printfield[titlecase]{journalsubtitle}}}% {\printfield{shortjournal}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro{journal+number+year}{% \usebibmacro{journal}% \setunit{\jourvoldelim}% @@ -9127,29 +9222,41 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \printfield{number}}% \newunit}% \usebibmacro{pubstate+year}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro{pubstate+year}{% \iffieldundef{pubstate}% {\usebibmacro{date}}% {\printfield{pubstate}}} - %----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{pages}{% \printfield{pages}% \isdot} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro{translation}{% \printfield{origtitle}% \setunit{\addcomma\space}% \usebibmacro{byeditor+others}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro{intranslation}{% \printfield{origtitle}% \setunit{\addcomma\space}% \usebibmacro{byineditor+others}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{related:reviewof}[1]{% \usebibmacro*{related:default}{#1}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{related:translationof}[1]{% \entrydata*{#1}{% \restorename{savedtranslator}{\savedrelatedtranslator}% @@ -9161,7 +9268,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \bibstring{bytranslator}%keine Sprache ausgegeben? \setunit{\addspace}% \printnames{savedtranslator}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{inreference:title+author}{% \iffieldundef{title}% {}% @@ -9178,7 +9287,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \ifbool{bbx:bibfullname} {\printnames[author]{labelname}} {\printnames[name:initials]{labelname}}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{maintitle+title+volumes}{% \iffieldsequal{maintitle}{title}% {\clearfield{maintitle}% @@ -9197,14 +9308,17 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\usebibmacro{translation}}% {\usebibmacro{volume}}}% \newunit} -%----------------------- -%https://tex.stackexchange.com/a/15014/35864 +% \end{macrocode} +% \url{https://tex.stackexchange.com/a/15014/35864} +% \begin{macrocode} \newenvironment{fullexpotherlanguage}[1]{% \begingroup \edef\temp{\endgroup\noexpand\otherlanguage{#1}}% \temp }{\endotherlanguage} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro{event+venue+date}{% \setunit{\adddot\addspace}% \printfield{eventtitle}% @@ -9222,7 +9336,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\printeventdate} \newunit% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{title}{% \ifboolexpr{% test {\iffieldundef{title}}% @@ -9238,7 +9354,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\setunit*{\subtitlepunct}% \printfield{titleaddon}}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{booktitle}{% \ifboolexpr{% test {\iffieldundef{booktitle}}% @@ -9252,7 +9370,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \setunit{\subtitlepunct}}% \printfield{booktitleaddon}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{maintitle}{% \ifboolexpr{% test {\iffieldundef{maintitle}}% @@ -9266,7 +9386,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \setunit{\subtitlepunct}}% \printfield{maintitleaddon}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{edition}{% \iffieldint{edition}% {\setunit*{\addspace}% @@ -9274,7 +9396,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\newunit \printfield{edition}% \setunit{\addspace}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{location+edition+year}{% \ifboolexpr{% test {\iflistundef{location}}% @@ -9324,17 +9448,23 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \printlist{location}% \setunit*{\addspace}% \usebibmacro{pubstate+year}}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{institution+location+date}{% \printlist{location}% \setunit*{\addspace}% \printlist{institution}% \setunit*{\addspace}% \usebibmacro{pubstate+year}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro{signatur}{% \printfield{note}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{volume}{% \iffieldundef{volume}% {\iffieldundef{volumes}% @@ -9352,7 +9482,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\setunit{\addspace}% \printfield{part}}}% \newunit} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{maintitle+booktitle}{% \iffieldundef{maintitle}% {}% @@ -9363,7 +9495,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \usebibmacro{volume}% \newunit } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{booktitle+volume+editor}{% \ifnameundef{editor}% {\usebibmacro{bookauthor}% @@ -9380,7 +9514,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \usebibmacro{maintitle+booktitle}% \newunit}}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{reftitle}{% \iffieldundef{title}% {}% @@ -9393,30 +9529,40 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {}% {\printfield[brackets]{number}}}}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{shortjournal}{% \printtext[journaltitle]{% \printfield[titlecase]{journaltitle}% \setunit{\subtitlepunct}% \printfield[titlecase]{journalsubtitle}}% \blx@initunit} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{shortseries}{% \printtext[seriestitle]{% \printfield[titlecase]{series}}% \blx@initunit} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareDataInheritance{reference}{inreference}{% \inherit{shorthand}{booktitle}% \noinherit{volumes}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{shorthand}{% \iffieldundef{title}% {\printfield{booktitle}}% {\printfield{title}}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{article}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% @@ -9441,7 +9587,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {}% \usebibmacro{finentry}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{book}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% @@ -9472,7 +9620,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {}% \usebibmacro{finentry}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{thesis}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% @@ -9494,7 +9644,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {}% \usebibmacro{finentry}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{proceedings}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% @@ -9524,7 +9676,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {}% \usebibmacro{finentry}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{inproceedings}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% @@ -9560,7 +9714,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {}% \usebibmacro{finentry}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{talk}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% @@ -9587,7 +9743,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {}% \usebibmacro{finentry}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{inbook}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% @@ -9624,7 +9782,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {}% \usebibmacro{finentry}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{inreference}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% @@ -9643,7 +9803,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \newunit\newblock \usebibmacro{finentry}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyDriver{review}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% @@ -9665,7 +9827,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \newunit\newblock \usebibmacro{finentry}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \defbibenvironment{bibliography}% {\list% {\usebibmacro{labelwidthbib}}% @@ -9678,7 +9842,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \renewcommand*{\makelabel}[1]{##1\hss}}}% {\endlist}% {\item\usebibmacro{kicklabel}} - %----------------------- +% \end{macrocode} +% +% \begin{macrocode} \def\do#1{% \defbibenvironment{#1} {\list% @@ -9694,9 +9860,10 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\item\usebibmacro{kicklabelfield}{#1}}% } \docsvlist{shortjournal,shortseries} - +% \end{macrocode} % this will not be needed in future versions of biblatex, see -% https://github.com/plk/biblatex/commit/9a1f550222e294af5490488093a5e33e10493c63 +% \url{https://github.com/plk/biblatex/commit/9a1f550222e294af5490488093a5e33e10493c63} +% \begin{macrocode} \providecommand*{\ifdateyearsequal}[2]{% \ifboolexpr{ test {\iffieldsequal{#1year}{#2year}} and test {\iffieldsequal{#1dateera}{#2dateera}}}} @@ -9722,12 +9889,13 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. % \fi %\section{Citation (.cbx)} % \begin{macrocode} - \newbool{cbx:yearinparens} \newbool{cbx:seenote} \newbool{cbx:uniqueme} \newbool{cbx:yearinparensoption} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} %\renewcommand*{\multicitedelim}{\addsemicolon\addspace} \newcommand*{\labelyeardelim}{\addspace} %\renewcommand{\textcitedelim}{\addcomma\space} @@ -9791,8 +9959,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \InitializeCitationStyle{% \global\cslet{cbx@bseen@names@\the\c@refsection}\@empty \global\cslet{cbx@fseen@names@\the\c@refsection}\@empty} - -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareBibliographyOption{yearinparens}[true]{% \ifstrequal{#1}{true}% {\DeclareFieldFormat{citeyear}{\mkbibparens{##1}}% @@ -9810,7 +9979,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. Use one of the values 'initials', 'full', 'family', 'firstfulltheninitials' or 'firstfullthenfamily'.}{}}% \def\citeauthorformatVALUE{#1}} \DeclareEntryOption{uniqueme}[true]{\csuse{bool#1}{cbx:uniqueme}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareFieldFormat{citeyear}{#1} \DeclareFieldFormat{prenote}{#1\isdot} \DeclareFieldFormat{postnote}{\mknormrange{#1}} @@ -10020,9 +10191,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. Value 'firstfull' for 'citeauthorformat' is deprecated,\MessageBreak use 'firstfulltheninitials' instead.}% \cbx@arch@citeauthorformat@firstfulltheninitials} - - -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \ExecuteBibliographyOptions{% citetracker=true, idemtracker=true, @@ -10036,7 +10207,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. uniquename=minfull, autocite=footnote, } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{uniqueshorthand}{% \printtext[brackets]{% \ifnameundef{translator} @@ -10046,7 +10219,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\usebibmacro{series}}}% {\printnames[name:family]{intranslator}}}% {\printnames[name:family]{translator}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{citeindex}{% \ifciteindex% {\ifboolexpr{% @@ -10057,7 +10232,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\indexnames{labelname}}}% {}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \renewbibmacro*{postnote}{% \ifboolexpr{ bool{bbx:inreferencesasfullcite} @@ -10073,13 +10250,17 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\setunit{\addspace}% \usebibmacro{cite:frgname}}% {}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{cite:frgname}{% \ifnameundef{shorteditor}% {\printnames[name:family]{editor}}% {\printnames{shorteditor}}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{seenote}{% \ifnameundef{labelname}% {\usebibmacro{cite:label}}% @@ -10091,19 +10272,27 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \addspace% \ref{footref:\thefield{entrykey}}}% \renewcommand{\postnotedelim}{\addspace}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{cite:title}{\printfield{labeltitle}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{cite:origtitle}{% \iffieldundef{origtitle} {\usebibmacro{cite:title}} {\printfield{origtitle}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{cite:year}{% \iffieldundef{labelyear} {} {\printtext[citeyear]{\usebibmacro{cite:labeldate+extradate}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{cite:lexikon}{% \printfield{booktitle}% \setunit{\addspace}% @@ -10116,7 +10305,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\printfield{postnote}}% \usebibmacro{inreference:title+author}% } -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro{cite:seenote}{% \ifboolexpr{bool{cbx:ancient}% or bool{cbx:frgancient}% @@ -10130,7 +10321,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\DeclareNameAlias{sortname}{default}}% {\thefield{entrytype}}% \iffootnote{\label{footref:\thefield{entrykey}}}}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro{cite}{% \ifboolexpr{ bool{bbx:inreferencesasfullcite} @@ -10149,14 +10342,18 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \setunit{\nameyeardelim}}% \usebibmacro{cite:year}}% {\usebibmacro{cite:shorthand}}}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{citeyear}{% \iffieldundef{shorthand}% {\iffieldundef{labelyear}% {\usebibmacro{cite:label}}% {\usebibmacro{cite:labeldate+extradate}}}% {\usebibmacro{cite}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{textcite}{% \ifnameundef{labelname}% {\iffieldundef{shorthand}% @@ -10174,7 +10371,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \global\booltrue{cbx:yearinparens}% \nameyeardelim\bibopenparen}% \usebibmacro{citeyear}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{cite:shorthand}{% \ifbool{cbx:seenote}% {\printtext{\printfield{shorthand}}}% @@ -10184,17 +10383,23 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\setunit*{\addspace}% \usebibmacro*{uniqueshorthand}}% {}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{cite:label}{% \iffieldundef{label}% {\printtext[bibhyperref]{\printfield[citetitle]{labeltitle}}}% {\printtext[bibhyperref]{\printfield{label}}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{cite:labeldate+extradate}{% \iffieldundef{labelyear} {} {\printtext[bibhyperref]{\printlabeldateextra}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \newbibmacro*{textcite:postnote}{% \iffieldundef{postnote}% {\ifbool{cbx:yearinparens}% @@ -10209,21 +10414,27 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \usebibmacro{cite:frgname}% \bibcloseparen}% \bibcloseparen}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand{\cite}% {\usebibmacro{prenote}}% {\usebibmacro{citeindex}% \usebibmacro{cite}}% {\multicitedelim}% {\usebibmacro{postnote}} - %----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand{\footcite}[\mkbibfootnote] {\usebibmacro{prenote}}% {\usebibmacro{citeindex}% \usebibmacro{cite}}% {\multicitedelim}% {\usebibmacro{postnote}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand{\textcite}% {\boolfalse{cbx:yearinparens}% \renewcommand*{\multinamedelim}{\addcomma\space}% @@ -10245,14 +10456,18 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\ifbool{cbx:seenote} {\usebibmacro{postnote}}% {\usebibmacro{textcite:postnote}}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand{\parencite}[\mkbibparens]% {\usebibmacro{prenote}}% {\usebibmacro{citeindex}% \usebibmacro{cite}}% {\multicitedelim}% {\usebibmacro{postnote}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand{\smartcite}[\iffootnote\textnormal\mkbibfootnote] {\usebibmacro{prenote}} {\usebibmacro{citeindex}% @@ -10264,7 +10479,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. test{\ifentrytype{inreference}}} {} {\usebibmacro{postnote}}}% -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand{\fullcite} {\usebibmacro{prenote}} {\usedriver @@ -10272,7 +10489,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\thefield{entrytype}}} {\multicitedelim} {\usebibmacro{postnote}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand{\footfullcite}[\mkbibfootnote] {\usebibmacro{prenote}} {\usedriver @@ -10280,12 +10499,16 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\thefield{entrytype}}} {\multicitedelim} {\usebibmacro{postnote}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareMultiCiteCommand{\cites}{\cite}{\multicitedelim} \DeclareMultiCiteCommand{\parencites}[\mkbibparens]{\parencite}{\multicitedelim} \DeclareMultiCiteCommand{\textcites}{\textcite}{} \DeclareMultiCiteCommand{\smartcites}[\iffootnote\textnormal\mkbibfootnote]{\smartcite}{\multicitedelim} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand{\citeauthor} {\boolfalse{citetracker}% \boolfalse{pagetracker}% @@ -10304,7 +10527,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\printnames[citeauthor]{labelname}}}% {\multicitedelim}% {\usebibmacro{postnote}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand{\citetranslator} {\boolfalse{citetracker}% \boolfalse{pagetracker}% @@ -10333,7 +10558,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\printtext[bibhyperref]{\printnames[citeauthor]{translator}}}}}} {\multicitedelim}% {\usebibmacro{postnote}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand*{\citetranslator} {\boolfalse{citetracker}% \boolfalse{pagetracker}% @@ -10363,7 +10590,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. {\usebibmacro{bytranslator+others}}}}}% {\multicitedelim}% {\usebibmacro{postnote}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand*{\citeauthor} {\boolfalse{citetracker}% \boolfalse{pagetracker}% @@ -10372,7 +10601,9 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. \printnames[][1-1]{labelname}} {\multicitedelim} {\usebibmacro{postnote}} -%----------------------- +% \end{macrocode} +% +% \begin{macrocode} \DeclareCiteCommand{\citetitle} {\boolfalse{citetracker}% \boolfalse{pagetracker}% @@ -10840,7 +11071,7 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. @String{Brussels= {\iflanguage{english}{Brussels}{\iflanguage{italian}{Bruxelles}{\iflanguage{french}{Bruxelles}{\iflanguage{spanish}{Bruselas}{\iflanguage{ngerman}{Brüssel}{\iflanguage{german}{Brüssel}{}}}}}}}} @String{Cologne= {\iflanguage{english}{Cologne}{\iflanguage{italian}{Colonia}{\iflanguage{french}{Cologne}{\iflanguage{spanish}{Colonia}{\iflanguage{ngerman}{Köln}{\iflanguage{german}{Köln}{}}}}}}}} @String{Copenhagen= {\iflanguage{english}{Copenhagen}{\iflanguage{italian}{Copenaghen}{\iflanguage{french}{Copenhague}{\iflanguage{spanish}{Copenhague}{\iflanguage{ngerman}{Kopenhagen}{\iflanguage{german}{Kopenhagen}{}}}}}}}} -@String{Dresden= {\iflanguage{english}{Dresden}{\iflanguage{italian}{Desda}{\iflanguage{french}{Dresde}{\iflanguage{spanish}{Dresde}{\iflanguage{ngerman}{Dresden}{\iflanguage{german}{Dresden}{}}}}}}}} +@String{Dresden= {\iflanguage{english}{Dresden}{\iflanguage{italian}{Dresda}{\iflanguage{french}{Dresde}{\iflanguage{spanish}{Dresde}{\iflanguage{ngerman}{Dresden}{\iflanguage{german}{Dresden}{}}}}}}}} @String{Florence= {\iflanguage{english}{Florence}{\iflanguage{italian}{Firenze}{\iflanguage{french}{Florence}{\iflanguage{spanish}{Firenze}{\iflanguage{ngerman}{Florenz}{\iflanguage{german}{Florenz}{}}}}}}}} @String{Frankfurt= {\iflanguage{english}{Frankfurt}{\iflanguage{italian}{Francoforte sul Meno}{\iflanguage{french}{Francfort-sur-le-Main}{\iflanguage{spanish}{Francfort del Meno}{\iflanguage{ngerman}{Frankfurt am Main}{\iflanguage{german}{Frankfurt am Main}{}}}}}}}} @String{Freiburg= {\iflanguage{english}{Freiburg}{\iflanguage{italian}{Friburgo in Brisgovia}{\iflanguage{french}{Fribourg-en-Brisgau}{\iflanguage{spanish}{Friburgo de Brisgovia}{\iflanguage{ngerman}{Freiburg \parentext{i. Breisgau}}{\iflanguage{german}{Freiburg \parentext{i. Breisgau}}{}}}}}}}} @@ -10851,7 +11082,7 @@ This update is also due to compatibility with `biblatex 3.8a`/`biber 2.8`. @String{Louvain= {\iflanguage{english}{Louvain}{\iflanguage{italian}{Lovanio}{\iflanguage{french}{Louvain}{\iflanguage{spanish}{Lovaina}{\iflanguage{ngerman}{Löwen}{\iflanguage{german}{Löwen}{}}}}}}}} @String{Mainz= {\iflanguage{english}{Mainz}{\iflanguage{italian}{Magonza}{\iflanguage{french}{Mayence}{\iflanguage{spanish}{Maguncia}{\iflanguage{ngerman}{Mainz am Rhein}{\iflanguage{german}{Mainz am Rhein}{}}}}}}}} @String{Milano= {\iflanguage{english}{Milano}{\iflanguage{italian}{Milano}{\iflanguage{french}{Milan}{\iflanguage{spanish}{Milán}{\iflanguage{ngerman}{Mailand}{\iflanguage{german}{Mailand}{}}}}}}}} -@String{Munich= {\iflanguage{english}{Munich}{\iflanguage{italian}{Monaco \parentext{di Bavaria}}{\iflanguage{french}{Munich}{\iflanguage{spanish}{Múnich}{\iflanguage{ngerman}{München}{\iflanguage{german}{München}{}}}}}}}} +@String{Munich= {\iflanguage{english}{Munich}{\iflanguage{italian}{Monaco di Baviera}{\iflanguage{french}{Munich}{\iflanguage{spanish}{Múnich}{\iflanguage{ngerman}{München}{\iflanguage{german}{München}{}}}}}}}} @String{Naples= {\iflanguage{english}{Naples}{\iflanguage{italian}{Napoli}{\iflanguage{french}{Naples}{\iflanguage{spanish}{Napoli}{\iflanguage{ngerman}{Neapel}{\iflanguage{german}{Neapel}{}}}}}}}} @String{Paris= {\iflanguage{english}{Paris}{\iflanguage{italian}{Parigi}{\iflanguage{french}{Paris}{\iflanguage{spanish}{París}{\iflanguage{ngerman}{Paris}{\iflanguage{german}{Paris}{}}}}}}}} @String{Regensburg= {\iflanguage{english}{Regensburg}{\iflanguage{italian}{Ratisbona}{\iflanguage{french}{Ratisbonne}{\iflanguage{spanish}{Ratisbona}{\iflanguage{ngerman}{Regensburg}{\iflanguage{german}{Regensburg}{}}}}}}}} diff --git a/macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.pdf b/macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.pdf index f67d70e087..2f58e1ab8a 100644 Binary files a/macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.pdf and b/macros/latex/contrib/biblatex-contrib/archaeologie/archaeologie.pdf differ diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-acs.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-acs.pdf index 891df569dc..5ecab29373 100644 Binary files a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-acs.pdf and b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-acs.pdf differ diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-angew.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-angew.pdf index 795e8c44c3..b97d33fe73 100644 Binary files a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-angew.pdf and b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-angew.pdf differ diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-biochem.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-biochem.pdf index b7b990ff4b..3f8f25a6de 100644 Binary files a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-biochem.pdf and b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-biochem.pdf differ diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-rsc.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-rsc.pdf index fbb7150642..284a115e8f 100644 Binary files a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-rsc.pdf and b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem-rsc.pdf differ diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.pdf index c5316fb35c..c36dc44779 100644 Binary files a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.pdf and b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.pdf differ diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.tex b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.tex index 8c9690f39a..5d91e6c829 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.tex +++ b/macros/latex/contrib/biblatex-contrib/biblatex-chem/biblatex-chem.tex @@ -21,8 +21,8 @@ {\texttt{joseph.wright@morningstar2.co.uk}}}} \title{\pkg{biblatex-chem} -- A set of \pkg{biblatex} implementations of chemistry-related bibliography styles% - \footnote{This file describes v1.1x, last revised 2019/08/24.}} -\date{Released 2019/08/24} + \footnote{This file describes v1.1y, last revised 2019/12/03.}} +\date{Released 2019/12/03} \providecommand*{\opt}[1]{\texttt{#1}} \providecommand*{\pkg}[1]{\textsf{#1}} @@ -230,6 +230,7 @@ be sent by e-mail to \changes{v1.1w}{2018/10/18}{Bring \texttt{related} support in line with \pkg{biblatex} core} \changes{v1.1x}{2019-08-24}{Better formatting when article titles are included} +\changes{v1.1y}{2019-12-03}{Add a missing space} \PrintChanges diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.bbx index 3d33792c48..47dfebd4b2 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.bbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.bbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{chem-acs.bbx}[2019/08/24 v1.1x biblatex bibliography style] +\ProvidesFile{chem-acs.bbx}[2019/12/03 v1.1y biblatex bibliography style] % Load the standard style to avoid copy-pasting unnecessary material \RequireBibliographyStyle{numeric-comp} @@ -286,7 +286,7 @@ \iftoggle{bbx:articletitle} {% \usebibmacro{title}% - \printunit{\adddot}% + \printunit{\adddot\addspace}% } {}% \usebibmacro{byauthor}% diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.cbx index 353cc55721..cc1625b50e 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.cbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-acs.cbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{chem-acs.cbx}[2019/08/24 v1.1x biblatex citation style] +\ProvidesFile{chem-acs.cbx}[2019/12/03 v1.1y biblatex citation style] \RequireCitationStyle{numeric-comp} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.bbx index 4de530d3c0..666d420a07 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.bbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.bbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{chem-angew.bbx}[2019/08/24 v1.1x biblatex bibliography style] +\ProvidesFile{chem-angew.bbx}[2019/12/03 v1.1y biblatex bibliography style] % Load the standard style to avoid copy-pasting unnecessary material \RequireBibliographyStyle{numeric-comp} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.cbx index cba9538058..1a93d1c099 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.cbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-angew.cbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{chem-angew.cbx}[2019/08/24 v1.1x biblatex citation style] +\ProvidesFile{chem-angew.cbx}[2019/12/03 v1.1y biblatex citation style] \RequireCitationStyle{numeric-comp} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.bbx index 0b072056d4..f729e852b4 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.bbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.bbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{chem-biochem.bbx}[2019/08/24 v1.1x biblatex bibliography style] +\ProvidesFile{chem-biochem.bbx}[2019/12/03 v1.1y biblatex bibliography style] % Load the standard style to avoid copy-pasting unnecessary material \RequireBibliographyStyle{numeric-comp} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.cbx index fd272ea7e5..05d832300c 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.cbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-biochem.cbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{chem-biochem.cbx}[2019/08/24 v1.1x biblatex citation style] +\ProvidesFile{chem-biochem.cbx}[2019/12/03 v1.1y biblatex citation style] \RequireCitationStyle{numeric-comp} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.bbx index 48815b4f73..6d0983da08 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.bbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.bbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{chem-rsc.bbx}[2019/08/24 v1.1x biblatex bibliography style] +\ProvidesFile{chem-rsc.bbx}[2019/12/03 v1.1y biblatex bibliography style] % Load the standard style to avoid copy-pasting unnecessary material \RequireBibliographyStyle{numeric-comp} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.cbx index 1e00013dfd..202b6110fb 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.cbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-chem/chem-rsc.cbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{chem-rsc.cbx}[2019/08/24 v1.1x biblatex citation style] +\ProvidesFile{chem-rsc.cbx}[2019/12/03 v1.1y biblatex citation style] \RequireCitationStyle{numeric-comp} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.pdf b/macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.pdf index 0de0fe144e..16758e75a7 100644 Binary files a/macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.pdf and b/macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.pdf differ diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.tex b/macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.tex index 984b04402f..89550aed25 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.tex +++ b/macros/latex/contrib/biblatex-contrib/biblatex-phys/biblatex-phys.tex @@ -25,8 +25,8 @@ {\texttt{joseph.wright@morningstar2.co.uk}}}} \title{\pkg{biblatex-phys} -- A \pkg{biblatex} implementation of the \textsc{aip} and \textsc{aps} bibliography style% - \footnote{This file describes v1.1a, last revised 2019/09/21.}} -\date{Released 2019/09/21} + \footnote{This file describes v1.1b, last revised 2019/12/03.}} +\date{Released 2019/12/03} \providecommand*{\opt}[1]{\texttt{#1}} \providecommand*{\pkg}[1]{\textsf{#1}} @@ -201,6 +201,7 @@ be sent by e-mail to style changes} \changes{v1.1}{2018/10/19}{Support for \texttt{collaboration} field} \changes{v1.1a}{2019-09-20}{Biber support for \texttt{collaboration} field} +\changes{v1.1b}{2019-12-03}{Fix printing of DOI when pages are missing} \PrintChanges diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.bbx b/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.bbx index 439bdd6bcf..442f4feae5 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.bbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.bbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{phys.bbx}[2019/09/21 v1.1a biblatex bibliography style] +\ProvidesFile{phys.bbx}[2019/12/03 v1.1b biblatex bibliography style] % Load the standard style to avoid copy-pasting unnecessary material \RequireBibliographyStyle{numeric-comp} @@ -458,6 +458,22 @@ }% } +\renewbibmacro*{note+pages}{% + \printfield{note}% + \setunit{\bibpagespunct}% + \printfield{pages}% + \iffieldundef{pages} + {% + \printfield{doi}% + \clearfield{doi}% + }% + {% + \iftoggle{bbx:doi} + {} + {\clearfield{doi}}% + }% +} + \newbibmacro*{related:translatedas}[1]{% \entrydata{#1}{% \usebibmacro{journal+issuetitle}% diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.cbx b/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.cbx index 946b36614c..7758bc0a2b 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.cbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.cbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{phys.cbx}[2019/09/21 v1.1a biblatex citation style] +\ProvidesFile{phys.cbx}[2019/12/03 v1.1b biblatex citation style] \RequireCitationStyle{numeric-comp} diff --git a/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.dbx b/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.dbx index d7ed7e17dc..c47ca1e2d9 100644 --- a/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.dbx +++ b/macros/latex/contrib/biblatex-contrib/biblatex-phys/phys.dbx @@ -8,7 +8,7 @@ %% --------------------------------------------------------------- %% -\ProvidesFile{phys.dbx}[2019/09/21 v1.1a biblatex database model extension] +\ProvidesFile{phys.dbx}[2019/12/03 v1.1b biblatex database model extension] \DeclareDatamodelFields[type=field, datatype=literal]{collaboration} diff --git a/macros/latex/contrib/bookmark/README.md b/macros/latex/contrib/bookmark/README.md new file mode 100644 index 0000000000..d4437f18fc --- /dev/null +++ b/macros/latex/contrib/bookmark/README.md @@ -0,0 +1,12 @@ +# bookmarks + +bookmarks package for LaTeX + + +This package implements a new bookmark (outline) organization for +package hyperref. Bookmark properties such +as style and color can now be set. Other action types +are available (URI, GoToR, Named). The bookmarks are +generated in the first compile run. + +Package hyperref uses two runs. diff --git a/macros/latex/contrib/bookmark/bookmark.dtx b/macros/latex/contrib/bookmark/bookmark.dtx new file mode 100644 index 0000000000..49ed2e897d --- /dev/null +++ b/macros/latex/contrib/bookmark/bookmark.dtx @@ -0,0 +1,3445 @@ +% \iffalse meta-comment +% +% File: bookmark.dtx +% Version: 2019/12/03 v1.28 +% Info: PDF bookmarks +% +% Copyright (C) +% 2007-2011 Heiko Oberdiek +% 2016-2019 Oberdiek Package Support Group +% https://github.com/ho-tex/bookmark/issues +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either +% version 1.3c of this license or (at your option) any later +% version. This version of this license is in +% https://www.latex-project.org/lppl/lppl-1-3c.txt +% and the latest version of this license is in +% https://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of +% LaTeX version 2005/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainers of this work are +% Heiko Oberdiek and the Oberdiek Package Support Group +% https://github.com/ho-tex/bookmark/issues +% +% This work consists of the main source file bookmark.dtx +% and the derived files +% bookmark.sty, bookmark.pdf, bookmark.ins, bookmark.drv, +% bkm-dvipdfm.def, bkm-dvips.def, bkm-dvipsone.def, +% bkm-textures.def, bkm-pdftex.def, bkm-vtex.def, +% bookmark-example.tex. +% +% Distribution: +% CTAN:macros/latex/contrib/bookmark/bookmark.dtx +% CTAN:macros/latex/contrib/bookmark/bookmark.pdf +% +% Unpacking: +% (a) If bookmark.ins is present: +% tex bookmark.ins +% (b) Without bookmark.ins: +% tex bookmark.dtx +% (c) If you insist on using LaTeX +% latex \let\install=y\input{bookmark.dtx} +% (quote the arguments according to the demands of your shell) +% +% Documentation: +% (a) If bookmark.drv is present: +% latex bookmark.drv +% (b) Without bookmark.drv: +% latex bookmark.dtx; ... +% The class ltxdoc loads the configuration file ltxdoc.cfg +% if available. Here you can specify further options, e.g. +% use A4 as paper format: +% \PassOptionsToClass{a4paper}{article} +% +% Programm calls to get the documentation (example): +% pdflatex bookmark.dtx +% makeindex -s gind.ist bookmark.idx +% pdflatex bookmark.dtx +% makeindex -s gind.ist bookmark.idx +% pdflatex bookmark.dtx +% +% Installation: +% TDS:tex/latex/bookmark/bookmark.sty +% TDS:tex/latex/bookmark/bkm-dvipdfm.def +% TDS:tex/latex/bookmark/bkm-dvips.def +% TDS:tex/latex/bookmark/bkm-dvipsone.def +% TDS:tex/latex/bookmark/bkm-textures.def +% TDS:tex/latex/bookmark/bkm-pdftex.def +% TDS:tex/latex/bookmark/bkm-vtex.def +% TDS:doc/latex/bookmark/bookmark.pdf +% TDS:doc/latex/bookmark/bookmark-example.tex +% TDS:source/latex/bookmark/bookmark.dtx +% +%<*ignore> +\begingroup + \catcode123=1 % + \catcode125=2 % + \def\x{LaTeX2e}% +\expandafter\endgroup +\ifcase 0\ifx\install y1\fi\expandafter + \ifx\csname processbatchFile\endcsname\relax\else1\fi + \ifx\fmtname\x\else 1\fi\relax +\else\csname fi\endcsname +% +%<*install> +\input docstrip.tex +\Msg{************************************************************************} +\Msg{* Installation} +\Msg{* Package: bookmark 2019/12/03 v1.28 PDF bookmarks (HO)} +\Msg{************************************************************************} + +\keepsilent +\askforoverwritefalse + +\let\MetaPrefix\relax +\preamble + +This is a generated file. + +Project: bookmark +Version: 2019/12/03 v1.28 + +Copyright (C) + 2007-2011 Heiko Oberdiek + 2016-2019 Oberdiek Package Support Group + +This work may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either +version 1.3c of this license or (at your option) any later +version. This version of this license is in + https://www.latex-project.org/lppl/lppl-1-3c.txt +and the latest version of this license is in + https://www.latex-project.org/lppl.txt +and version 1.3 or later is part of all distributions of +LaTeX version 2005/12/01 or later. + +This work has the LPPL maintenance status "maintained". + +The Current Maintainers of this work are +Heiko Oberdiek and the Oberdiek Package Support Group +https://github.com/ho-tex/bookmark/issues + + +This work consists of the main source file bookmark.dtx +and the derived files + bookmark.sty, bookmark.pdf, bookmark.ins, bookmark.drv, + bkm-dvipdfm.def, bkm-dvips.def, bkm-dvipsone.def, + bkm-textures.def, bkm-pdftex.def, bkm-vtex.def, + bookmark-example.tex. + +\endpreamble +\let\MetaPrefix\DoubleperCent + +\generate{% + \file{bookmark.ins}{\from{bookmark.dtx}{install}}% + \file{bookmark.drv}{\from{bookmark.dtx}{driver}}% + \usedir{tex/latex/bookmark}% + \file{bookmark.sty}{\from{bookmark.dtx}{package}}% + \file{bkm-dvipdfm.def}{\from{bookmark.dtx}{dvipdfm}}% + \file{bkm-dvips.def}{\from{bookmark.dtx}{dvips,pdfmark}}% + \file{bkm-dvipsone.def}{\from{bookmark.dtx}{dvipsone,pdfmark}}% + \file{bkm-textures.def}{\from{bookmark.dtx}{textures,pdfmark}}% + \file{bkm-pdftex.def}{\from{bookmark.dtx}{pdftex}}% + \file{bkm-vtex.def}{\from{bookmark.dtx}{vtex}}% + \usedir{doc/latex/bookmark}% + \file{bookmark-example.tex}{\from{bookmark.dtx}{example}}% +} + +\catcode32=13\relax% active space +\let =\space% +\Msg{************************************************************************} +\Msg{*} +\Msg{* To finish the installation you have to move the following} +\Msg{* files into a directory searched by TeX:} +\Msg{*} +\Msg{* bookmark.sty, bkm-dvipdfm.def, bkm-dvips.def,} +\Msg{* bkm-dvipsone.def, bkm-textures.def, bkm-pdftex.def,} +\Msg{* bkm-vtex.def} +\Msg{*} +\Msg{* To produce the documentation run the file `bookmark.drv'} +\Msg{* through LaTeX.} +\Msg{*} +\Msg{* Happy TeXing!} +\Msg{*} +\Msg{************************************************************************} + +\endbatchfile +% +%<*ignore> +\fi +% +%<*driver> +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{bookmark.drv}% + [2019/12/03 v1.28 PDF bookmarks (HO)]% +\documentclass{ltxdoc} +\usepackage{holtxdoc}[2011/11/22] +\begin{document} + \DocInput{bookmark.dtx}% +\end{document} +% +% \fi +% +% +% +% \GetFileInfo{bookmark.drv} +% +% \title{The \xpackage{bookmark} package} +% \date{2019/12/03 v1.28} +% \author{Heiko Oberdiek\thanks +% {Please report any issues at \url{https://github.com/ho-tex/bookmark/issues}}} +% +% \maketitle +% +% \begin{abstract} +% This package implements a new bookmark (outline) organization for +% package \xpackage{hyperref}. Bookmark properties such +% as style and color can now be set. Other action types +% are available (URI, GoToR, Named). The bookmarks are +% generated in the first compile run. Package \xpackage{hyperref} +% uses two runs. +% \end{abstract} +% +% \tableofcontents +% +% \section{Documentation} +% +% \subsection{Introduction} +% +% This package \xpackage{bookmark} tries to provide a more modern +% management for bookmarks: +% \begin{itemize} +% \item The bookmarks are already generated in the first \hologo{TeX} compile run. +% \item The font style and color of the bookmarks can be changed. +% \item More actions than simple GoTo actions are possible. +% \end{itemize} +% +% In the same way as \xpackage{hyperref} \cite{hyperref} +% the bookmarks are generated +% in the order of the bookmark generating macros (\cs{bookmark}). +% A level number is used to define the tree structure of the bookmarks. +% The restrictions are less strict: +% \begin{itemize} +% \item The level values may jump and omit values. A \cs{subsubsection} +% may follow a \cs{chapter}. This was an error in \xpackage{hyperref}, +% that prints a warning and tries to fix this. +% \item Several bookmarks may point to the same destination. +% In \xpackage{hyperref} this would mess up the bookmark tree +% completely, because the algorithm assumes that the destination +% names are keys (unique). +% \end{itemize} +% +% Note that this package is intended as experimentation platform +% for bookmark management. Feedback is welcome. Also the interfaces +% may change in future versions. +% +% \subsection{Options} +% +% Options can be given at four places: +% \begin{enumerate} +% \item \cs{usepackage}|[|\meta{options}|]{bookmark}|\\ +% This is the only place for driver options +% and option \xoption{atend}. +% \item \cs{bookmarksetup}|{|\meta{options}|}|\\ +% This command is just for setting options. +% \item \cs{bookmarksetupnext}|{|\meta{options}|}|\\ +% The options are stored and called after the +% options of the next \cs{bookmark} command. +% \item \cs{bookmark}|[|\meta{options}|]{|\meta{title}|}|\\ +% This command sets the bookmark. The option settings remain +% limited to this bookmark. +% \end{enumerate} +% Exception: Driver options, option \xoption{atend} and +% options \xoption{draft}\slash\xoption{final} +% cannot be changed after the package is loaded. +% +% \subsubsection{Options \xoption{draft} and \xoption{final}} +% +% If a \LaTeX\ file is compiled several times, then a little +% time can be saved, if option \xoption{draft} is used to +% disable the bookmark stuff of this package. Default is +% \xoption{final}. +% Both options are boolean options, without +% value the value |true| is used. |draft=true| is the same +% as |final=false|. +% +% Options of package \xpackage{bookmark} are local options +% with the exception of driver options. Therefore \xoption{draft} +% or \xoption{final} given as class option is not seen by this +% package. If you want to optimize first \LaTeX\ runs depending +% on a global \xoption{draft}, then package \xpackage{ifdraft} +% and \LaTeX's \cs{PassOptionsToPackage} +% might help in the organization of the preamble, for example: +%\begin{quote} +%\begin{verbatim} +%\documentclass[draft]{article} +%\usepackage{ifdraft} +%\ifdraft{% +% \PassOptionsToPackage{draft}{bookmark}% +%}{} +%\end{verbatim} +%\end{quote} +% +% \subsubsection{Driver options} +% +% Supported drivers are \xoption{pdftex}, \xoption{dvips}, +% \xoption{dvipsone}, \xoption{textures}, +% \xoption{dvipdfm} (\xoption{xetex}), and \xoption{vtex}. +% The \hologo{TeX} engines \hologo{pdfTeX}, \hologo{XeTeX}, +% and \hologo{VTeX} are automatically detected. +% The default for the DVI drivers is \xoption{dvips}. This can +% be changed in the configuration file \xfile{bookmark.cfg} by +% \cs{BookmarkDriverDefault}, e.g.: +% \begin{quote} +% |\def\BookmarkDriverDefault{dvipdfm}| +% \end{quote} +% +% \paragraph{Open bookmarks with dvipdfmx.} Since 2007-04-25 the +% cvs version of dvipmdfmx contains a patch that extends the +% \cs{special} for bookmarks in order to specify the open status of +% an outline entry. Option \xoption{dvipdfmx-outline-open} notifies +% the package that the dvi driver program understands this kind +% of \cs{special}. Alternatively \cs{SpecialDvipdfmxOutlineOpen} +% can be defined as number one in the configuration file or before +% the package is loaded, e.g.: +% \begin{quote} +% |\chardef\SpecialDvipdfmxOutlineOpen=1\relax| +% \end{quote} +% +% \subsubsection{Layout options} +% +% \paragraph{Font options.} +% +% \begin{description} +% \item[\xoption{bold}:] The bookmark is shown with a bold font +% if the PDF viewer supports this (since PDF 1.4). +% \item[\xoption{italic}:] An italic font is used (since PDF 1.4). +% \end{description} +% Both \xoption{bold} and \xoption{italic} can be used together. +% Using value |false| disables the font option. +% +% \paragraph{Color option.} +% +% Colored bookmarks are a feature of PDF 1.4, they are not supported +% by all PDF viewers. +% \begin{description} +% \item[\xoption{color}:] Here the color can be given as +% color specification of packages \xpackage{color} or \xpackage{xcolor}. +% An empty value means that the color property is not set. +% Without package \xpackage{xcolor} the recognized values +% are restricted to +% \begin{itemize} +% \item Empty value, no color is set,\\ +% example: |color={}| +% \item Explicit color specification of color model rgb,\\ +% example for red: |color=[rgb]{1,0,0}| +% \item Explicit color specification of color model gray,\\ +% example for dark gray: |color=[gray]{0.25}| +% \end{itemize} +% Note that this restriction also holds if package \xpackage{color} +% is loaded. With \xpackage{xcolor}, however, the full range +% of color specifications can be used. +% \end{description} +% +% \subsubsection{Action options} +% +% \begin{description} +% \item[\xoption{dest}:] Destination name. +% \item[\xoption{page}:] Page number, first page is 1. +% \item[\xoption{view}:] View specification, examples:\\ +% |view={FitB}|, |view={FitH 842}|, |view={XYZ 0 100 null}| +% Some view specification parameters expect numbers as parameters +% with unit bp. They can be given either as plain numbers or +% as length expressions inside \cs{calc}. Expressions of +% package \xpackage{calc} are supported if the package is loaded. +% Otherwise \hologo{eTeX}'s \cs{dimexpr} is used. Example:\\ +% |view={FitH \calc{\paperheight-\topmargin-1in}}|\\ +% |view={XYZ 0 \calc{\paperheight} null}|\\ +% Note that \cs{calc} cannot be used for the third parameter +% of |XYZ|. This parameter is the zoom value, not a length. +% \item[\xoption{named}:] Named action name:\\ +% |FirstPage|, |LastPage|, |NextPage|, |PrevPage| +% \item[\xoption{gotor}:] Name of the external PDF file. +% \item[\xoption{uri}:] URI specification. +% \item[\xoption{rawaction}:] Raw action specification. +% Because these specification depends on the driver this option +% should not be used. +% \end{description} +% The appropriate action for the bookmark is selected by +% analyzing the specified options. The actions +% are distinguished by different sets of options: +% \begin{quote} +% \begin{tabular}{@{}ll@{}} +% \textbf{Action} & \textbf{Options}\\ +% \hline +% \textsf{GoTo}: & \xoption{dest}\\ +% \textsf{GoTo}: & \xoption{page} + \xoption{view}\\ +% \textsf{GoToR}: & \xoption{gotor} + \xoption{dest}\\ +% \textsf{GoToR}: & \xoption{gotor} + \xoption{page} + \xoption{view}\\ +% \textsf{Named}: & \xoption{named}\\ +% \textsf{URI}: & \xoption{uri} +% \end{tabular} +% \end{quote} +% +% \paragraph{Missing actions.} +% If the action is missing package \xpackage{bookmark} throws +% an error message. Depending on the driver (\xoption{pdftex}, +% \xoption{dvips} and friends) the package detects it quite late +% at the end of the document. Since version 2011/04/21 v1.21 +% the package tries printing the line number and file name +% of the corresponding occurence of \cs{bookmark}. +% However, \hologo{TeX} does provide the line number, but +% unhappily the file name is a secret. The package supports +% some ways to get the file name: +% \begin{itemize} +% \item If \hologo{LuaTeX} (indenpendently from DVI or PDF modus) +% is running, then its |status.filename| is used automatically. +% \item Package \cs{currfile} \cite{currfile} redefines \hologo{LaTeX} +% internals to keep track of the file name. If the package +% is loaded, then its \cs{currfilepath} is detected and used +% automatically by package \xpackage{bookmark}. +% \item The file name can be set manually by option \xoption{scrfile} +% in \cs{bookmarksetup} or \cs{bookmark}. But be careful, +% manual setting disables the previous ways for file name +% detection. And a wrong or missed file name setting might +% get you a wrong source location in the error message. +% \end{itemize} +% +% \subsubsection{Level options} +% +% The order of the bookmark entries are defined by the +% appearance order of \cs{bookmark} commands. The tree structure +% is constructed by the property \xoption{level} of the bookmark nodes. +% The values of \xoption{level} are integers. If the level of a +% bookmark entry has a higher value than the previous node, then +% the entry becomes a child of the previous node. The absolute +% value of the difference does not matter. +% +% Package \xpackage{bookmark} remembers the level of the previous +% bookmark entry in a global property `current level'. +% +% The behaviour of the level system can be configured by following +% options: +% \begin{description} +% \item[\xoption{level}:] +% Sets the level, see the description above. If option \xoption{level} +% is given without value, then the default behaviour is restored, +% that the `current level' is used as level value. +% Since version 2010/10/19 v1.16 package \xpackage{bookmark} +% also supports names |part|, |section| and other, +% if the macros \cs{toclevel@part}, \cs{toclevel@section} +% are defined (done by package \xpackage{hyperref}, see +% option \xoption{bookmarkdepth}). +% \item[\xoption{rellevel}:] +% Sets the level relative to the previous level. +% A positive value means that the bookmark entry become +% a child of the previous one. +% \item[\xoption{keeplevel}:] +% Use the level, set by \xoption{level} or \xoption{rellevel}, +% but do not change the global property `current level'. +% The option can be disabled by setting to |false|. +% \item[\xoption{startatroot}:] +% At this time the bookmark tree starts at the top level again. +% The next bookmark entry is not sorted as child to a previous entry. +% Example scenario: A document uses part. However there are +% last chapters that should not be put below the last part: +% \begin{quote} +%\begin{verbatim} +%\documentclass{book} +%[...] +%\begin{document} +% \part{First part} +% \chapter{First chapter in first part} +% [...] +% \part{Second part} +% \chapter{First chapter in second part} +% [...] +% \bookmarksetup{startatroot} +% \chapter{Index}% does not belong to second part +%\end{document} +%\end{verbatim} +% \end{quote} +% \end{description} +% +% \subsubsection{Style definitions} +% +% A style is a group of option settings. It can be defined +% by macro \cs{bookmarkdefinestyle} and is used by option \xoption{style}. +% \begin{declcs}{bookmarkdefinestyle} \M{name} \M{key value list} +% \end{declcs} +% The \meta{key value list} of option settings is assigned the +% style \meta{name}. +% +% \begin{description} +% \item[\xoption{style}:] +% The value of option \xoption{style} is the name of a previously +% defined style. Its option settings are now executed. +% The options may include option \xoption{style}. +% Endless recursion by calling the same style recursively +% is prevented and throws an error. +% \end{description} +% +% \subsubsection{Hook support} +% +% A hook is called right after the processing the optional options +% of macro \cs{bookmark}. +% \begin{description} +% \item[\xoption{addtohook}:] +% Code, given as value to this option is added to the hook. +% \end{description} +% +% \begin{declcs}{bookmarkget} \M{option} +% \end{declcs} +% Macro \cs{bookmarkget} extracts the value of the latest option +% setting of option \meta{option}. In case of boolean options number +% one is returned, if the boolean option is enabled, otherwise the +% result is zero. +% The resulting numbers can directly be used in \cs{ifnum} or \cs{ifcase}. +% If you want to have the digits \texttt{0} and \texttt{1}, then +% prefix \cs{bookmarkget} with \cs{number}. +% Macro \cs{bookmarkget} is expandable. +% In case of +% unsupported options an empty string is returned. +% Supported boolean options are +% \begin{quote} +% \xoption{bold}, +% \xoption{italic}, +% \xoption{open} +% \end{quote} +% Other supported options: +% \begin{quote} +% \xoption{depth}, +% \xoption{dest}, +% \xoption{color}, +% \xoption{gotor}, +% \xoption{level}, +% \xoption{named}, +% \xoption{openlevel}, +% \xoption{page}, +% \xoption{rawaction}, +% \xoption{uri}, +% \xoption{view}, +% \end{quote} +% Additionally the following key is available: +% \begin{quote} +% \xoption{text} +% \end{quote} +% It returns the text of the outline entry. +% +% \paragraph{Option setting.} +% Inside the hook an option can be set using \cs{bookmarksetup}. +% +% \subsection{Compatibility with \xpackage{hyperref}} +% +% Package \xpackage{bookmark} automatically disables +% \xpackage{hyperref}'s bookmarks. However the package +% uses some of the code of \xpackage{hyperref}. For example, +% the package redefines the hook \cs{Hy@writebookmark} that +% \xpackage{hyperref} inserts in \cs{addcontentsline} and +% other commands. Therefore +% \xpackage{hyperref}'s bookmarks should not be disabled. +% +% Package \xpackage{bookmark} uses \xpackage{hyperref}'s \cs{pdfstringdef} +% and does not provide a replacement. +% +% Some options of \xpackage{hyperref} are also implemented +% in package \xpackage{bookmark}: +% \begin{quote} +% \begin{tabular}{@{}ll@{}} +% \xpackage{hyperref} & \xpackage{bookmark}\\ +% \hline +% \xoption{bookmarksdepth} & \xoption{depth}\\ +% \xoption{bookmarksopen} & \xoption{open}\\ +% \xoption{bookmarksopenlevel} & \xoption{openlevel}\\ +% \xoption{bookmarksnumbered} & \xoption{numbered}\\ +% \end{tabular} +% \end{quote} +% +% The following commands are also available: +% \begin{quote} +% \cs{pdfbookmark}\\ +% \cs{currentpdfbookmark}\\ +% \cs{subpdfbookmark}\\ +% \cs{belowpdfbookmark} +% \end{quote} +% +% \subsection{Adding bookmarks at the end} +% +% Package option \xoption{atend} enables the following macro: +% \begin{declcs}{BookmarkAtEnd} +% \M{stuff} +% \end{declcs} +% Macro \cs{BookmarkAtEnd} puts \meta{stuff} at the end +% of the document. \meta{stuff} means bookmark commands. +% Example: +% \begin{quote} +%\begin{verbatim} +%\usepackage[atend]{bookmark} +%\BookmarkAtEnd{% +% \bookmarksetup{startatroot}% +% \bookmark[named=LastPage, level=0]{Last page}% +%} +%\end{verbatim} +% \end{quote} +% +% Alternatively, option \xoption{startatroot} can be given +% in \cs{bookmark}: +% \begin{quote} +%\begin{verbatim} +%\BookmarkAtEnd{% +% \bookmark[ +% startatroot, +% named=LastPage, +% level=0, +% ]{Last page}% +%} +%\end{verbatim} +% \end{quote} +% +% \paragraph{Remarks.} +% \begin{itemize} +% \item +% \cs{BookmarkAtEnd} hides the fact that the method for +% adding bookmarks at the end of the document depends +% on the driver. +% +% Some drivers +% (\xoption{pdftex}, \xoption{dvips}, \xoption{dvipsone}, +% \xoption{textures}) use package \xpackage{atveryend}'s +% for this purpose. \cs{AtEndDocument} is too early, +% the last page might not been shipped out. Because the \xext{aux} +% file is needed, these drivers use \cs{AfterLastShipout}. +% +% The implementation of the other drivers +% (\xoption{dvipdfm}, \xoption{xetex}, \xoption{vtex}) +% depends on +% \cs{special} that does not have an effect after the last +% page. In this case \cs{AtEndDvi} of package \xpackage{atenddvi} +% helps. It puts its argument on last page of the document. +% Two \hologo{LaTeX} runs are necessary at least, because +% the last page is detected by a reference. +% \item +% The time of expansion of the argument of \cs{BookmarkAtEnd} +% is not specified. This can happen immediately or at the end +% of the document. +% \end{itemize} +% +% \subsection{Limitations/ToDos} +% +% \begin{itemize} +% \item Support for missing actions (Launch, \dots). +% \item Better design for \xpackage{hyperref}'s option +% \xoption{bookmarkstype}. +% \end{itemize} +% +% \section{Example} +% +% \begin{macrocode} +%<*example> +% \end{macrocode} +% \begin{macrocode} +\documentclass{article} +\usepackage{xcolor}[2007/01/21] +\usepackage{hyperref} +\usepackage[ + open, + openlevel=2, + atend +]{bookmark}[2019/12/03] + +\bookmarksetup{color=blue} + +\BookmarkAtEnd{% + \bookmarksetup{startatroot}% + \bookmark[named=LastPage, level=0]{End/Last page}% + \bookmark[named=FirstPage, level=1]{First page}% +} + +\begin{document} +\section{First section} +\subsection{Subsection A} +\begin{figure} + \hypertarget{fig}{}% + A figure. +\end{figure} +\bookmark[ + rellevel=1, + keeplevel, + dest=fig +]{A figure} +\subsection{Subsection B} +\subsubsection{Subsubsection C} +\subsection{Umlauts: \"A\"O\"U\"a\"o\"u\ss} +\newpage +\bookmarksetup{ + bold, + color=[rgb]{1,0,0} +} +\section{Very important section} +\bookmarksetup{ + italic, + bold=false, + color=blue +} +\subsection{Italic section} +\bookmarksetup{ + italic=false +} +\part{Misc} +\section{Diverse} +\subsubsection{Subsubsection, omitting subsection} +\bookmarksetup{ + startatroot +} +\section{Last section outside part} +\subsection{Subsection} +\bookmarksetup{ + color={} +} +\begingroup + \bookmarksetup{level=0, color=green!80!black} + \bookmark[named=FirstPage]{First page} + \bookmark[named=LastPage]{Last page} + \bookmark[named=PrevPage]{Previous page} + \bookmark[named=NextPage]{Next page} +\endgroup +\bookmark[ + page=2, + view=FitH 800 +]{Page 2, FitH 800} +\bookmark[ + page=2, + view=FitBH \calc{\paperheight-\topmargin-1in-\headheight-\headsep} +]{Page 2, FitBH top of text body} +\bookmark[ + uri={http://www.dante.de/}, + color=magenta +]{Dante homepage} +\bookmark[ + gotor={t.pdf}, + page=1, + view={XYZ 0 1000 null}, + color=cyan!75!black +]{File t.pdf} +\bookmark[named=FirstPage]{First page} +\bookmark[rellevel=1, named=LastPage]{Last page (rellevel=1)} +\bookmark[named=PrevPage]{Previous page} +\bookmark[level=0, named=FirstPage]{First page (level=0)} +\bookmark[ + rellevel=1, + keeplevel, + named=LastPage +]{Last page (rellevel=1, keeplevel)} +\bookmark[named=PrevPage]{Previous page} +\end{document} +% \end{macrocode} +% \begin{macrocode} +% +% \end{macrocode} +% +% \StopEventually{ +% } +% +% \section{Implementation} +% +% \subsection{Package} +% +% \begin{macrocode} +%<*package> +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{bookmark}% + [2019/12/03 v1.28 PDF bookmarks (HO)]% +% \end{macrocode} +% +% \subsubsection{Requirements} +% +% \paragraph{\hologo{eTeX}.} +% +% \begin{macro}{\BKM@CalcExpr} +% \begin{macrocode} +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname numexpr\endcsname\relax + \def\BKM@CalcExpr#1#2#3#4{% + \begingroup + \count@=#2\relax + \advance\count@ by#3#4\relax + \edef\x{\endgroup + \def\noexpand#1{\the\count@}% + }% + \x + }% +\else + \def\BKM@CalcExpr#1#2#3#4{% + \edef#1{% + \the\numexpr#2#3#4\relax + }% + }% +\fi +% \end{macrocode} +% \end{macro} +% +% \paragraph{Escape features of \hologo{pdfTeX}.} +% +% \begin{macro}{\BKM@EscapeName} +% \begin{macrocode} +\def\BKM@EscapeName#1{% + \ifx#1\@empty + \else + \EdefEscapeName#1#1% + \fi +}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@EscapeString} +% \begin{macrocode} +\def\BKM@EscapeString#1{% + \ifx#1\@empty + \else + \EdefEscapeString#1#1% + \fi +}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@EscapeHex} +% \begin{macrocode} +\def\BKM@EscapeHex#1{% + \ifx#1\@empty + \else + \EdefEscapeHex#1#1% + \fi +}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@UnescapeHex} +% \begin{macrocode} +\def\BKM@UnescapeHex#1{% + \EdefUnescapeHex#1#1% +}% +% \end{macrocode} +% \end{macro} +% +% \paragraph{Packages.} +% +% Don't load packages loaded by xpackage{hyperref} +% \begin{macrocode} +\RequirePackage{hyperref}[2010/06/18] +% \end{macrocode} +% +% \subsubsection{Package options} +% +% \begin{macrocode} +\SetupKeyvalOptions{family=BKM,prefix=BKM@} +\DeclareLocalOptions{% + atend,% + bold,% + color,% + depth,% + dest,% + draft,% + final,% + gotor,% + italic,% + keeplevel,% + level,% + named,% + numbered,% + open,% + openlevel,% + page,% + rawaction,% + rellevel,% + srcfile,% + srcline,% + startatroot,% + uri,% + view,% +} +% \end{macrocode} +% \begin{macro}{\bookmarksetup} +% \begin{macrocode} +\newcommand*{\bookmarksetup}{\kvsetkeys{BKM}} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@setup} +% \begin{macrocode} +\def\BKM@setup#1{% + \bookmarksetup{#1}% + \ifx\BKM@HookNext\ltx@empty + \else + \expandafter\bookmarksetup\expandafter{\BKM@HookNext}% + \BKM@HookNextClear + \fi + \BKM@hook + \ifBKM@keeplevel + \else + \xdef\BKM@currentlevel{\BKM@level}% + \fi +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\bookmarksetupnext} +% \begin{macrocode} +\newcommand*{\bookmarksetupnext}[1]{% + \ltx@GlobalAppendToMacro\BKM@HookNext{,#1}% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@setupnext} +% \begin{macrocode} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@HookNextClear} +% \begin{macrocode} +\def\BKM@HookNextClear{% + \global\let\BKM@HookNext\ltx@empty +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@HookNext} +% \begin{macrocode} +\BKM@HookNextClear +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} +\DeclareBoolOption{draft} +\DeclareComplementaryOption{final}{draft} +% \end{macrocode} +% \begin{macro}{\BKM@DisableOptions} +% \begin{macrocode} +\def\BKM@DisableOptions{% + \DisableKeyvalOption[action=warning,package=bookmark]% + {BKM}{draft}% + \DisableKeyvalOption[action=warning,package=bookmark]% + {BKM}{final}% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\DeclareBoolOption[\ifHy@bookmarksopen true\else false\fi]{open} +% \end{macrocode} +% \begin{macro}{\bookmark@open} +% \begin{macrocode} +\def\bookmark@open{% + \ifBKM@open\ltx@one\else\ltx@zero\fi +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\DeclareStringOption[\maxdimen]{openlevel} +% \end{macrocode} +% \begin{macro}{\BKM@openlevel} +% \begin{macrocode} +\edef\BKM@openlevel{\number\@bookmarksopenlevel} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +%\DeclareStringOption[\c@tocdepth]{depth} +\ltx@IfUndefined{Hy@bookmarksdepth}{% + \def\BKM@depth{\c@tocdepth}% +}{% + \let\BKM@depth\Hy@bookmarksdepth +} +\define@key{BKM}{depth}[]{% + \edef\BKM@param{#1}% + \ifx\BKM@param\@empty + \def\BKM@depth{\c@tocdepth}% + \else + \ltx@IfUndefined{toclevel@\BKM@param}{% + \@onelevel@sanitize\BKM@param + \edef\BKM@temp{\expandafter\@car\BKM@param\@nil}% + \ifcase 0\expandafter\ifx\BKM@temp-1\fi + \expandafter\ifnum\expandafter`\BKM@temp>47 % + \expandafter\ifnum\expandafter`\BKM@temp<58 % + 1% + \fi + \fi + \relax + \PackageWarning{bookmark}{% + Unknown document division name (\BKM@param)\MessageBreak + for option `depth'% + }% + \else + \BKM@SetDepthOrLevel\BKM@depth\BKM@param + \fi + }{% + \BKM@SetDepthOrLevel\BKM@depth{% + \csname toclevel@\BKM@param\endcsname + }% + }% + \fi +} +% \end{macrocode} +% \begin{macro}{\bookmark@depth} +% \begin{macrocode} +\def\bookmark@depth{\BKM@depth} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@SetDepthOrLevel} +% \begin{macrocode} +\def\BKM@SetDepthOrLevel#1#2{% + \begingroup + \setbox\z@=\hbox{% + \count@=#2\relax + \expandafter + }% + \expandafter\endgroup + \expandafter\def\expandafter#1\expandafter{\the\count@}% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\DeclareStringOption[\BKM@currentlevel]{level}[\BKM@currentlevel] +\define@key{BKM}{level}{% + \edef\BKM@param{#1}% + \ifx\BKM@param\BKM@MacroCurrentLevel + \let\BKM@level\BKM@param + \else + \ltx@IfUndefined{toclevel@\BKM@param}{% + \@onelevel@sanitize\BKM@param + \edef\BKM@temp{\expandafter\@car\BKM@param\@nil}% + \ifcase 0\expandafter\ifx\BKM@temp-1\fi + \expandafter\ifnum\expandafter`\BKM@temp>47 % + \expandafter\ifnum\expandafter`\BKM@temp<58 % + 1% + \fi + \fi + \relax + \PackageWarning{bookmark}{% + Unknown document division name (\BKM@param)\MessageBreak + for option `level'% + }% + \else + \BKM@SetDepthOrLevel\BKM@level\BKM@param + \fi + }{% + \BKM@SetDepthOrLevel\BKM@level{% + \csname toclevel@\BKM@param\endcsname + }% + }% + \fi +} +% \end{macrocode} +% \begin{macro}{\BKM@MacroCurrentLevel} +% \begin{macrocode} +\def\BKM@MacroCurrentLevel{\BKM@currentlevel} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\DeclareBoolOption{keeplevel} +\DeclareBoolOption{startatroot} +% \end{macrocode} +% \begin{macro}{\BKM@startatrootfalse} +% \begin{macrocode} +\def\BKM@startatrootfalse{% + \global\let\ifBKM@startatroot\iffalse +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@startatroottrue} +% \begin{macrocode} +\def\BKM@startatroottrue{% + \global\let\ifBKM@startatroot\iftrue +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\define@key{BKM}{rellevel}{% + \BKM@CalcExpr\BKM@level{#1}+\BKM@currentlevel +} +% \end{macrocode} +% \begin{macro}{\bookmark@level} +% \begin{macrocode} +\def\bookmark@level{\BKM@level} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@currentlevel} +% \begin{macrocode} +\def\BKM@currentlevel{0} +% \end{macrocode} +% \end{macro} +% Make \xpackage{bookmark}'s option \xoption{numbered} an alias +% for \xpackage{hyperref}'s \xoption{bookmarksnumbered}. +% \begin{macrocode} +\DeclareBoolOption[% + \ifHy@bookmarksnumbered true\else false\fi +]{numbered} +\g@addto@macro\BKM@numberedtrue{% + \let\ifHy@bookmarksnumbered\iftrue +} +\g@addto@macro\BKM@numberedfalse{% + \let\ifHy@bookmarksnumbered\iffalse +} +\g@addto@macro\Hy@bookmarksnumberedtrue{% + \let\ifBKM@numbered\iftrue +} +\g@addto@macro\Hy@bookmarksnumberedfalse{% + \let\ifBKM@numbered\iffalse +} +% \end{macrocode} +% \begin{macro}{\bookmark@numbered} +% \begin{macrocode} +\def\bookmark@numbered{% + \ifBKM@numbered\ltx@one\else\ltx@zero\fi +} +% \end{macrocode} +% \end{macro} +% +% \paragraph{Redefinitions \xpackage{hyperref}'s options} +% +% \begin{macro}{\BKM@PatchHyperrefOption} +% \begin{macrocode} +\def\BKM@PatchHyperrefOption#1{% + \expandafter\BKM@@PatchHyperrefOption\csname KV@Hyp@#1\endcsname% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@@PatchHyperrefOption} +% \begin{macrocode} +\def\BKM@@PatchHyperrefOption#1{% + \expandafter\BKM@@@PatchHyperrefOption#1{##1}\BKM@nil#1% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@@@PatchHyperrefOption} +% \begin{macrocode} +\def\BKM@@@PatchHyperrefOption#1\BKM@nil#2#3{% + \def#2##1{% + #1% + \bookmarksetup{#3={##1}}% + }% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\BKM@PatchHyperrefOption{bookmarksopen}{open} +\BKM@PatchHyperrefOption{bookmarksopenlevel}{openlevel} +\BKM@PatchHyperrefOption{bookmarksdepth}{depth} +% \end{macrocode} +% +% \paragraph{Font style options.} +% +% Caution: Package \xpackage{bitset} is zero-based, the +% PDF specifications starts with one. +% \begin{macrocode} +\bitsetReset{BKM@FontStyle}% +\define@key{BKM}{italic}[true]{% + \expandafter\ifx\csname if#1\endcsname\iftrue + \bitsetSet{BKM@FontStyle}{0}% + \else + \bitsetClear{BKM@FontStyle}{0}% + \fi +}% +\define@key{BKM}{bold}[true]{% + \expandafter\ifx\csname if#1\endcsname\iftrue + \bitsetSet{BKM@FontStyle}{1}% + \else + \bitsetClear{BKM@FontStyle}{1}% + \fi +}% +% \end{macrocode} +% \begin{macro}{\bookmark@italic} +% \begin{macrocode} +\def\bookmark@italic{% + \ifnum\bitsetGet{BKM@FontStyle}{0}=1 \ltx@one\else\ltx@zero\fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bookmark@bold} +% \begin{macrocode} +\def\bookmark@bold{% + \ifnum\bitsetGet{BKM@FontStyle}{1}=1 \ltx@one\else\ltx@zero\fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@PrintStyle} +% \begin{macrocode} +\def\BKM@PrintStyle{% + \bitsetGetDec{BKM@FontStyle}% +}% +% \end{macrocode} +% \end{macro} +% +% \paragraph{Options for color.} +% +% \begin{macrocode} +\define@key{BKM}{color}{% + \HyColor@BookmarkColor{#1}\BKM@color{bookmark}{color}% +} +% \end{macrocode} +% \begin{macro}{\BKM@color} +% \begin{macrocode} +\let\BKM@color\@empty +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bookmark@color} +% \begin{macrocode} +\def\bookmark@color{\BKM@color} +% \end{macrocode} +% \end{macro} +% +% \subsubsection{Action options} +% +% \begin{macrocode} +\def\BKM@temp#1{% + \DeclareStringOption{#1}% + \expandafter\edef\csname bookmark@#1\endcsname{% + \expandafter\noexpand\csname BKM@#1\endcsname + }% +} +% \end{macrocode} +% \begin{macro}{\bookmark@dest} +% \begin{macrocode} +\BKM@temp{dest} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bookmark@named} +% \begin{macrocode} +\BKM@temp{named} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bookmark@uri} +% \begin{macrocode} +\BKM@temp{uri} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bookmark@gotor} +% \begin{macrocode} +\BKM@temp{gotor} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bookmark@rawaction} +% \begin{macrocode} +\BKM@temp{rawaction} +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} +\define@key{BKM}{page}{% + \def\BKM@page{#1}% + \ifx\BKM@page\@empty + \else + \edef\BKM@page{\number\BKM@page}% + \ifnum\BKM@page>\z@ + \else + \PackageError{bookmark}{Page must be positive}\@ehc + \def\BKM@page{1}% + \fi + \fi +} +% \end{macrocode} +% \begin{macro}{\BKM@page} +% \begin{macrocode} +\let\BKM@page\@empty +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bookmark@page} +% \begin{macrocode} +\def\bookmark@page{\BKM@@page} +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} +\define@key{BKM}{view}{% + \BKM@CheckView{#1}% +} +% \end{macrocode} +% \begin{macro}{\BKM@view} +% \begin{macrocode} +\let\BKM@view\@empty +% \end{macrocode} +% \end{macro} +% \begin{macro}{\bookmark@view} +% \begin{macrocode} +\def\bookmark@view{\BKM@view} +% \end{macrocode} +% \end{macro} +% \begin{macro}{BKM@CheckView} +% \begin{macrocode} +\def\BKM@CheckView#1{% + \BKM@CheckViewType#1 \@nil +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@CheckViewType} +% \begin{macrocode} +\def\BKM@CheckViewType#1 #2\@nil{% + \def\BKM@type{#1}% + \@onelevel@sanitize\BKM@type + \BKM@TestViewType{Fit}{}% + \BKM@TestViewType{FitB}{}% + \BKM@TestViewType{FitH}{% + \BKM@CheckParam#2 \@nil{top}% + }% + \BKM@TestViewType{FitBH}{% + \BKM@CheckParam#2 \@nil{top}% + }% + \BKM@TestViewType{FitV}{% + \BKM@CheckParam#2 \@nil{bottom}% + }% + \BKM@TestViewType{FitBV}{% + \BKM@CheckParam#2 \@nil{bottom}% + }% + \BKM@TestViewType{FitR}{% + \BKM@CheckRect{#2}{ }% + }% + \BKM@TestViewType{XYZ}{% + \BKM@CheckXYZ{#2}{ }% + }% + \@car{% + \PackageError{bookmark}{% + Unknown view type `\BKM@type',\MessageBreak + using `FitH' instead% + }\@ehc + \def\BKM@view{FitH}% + }% + \@nil +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@TestViewType} +% \begin{macrocode} +\def\BKM@TestViewType#1{% + \def\BKM@temp{#1}% + \@onelevel@sanitize\BKM@temp + \ifx\BKM@type\BKM@temp + \let\BKM@view\BKM@temp + \expandafter\@car + \else + \expandafter\@gobble + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{BKM@CheckParam} +% \begin{macrocode} +\def\BKM@CheckParam#1 #2\@nil#3{% + \def\BKM@param{#1}% + \ifx\BKM@param\@empty + \PackageWarning{bookmark}{% + Missing parameter (#3) for `\BKM@type',\MessageBreak + using 0% + }% + \def\BKM@param{0}% + \else + \BKM@CalcParam + \fi + \edef\BKM@view{\BKM@view\space\BKM@param}% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{BKM@CheckRect} +% \begin{macrocode} +\def\BKM@CheckRect#1#2{% + \BKM@@CheckRect#1#2#2#2#2\@nil +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@@CheckRect} +% \begin{macrocode} +\def\BKM@@CheckRect#1 #2 #3 #4 #5\@nil{% + \def\BKM@temp{0}% + \def\BKM@param{#1}% + \ifx\BKM@param\@empty + \def\BKM@param{0}% + \def\BKM@temp{1}% + \else + \BKM@CalcParam + \fi + \edef\BKM@view{\BKM@view\space\BKM@param}% + \def\BKM@param{#2}% + \ifx\BKM@param\@empty + \def\BKM@param{0}% + \def\BKM@temp{1}% + \else + \BKM@CalcParam + \fi + \edef\BKM@view{\BKM@view\space\BKM@param}% + \def\BKM@param{#3}% + \ifx\BKM@param\@empty + \def\BKM@param{0}% + \def\BKM@temp{1}% + \else + \BKM@CalcParam + \fi + \edef\BKM@view{\BKM@view\space\BKM@param}% + \def\BKM@param{#4}% + \ifx\BKM@param\@empty + \def\BKM@param{0}% + \def\BKM@temp{1}% + \else + \BKM@CalcParam + \fi + \edef\BKM@view{\BKM@view\space\BKM@param}% + \ifnum\BKM@temp>\z@ + \PackageWarning{bookmark}{Missing parameters for `\BKM@type'}% + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@CheckXYZ} +% \begin{macrocode} +\def\BKM@CheckXYZ#1#2{% + \BKM@@CheckXYZ#1#2#2#2\@nil +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@@CheckXYZ} +% \begin{macrocode} +\def\BKM@@CheckXYZ#1 #2 #3 #4\@nil{% + \def\BKM@param{#1}% + \let\BKM@temp\BKM@param + \@onelevel@sanitize\BKM@temp + \ifx\BKM@param\@empty + \let\BKM@param\BKM@null + \else + \ifx\BKM@temp\BKM@null + \else + \BKM@CalcParam + \fi + \fi + \edef\BKM@view{\BKM@view\space\BKM@param}% + \def\BKM@param{#2}% + \let\BKM@temp\BKM@param + \@onelevel@sanitize\BKM@temp + \ifx\BKM@param\@empty + \let\BKM@param\BKM@null + \else + \ifx\BKM@temp\BKM@null + \else + \BKM@CalcParam + \fi + \fi + \edef\BKM@view{\BKM@view\space\BKM@param}% + \def\BKM@param{#3}% + \ifx\BKM@param\@empty + \let\BKM@param\BKM@null + \fi + \edef\BKM@view{\BKM@view\space\BKM@param}% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@null} +% \begin{macrocode} +\def\BKM@null{null} +\@onelevel@sanitize\BKM@null +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\BKM@CalcParam} +% \begin{macrocode} +\def\BKM@CalcParam{% + \begingroup + \let\calc\@firstofone + \expandafter\BKM@@CalcParam\BKM@param\@empty\@empty\@nil +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@@CalcParam} +% \begin{macrocode} +\def\BKM@@CalcParam#1#2#3\@nil{% + \ifx\calc#1% + \@ifundefined{calc@assign@dimen}{% + \@ifundefined{dimexpr}{% + \setlength{\dimen@}{#2}% + }{% + \setlength{\dimen@}{\dimexpr#2\relax}% + }% + }{% + \setlength{\dimen@}{#2}% + }% + \dimen@.99626\dimen@ + \edef\BKM@param{\strip@pt\dimen@}% + \expandafter\endgroup + \expandafter\def\expandafter\BKM@param\expandafter{\BKM@param}% + \else + \endgroup + \fi +} +% \end{macrocode} +% \end{macro} +% +% \subsubsection{Option \xoption{atend}} +% +% \begin{macrocode} +\DeclareBoolOption{atend} +\g@addto@macro\BKM@DisableOptions{% + \DisableKeyvalOption[action=warning,package=bookmark]% + {BKM}{atend}% +} +% \end{macrocode} +% +% \subsubsection{Option \xoption{style}} +% +% \begin{macro}{\bookmarkdefinestyle} +% \begin{macrocode} +\newcommand*{\bookmarkdefinestyle}[2]{% + \@ifundefined{BKM@style@#1}{% + }{% + \PackageInfo{bookmark}{Redefining style `#1'}% + }% + \@namedef{BKM@style@#1}{#2}% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\define@key{BKM}{style}{% + \BKM@StyleCall{#1}% +} +\newif\ifBKM@ok +% \end{macrocode} +% \begin{macro}{\BKM@StyleCall} +% \begin{macrocode} +\def\BKM@StyleCall#1{% + \@ifundefined{BKM@style@#1}{% + \PackageWarning{bookmark}{% + Ignoring unknown style `#1'% + }% + }{% +% \end{macrocode} +% Check style stack. +% \begin{macrocode} + \BKM@oktrue + \edef\BKM@StyleCurrent{#1}% + \@onelevel@sanitize\BKM@StyleCurrent + \let\BKM@StyleEntry\BKM@StyleEntryCheck + \BKM@StyleStack + \ifBKM@ok + \expandafter\@firstofone + \else + \PackageError{bookmark}{% + Ignoring recursive call of style `\BKM@StyleCurrent'% + }\@ehc + \expandafter\@gobble + \fi + {% +% \end{macrocode} +% Push current style on stack. +% \begin{macrocode} + \let\BKM@StyleEntry\relax + \edef\BKM@StyleStack{% + \BKM@StyleEntry{\BKM@StyleCurrent}% + \BKM@StyleStack + }% +% \end{macrocode} +% Call style. +% \begin{macrocode} + \expandafter\expandafter\expandafter\bookmarksetup + \expandafter\expandafter\expandafter{% + \csname BKM@style@\BKM@StyleCurrent\endcsname + }% +% \end{macrocode} +% Pop current style from stack. +% \begin{macrocode} + \BKM@StyleStackPop + }% + }% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@StyleStackPop} +% \begin{macrocode} +\def\BKM@StyleStackPop{% + \let\BKM@StyleEntry\relax + \edef\BKM@StyleStack{% + \expandafter\@gobbletwo\BKM@StyleStack + }% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@StyleEntryCheck} +% \begin{macrocode} +\def\BKM@StyleEntryCheck#1{% + \def\BKM@temp{#1}% + \ifx\BKM@temp\BKM@StyleCurrent + \BKM@okfalse + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@StyleStack} +% \begin{macrocode} +\def\BKM@StyleStack{} +% \end{macrocode} +% \end{macro} +% +% \subsubsection{Options for source file location} +% +% \begin{macrocode} +\DeclareStringOption{srcline} +\DeclareStringOption{srcfile} +% \end{macrocode} +% +% \subsubsection{Hook support} +% +% \begin{macro}{\BKM@hook} +% \begin{macrocode} +\def\BKM@hook{} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\define@key{BKM}{addtohook}{% + \ltx@LocalAppendToMacro\BKM@hook{#1}% +} +% \end{macrocode} +% +% \begin{macro}{bookmarkget} +% \begin{macrocode} +\newcommand*{\bookmarkget}[1]{% + \romannumeral0% + \ltx@ifundefined{bookmark@#1}{% + \ltx@space + }{% + \expandafter\expandafter\expandafter\ltx@space + \csname bookmark@#1\endcsname + }% +} +% \end{macrocode} +% \end{macro} +% +% \subsubsection{Driver setup and loading} +% +% \paragraph{Driver detection.} +% +% \begin{macro}{\BKM@DefineDriverKey} +% \begin{macrocode} +\def\BKM@DefineDriverKey#1{% + \define@key{BKM}{#1}[]{% + \def\BKM@driver{#1}% + }% + \g@addto@macro\BKM@DisableOptions{% + \DisableKeyvalOption[action=warning,package=bookmark]% + {BKM}{#1}% + }% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\BKM@DefineDriverKey{pdftex} +\BKM@DefineDriverKey{dvips} +\BKM@DefineDriverKey{dvipsone} +\BKM@DefineDriverKey{textures} +\BKM@DefineDriverKey{dvipdfm} +\BKM@DefineDriverKey{dvipdfmx} +\BKM@DefineDriverKey{xetex} +\BKM@DefineDriverKey{vtex} +\define@key{BKM}{dvipdfmx-outline-open}[true]{% + \expandafter\ifx\csname if#1\expandafter\endcsname + \csname iftrue\endcsname + \chardef\SpecialDvipdfmxOutlineOpen\@ne + \else + \chardef\SpecialDvipdfmxOutlineOpen\z@ + \fi +} +\g@addto@macro\BKM@DisableOptions{% + \DisableKeyvalOption{BKM}{dvipdfmx-outline-open}% +} +% \end{macrocode} +% \begin{macro}{\bookmark@driver} +% \begin{macrocode} +\def\bookmark@driver{\BKM@driver} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\InputIfFileExists{bookmark.cfg}{}{} +% \end{macrocode} +% \begin{macro}{\BookmarkDriverDefault} +% \begin{macrocode} +\providecommand*{\BookmarkDriverDefault}{dvips} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@driver} +% Lua\TeX\ and pdf\TeX\ share driver. +% \begin{macrocode} +\ifpdf + \def\BKM@driver{pdftex}% + \ifx\pdfoutline\@undefined + \ifx\pdfextension\@undefined\else + \protected\def\pdfoutline{\pdfextension outline } + \fi + \fi +\else + \ifxetex + \def\BKM@driver{dvipdfm}% + \else + \ifvtex + \def\BKM@driver{vtex}% + \else + \edef\BKM@driver{\BookmarkDriverDefault}% + \fi + \fi +\fi +% \end{macrocode} +% \end{macro} +% +% \paragraph{Process options.} +% +% \begin{macrocode} +\ProcessKeyvalOptions* +\BKM@DisableOptions +% \end{macrocode} +% +% \paragraph{Option \xoption{draft}} +% +% \begin{macrocode} +\ifBKM@draft + \PackageWarningNoLine{bookmark}{Draft mode on}% + \let\bookmarksetup\ltx@gobble + \let\BookmarkAtEnd\ltx@gobble + \let\bookmarkdefinestyle\ltx@gobbletwo + \let\bookmarkget\ltx@gobble + \let\pdfbookmark\ltx@undefined + \newcommand*{\pdfbookmark}[3][]{}% + \let\currentpdfbookmark\ltx@gobbletwo + \let\subpdfbookmark\ltx@gobbletwo + \let\belowpdfbookmark\ltx@gobbletwo + \newcommand*{\bookmark}[2][]{}% + \renewcommand*{\Hy@writebookmark}[5]{}% + \let\ReadBookmarks\relax + \let\BKM@DefGotoNameAction\ltx@gobbletwo % package `hypdestopt' + \expandafter\endinput +\fi +% \end{macrocode} +% +% \paragraph{Driver validation and loading.} +% +% \begin{macrocode} +\newif\ifBKM@DvipdfmxOutlineOpen +\ltx@IfUndefined{SpecialDvipdfmxOutlineOpen}{% + \ifxetex + \ifdim\number\XeTeXversion\XeTeXrevision in<0.9995in % + \else + \chardef\SpecialDvipdfmxOutlineOpen\ltx@one + \BKM@DvipdfmxOutlineOpentrue + \fi + \fi +}{% + \ifnum\SpecialDvipdfmxOutlineOpen>\z@ + \BKM@DvipdfmxOutlineOpentrue + \fi +} +% \end{macrocode} +% \begin{macrocode} +\def\BKM@temp{dvipdfmx}% +\ifx\BKM@temp\BKM@driver + \def\BKM@driver{dvipdfm}% +\fi +\def\BKM@temp{pdftex}% +\ifpdf + \ifx\BKM@temp\BKM@driver + \else + \PackageWarningNoLine{bookmark}{% + Wrong driver `\BKM@driver', using `pdftex' instead% + }% + \let\BKM@driver\BKM@temp + \fi +\else + \ifx\BKM@temp\BKM@driver + \PackageError{bookmark}{% + Wrong driver, pdfTeX is not running in PDF mode.\MessageBreak + Package loading is aborted% + }\@ehc + \expandafter\expandafter\expandafter\endinput + \fi + \def\BKM@temp{dvipdfm}% + \ifxetex + \ifx\BKM@temp\BKM@driver + \else + \PackageWarningNoLine{bookmark}{% + Wrong driver `\BKM@driver',\MessageBreak + using `dvipdfm' for XeTeX instead% + }% + \let\BKM@driver\BKM@temp + \fi + \else + \def\BKM@temp{vtex}% + \ifvtex + \ifx\BKM@temp\BKM@driver + \else + \PackageWarningNoLine{bookmark}{% + Wrong driver `\BKM@driver',\MessageBreak + using `vtex' for VTeX instead% + }% + \let\BKM@driver\BKM@temp + \fi + \else + \ifx\BKM@temp\BKM@driver + \PackageError{bookmark}{% + Wrong driver, VTeX is not running in PDF mode.\MessageBreak + Package loading is aborted% + }\@ehc + \expandafter\expandafter\expandafter\endinput + \fi + \fi + \fi +\fi +\InputIfFileExists{bkm-\BKM@driver.def}{}{% + \PackageError{bookmark}{% + Unsupported driver `\BKM@driver'.\MessageBreak + Package loading is aborted% + }\@ehc + \endinput +} +% \end{macrocode} +% +% \subsubsection{Compatibility for \xpackage{hyperref}} +% +% \begin{macro}{\pdfbookmark} +% \begin{macrocode} +\let\pdfbookmark\ltx@undefined +\newcommand*{\pdfbookmark}[3][0]{% + \bookmark[level=#1,dest={#3.#1}]{#2}% + \hyper@anchorstart{#3.#1}\hyper@anchorend +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\currentpdfbookmark} +% \begin{macrocode} +\def\currentpdfbookmark{% + \pdfbookmark[\BKM@currentlevel]% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\subpdfbookmark} +% \begin{macrocode} +\def\subpdfbookmark{% + \BKM@CalcExpr\BKM@CalcResult\BKM@currentlevel+1% + \expandafter\pdfbookmark\expandafter[\BKM@CalcResult]% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\belowpdfbookmark} +% \begin{macrocode} +\def\belowpdfbookmark#1#2{% + \xdef\BKM@gtemp{\number\BKM@currentlevel}% + \subpdfbookmark{#1}{#2}% + \global\let\BKM@currentlevel\BKM@gtemp +} +% \end{macrocode} +% \end{macro} +% +% Section number, text, label, level, file +% \begin{macro}{\Hy@writebookmark} +% \begin{macrocode} +\def\Hy@writebookmark#1#2#3#4#5{% + \ifnum#4>\BKM@depth\relax + \else + \def\BKM@type{#5}% + \ifx\BKM@type\Hy@bookmarkstype + \begingroup + \ifBKM@numbered + \let\numberline\Hy@numberline + \let\booknumberline\Hy@numberline + \let\partnumberline\Hy@numberline + \let\chapternumberline\Hy@numberline + \else + \let\numberline\@gobble + \let\booknumberline\@gobble + \let\partnumberline\@gobble + \let\chapternumberline\@gobble + \fi + \bookmark[level=#4,dest={#3}]{#2}% + \endgroup + \fi + \fi +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\ReadBookmarks} +% \begin{macrocode} +\let\ReadBookmarks\relax +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} +% +% \end{macrocode} +% +% \subsection{Driver for dvipdfm} +% +% \begin{macrocode} +%<*dvipdfm> +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{bkm-dvipdfm.def}% + [2019/12/03 v1.28 bookmark driver for dvipdfm (HO)]% +% \end{macrocode} +% +% \begin{macro}{\BKM@id} +% \begin{macrocode} +\newcount\BKM@id +\BKM@id=\z@ +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\BKM@0} +% \begin{macrocode} +\@namedef{BKM@0}{000} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\ifBKM@sw} +% \begin{macrocode} +\newif\ifBKM@sw +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\bookmark} +% \begin{macrocode} +\newcommand*{\bookmark}[2][]{% + \if@filesw + \begingroup + \def\bookmark@text{#2}% + \BKM@setup{#1}% + \edef\BKM@prev{\the\BKM@id}% + \global\advance\BKM@id\@ne + \BKM@swtrue + \@whilesw\ifBKM@sw\fi{% + \def\BKM@abslevel{1}% + \ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@ + \BKM@startatrootfalse + \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% + 0{\BKM@level}\BKM@abslevel + }% + \BKM@swfalse + \else + \expandafter\expandafter\expandafter\BKM@getx + \csname BKM@\BKM@prev\endcsname + \ifnum\BKM@level>\BKM@x@level\relax + \BKM@CalcExpr\BKM@abslevel\BKM@x@abslevel+1% + \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% + {\BKM@prev}{\BKM@level}\BKM@abslevel + }% + \BKM@swfalse + \else + \let\BKM@prev\BKM@x@parent + \fi + \fi + }% + \csname HyPsd@XeTeXBigCharstrue\endcsname + \pdfstringdef\BKM@title{\bookmark@text}% + \edef\BKM@FLAGS{\BKM@PrintStyle}% + \let\BKM@action\@empty + \ifx\BKM@gotor\@empty + \ifx\BKM@dest\@empty + \ifx\BKM@named\@empty + \ifx\BKM@rawaction\@empty + \ifx\BKM@uri\@empty + \ifx\BKM@page\@empty + \PackageError{bookmark}{Missing action}\@ehc + \edef\BKM@action{/Dest[@page1/Fit]}% + \else + \ifx\BKM@view\@empty + \def\BKM@view{Fit}% + \fi + \edef\BKM@action{/Dest[@page\BKM@page/\BKM@view]}% + \fi + \else + \BKM@EscapeString\BKM@uri + \edef\BKM@action{% + /A<<% + /S/URI% + /URI(\BKM@uri)% + >>% + }% + \fi + \else + \edef\BKM@action{/A<<\BKM@rawaction>>}% + \fi + \else + \BKM@EscapeName\BKM@named + \edef\BKM@action{% + /A<>% + }% + \fi + \else + \BKM@EscapeString\BKM@dest + \edef\BKM@action{% + /A<<% + /S/GoTo% + /D(\BKM@dest)% + >>% + }% + \fi + \else + \ifx\BKM@dest\@empty + \ifx\BKM@page\@empty + \def\BKM@page{0}% + \else + \BKM@CalcExpr\BKM@page\BKM@page-1% + \fi + \ifx\BKM@view\@empty + \def\BKM@view{Fit}% + \fi + \edef\BKM@action{/D[\BKM@page/\BKM@view]}% + \else + \BKM@EscapeString\BKM@dest + \edef\BKM@action{/D(\BKM@dest)}% + \fi + \BKM@EscapeString\BKM@gotor + \edef\BKM@action{% + /A<<% + /S/GoToR% + /F(\BKM@gotor)% + \BKM@action + >>% + }% + \fi + \special{pdf:% + out \ifBKM@DvipdfmxOutlineOpen + [% + \ifBKM@open + \ifnum\BKM@level<% + \expandafter\ltx@firstofone\expandafter + {\number\BKM@openlevel} % + \else + -% + \fi + \else + -% + \fi + ] % + \fi + \BKM@abslevel + <<% + /Title(\BKM@title)% + \ifx\BKM@color\@empty + \else + /C[\BKM@color]% + \fi + \ifnum\BKM@FLAGS>\z@ + /F \BKM@FLAGS + \fi + \BKM@action + >>% + }% + \endgroup + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@getx} +% \begin{macrocode} +\def\BKM@getx#1#2#3{% + \def\BKM@x@parent{#1}% + \def\BKM@x@level{#2}% + \def\BKM@x@abslevel{#3}% +} +% \end{macrocode} +% \end{macro} +% +% \begin{macrocode} +% +% \end{macrocode} +% +% \subsection{Driver for \hologo{VTeX}} +% +% \begin{macrocode} +%<*vtex> +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{bkm-vtex.def}% + [2019/12/03 v1.28 bookmark driver for VTeX (HO)]% +% \end{macrocode} +% +% \begin{macrocode} +\ifvtexpdf +\else + \PackageWarningNoLine{bookmark}{% + The VTeX driver only supports PDF mode% + }% +\fi +% \end{macrocode} +% +% \begin{macro}{\BKM@id} +% \begin{macrocode} +\newcount\BKM@id +\BKM@id=\z@ +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\BKM@0} +% \begin{macrocode} +\@namedef{BKM@0}{00} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\ifBKM@sw} +% \begin{macrocode} +\newif\ifBKM@sw +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\bookmark} +% \begin{macrocode} +\newcommand*{\bookmark}[2][]{% + \if@filesw + \begingroup + \def\bookmark@text{#2}% + \BKM@setup{#1}% + \edef\BKM@prev{\the\BKM@id}% + \global\advance\BKM@id\@ne + \BKM@swtrue + \@whilesw\ifBKM@sw\fi{% + \ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@ + \BKM@startatrootfalse + \def\BKM@parent{0}% + \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% + 0{\BKM@level}% + }% + \BKM@swfalse + \else + \expandafter\expandafter\expandafter\BKM@getx + \csname BKM@\BKM@prev\endcsname + \ifnum\BKM@level>\BKM@x@level\relax + \let\BKM@parent\BKM@prev + \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% + {\BKM@prev}{\BKM@level}% + }% + \BKM@swfalse + \else + \let\BKM@prev\BKM@x@parent + \fi + \fi + }% + \pdfstringdef\BKM@title{\bookmark@text}% + \BKM@vtex@title + \edef\BKM@FLAGS{\BKM@PrintStyle}% + \let\BKM@action\@empty + \ifx\BKM@gotor\@empty + \ifx\BKM@dest\@empty + \ifx\BKM@named\@empty + \ifx\BKM@rawaction\@empty + \ifx\BKM@uri\@empty + \ifx\BKM@page\@empty + \PackageError{bookmark}{Missing action}\@ehc + \def\BKM@action{!1}% + \else + \edef\BKM@action{!\BKM@page}% + \fi + \else + \BKM@EscapeString\BKM@uri + \edef\BKM@action{% + % + }% + \fi + \else + \edef\BKM@action{}% + \fi + \else + \BKM@EscapeName\BKM@named + \edef\BKM@action{% + % + }% + \fi + \else + \BKM@EscapeString\BKM@dest + \edef\BKM@action{\BKM@dest}% + \fi + \else + \ifx\BKM@dest\@empty + \ifx\BKM@page\@empty + \def\BKM@page{1}% + \fi + \ifx\BKM@view\@empty + \def\BKM@view{Fit}% + \fi + \edef\BKM@action{/D[\BKM@page/\BKM@view]}% + \else + \BKM@EscapeString\BKM@dest + \edef\BKM@action{/D(\BKM@dest)}% + \fi + \BKM@EscapeString\BKM@gotor + \edef\BKM@action{% + >% + }% + \fi + \ifx\BKM@color\@empty + \let\BKM@RGBcolor\@empty + \else + \expandafter\BKM@toRGB\BKM@color\@nil + \fi + \special{% + !outline \BKM@action;% + p=\BKM@parent,% + i=\number\BKM@id,% + s=% + \ifBKM@open + \ifnum\BKM@level<\BKM@openlevel + o% + \else + c% + \fi + \else + c% + \fi,% + \ifx\BKM@RGBcolor\@empty + \else + c=\BKM@RGBcolor,% + \fi + \ifnum\BKM@FLAGS>\z@ + f=\BKM@FLAGS,% + \fi + t=\BKM@title + }% + \endgroup + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@getx} +% \begin{macrocode} +\def\BKM@getx#1#2{% + \def\BKM@x@parent{#1}% + \def\BKM@x@level{#2}% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@toRGB} +% \begin{macrocode} +\def\BKM@toRGB#1 #2 #3\@nil{% + \let\BKM@RGBcolor\@empty + \BKM@toRGBComponent{#1}% + \BKM@toRGBComponent{#2}% + \BKM@toRGBComponent{#3}% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@toRGBComponent} +% \begin{macrocode} +\def\BKM@toRGBComponent#1{% + \dimen@=#1pt\relax + \ifdim\dimen@>\z@ + \ifdim\dimen@<\p@ + \dimen@=255\dimen@ + \advance\dimen@ by 32768sp\relax + \divide\dimen@ by 65536\relax + \dimen@ii=\dimen@ + \divide\dimen@ii by 16\relax + \edef\BKM@RGBcolor{% + \BKM@RGBcolor + \BKM@toHexDigit\dimen@ii + }% + \dimen@ii=16\dimen@ii + \advance\dimen@-\dimen@ii + \edef\BKM@RGBcolor{% + \BKM@RGBcolor + \BKM@toHexDigit\dimen@ + }% + \else + \edef\BKM@RGBcolor{\BKM@RGBcolor FF}% + \fi + \else + \edef\BKM@RGBcolor{\BKM@RGBcolor00}% + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@toHexDigit} +% \begin{macrocode} +\def\BKM@toHexDigit#1{% + \ifcase\expandafter\@firstofone\expandafter{\number#1} % + 0\or 1\or 2\or 3\or 4\or 5\or 6\or 7\or + 8\or 9\or A\or B\or C\or D\or E\or F% + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\begingroup + \catcode`\|=0 % + \catcode`\\=12 % +% \end{macrocode} +% \begin{macro}{\BKM@vtex@title} +% \begin{macrocode} + |gdef|BKM@vtex@title{% + |@onelevel@sanitize|BKM@title + |edef|BKM@title{|expandafter|BKM@vtex@leftparen|BKM@title\(|@nil}% + |edef|BKM@title{|expandafter|BKM@vtex@rightparen|BKM@title\)|@nil}% + |edef|BKM@title{|expandafter|BKM@vtex@zero|BKM@title\0|@nil}% + |edef|BKM@title{|expandafter|BKM@vtex@one|BKM@title\1|@nil}% + |edef|BKM@title{|expandafter|BKM@vtex@two|BKM@title\2|@nil}% + |edef|BKM@title{|expandafter|BKM@vtex@three|BKM@title\3|@nil}% + }% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@vtex@leftparen} +% \begin{macrocode} + |gdef|BKM@vtex@leftparen#1\(#2|@nil{% + #1% + |ifx||#2||% + |else + (% + |ltx@ReturnAfterFi{% + |BKM@vtex@leftparen#2|@nil + }% + |fi + }% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@vtex@rightparen} +% \begin{macrocode} + |gdef|BKM@vtex@rightparen#1\)#2|@nil{% + #1% + |ifx||#2||% + |else + )% + |ltx@ReturnAfterFi{% + |BKM@vtex@rightparen#2|@nil + }% + |fi + }% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@vtex@zero} +% \begin{macrocode} + |gdef|BKM@vtex@zero#1\0#2|@nil{% + #1% + |ifx||#2||% + |else + |noexpand|hv@pdf@char0% + |ltx@ReturnAfterFi{% + |BKM@vtex@zero#2|@nil + }% + |fi + }% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@vtex@one} +% \begin{macrocode} + |gdef|BKM@vtex@one#1\1#2|@nil{% + #1% + |ifx||#2||% + |else + |noexpand|hv@pdf@char1% + |ltx@ReturnAfterFi{% + |BKM@vtex@one#2|@nil + }% + |fi + }% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@vtex@two} +% \begin{macrocode} + |gdef|BKM@vtex@two#1\2#2|@nil{% + #1% + |ifx||#2||% + |else + |noexpand|hv@pdf@char2% + |ltx@ReturnAfterFi{% + |BKM@vtex@two#2|@nil + }% + |fi + }% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@vtex@three} +% \begin{macrocode} + |gdef|BKM@vtex@three#1\3#2|@nil{% + #1% + |ifx||#2||% + |else + |noexpand|hv@pdf@char3% + |ltx@ReturnAfterFi{% + |BKM@vtex@three#2|@nil + }% + |fi + }% +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +|endgroup +% \end{macrocode} +% +% \begin{macrocode} +% +% \end{macrocode} +% +% \subsection{Driver for \hologo{pdfTeX}} +% +% \begin{macrocode} +%<*pdftex> +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{bkm-pdftex.def}% + [2019/12/03 v1.28 bookmark driver for pdfTeX (HO)]% +% \end{macrocode} +% +% \begin{macro}{\BKM@DO@entry} +% \begin{macrocode} +\def\BKM@DO@entry#1#2{% + \begingroup + \kvsetkeys{BKM@DO}{#1}% + \def\BKM@DO@title{#2}% + \ifx\BKM@DO@srcfile\@empty + \else + \BKM@UnescapeHex\BKM@DO@srcfile + \fi + \BKM@UnescapeHex\BKM@DO@title + \expandafter\expandafter\expandafter\BKM@getx + \csname BKM@\BKM@DO@id\endcsname\@empty\@empty + \let\BKM@attr\@empty + \ifx\BKM@DO@flags\@empty + \else + \edef\BKM@attr{\BKM@attr/F \BKM@DO@flags}% + \fi + \ifx\BKM@DO@color\@empty + \else + \edef\BKM@attr{\BKM@attr/C[\BKM@DO@color]}% + \fi + \ifx\BKM@attr\@empty + \else + \edef\BKM@attr{attr{\BKM@attr}}% + \fi + \let\BKM@action\@empty + \ifx\BKM@DO@gotor\@empty + \ifx\BKM@DO@dest\@empty + \ifx\BKM@DO@named\@empty + \ifx\BKM@DO@rawaction\@empty + \ifx\BKM@DO@uri\@empty + \ifx\BKM@DO@page\@empty + \PackageError{bookmark}{% + Missing action\BKM@SourceLocation + }\@ehc + \edef\BKM@action{goto page1{/Fit}}% + \else + \ifx\BKM@DO@view\@empty + \def\BKM@DO@view{Fit}% + \fi + \edef\BKM@action{goto page\BKM@DO@page{/\BKM@DO@view}}% + \fi + \else + \BKM@UnescapeHex\BKM@DO@uri + \BKM@EscapeString\BKM@DO@uri + \edef\BKM@action{user{<>}}% + \fi + \else + \BKM@UnescapeHex\BKM@DO@rawaction + \edef\BKM@action{% + user{% + <<% + \BKM@DO@rawaction + >>% + }% + }% + \fi + \else + \BKM@EscapeName\BKM@DO@named + \edef\BKM@action{% + user{<>}% + }% + \fi + \else + \BKM@UnescapeHex\BKM@DO@dest + \BKM@DefGotoNameAction\BKM@action\BKM@DO@dest + \fi + \else + \ifx\BKM@DO@dest\@empty + \ifx\BKM@DO@page\@empty + \def\BKM@DO@page{0}% + \else + \BKM@CalcExpr\BKM@DO@page\BKM@DO@page-1% + \fi + \ifx\BKM@DO@view\@empty + \def\BKM@DO@view{Fit}% + \fi + \edef\BKM@action{/D[\BKM@DO@page/\BKM@DO@view]}% + \else + \BKM@UnescapeHex\BKM@DO@dest + \BKM@EscapeString\BKM@DO@dest + \edef\BKM@action{/D(\BKM@DO@dest)}% + \fi + \BKM@UnescapeHex\BKM@DO@gotor + \BKM@EscapeString\BKM@DO@gotor + \edef\BKM@action{% + user{% + <<% + /S/GoToR% + /F(\BKM@DO@gotor)% + \BKM@action + >>% + }% + }% + \fi + \pdfoutline\BKM@attr\BKM@action + count\ifBKM@DO@open\else-\fi\BKM@x@childs + {\BKM@DO@title}% + \endgroup +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@DefGotoNameAction} +% Macro \cs{BKM@DefGotoNameAction} is a hook for +% package \xpackage{hypdestopt}. +% \begin{macrocode} +\def\BKM@DefGotoNameAction#1#2{% + \BKM@EscapeString\BKM@DO@dest + \edef#1{goto name{#2}}% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +% +% \end{macrocode} +% +% \begin{macrocode} +%<*pdftex|pdfmark> +% \end{macrocode} +% \begin{macro}{\BKM@SourceLocation} +% \begin{macrocode} +\def\BKM@SourceLocation{% + \ifx\BKM@DO@srcfile\@empty + \ifx\BKM@DO@srcline\@empty + \else + .\MessageBreak + Source: line \BKM@DO@srcline + \fi + \else + \ifx\BKM@DO@srcline\@empty + .\MessageBreak + Source: file `\BKM@DO@srcfile'% + \else + .\MessageBreak + Source: file `\BKM@DO@srcfile', line \BKM@DO@srcline + \fi + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +% +% \end{macrocode} +% +% \subsection{Drivers with pdfmark specials} +% +% \subsubsection{Driver dvips} +% +% \begin{macrocode} +%<*dvips> +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{bkm-dvips.def}% + [2019/12/03 v1.28 bookmark driver for dvips (HO)]% +% \end{macrocode} +% \begin{macro}{\BKM@PSHeaderFile} +% \begin{macrocode} +\def\BKM@PSHeaderFile#1{% + \special{header=#1}% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +% +% \end{macrocode} +% +% \subsubsection{Driver dvipsone} +% +% \begin{macrocode} +%<*dvipsone> +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{bkm-dvipsone.def}% + [2019/12/03 v1.28 bookmark driver for dvipsone (HO)]% +% \end{macrocode} +% \begin{macro}{\BKM@PSHeaderFile} +% \begin{macrocode} +\def\BKM@PSHeaderFile#1{% + \special{header=#1}% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +% +% \end{macrocode} +% +% \subsubsection{Driver textures} +% +% \begin{macrocode} +%<*textures> +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{bkm-textures.def}% + [2019/12/03 v1.28 bookmark driver for textures (HO)]% +% \end{macrocode} +% \begin{macro}{\BKM@PSHeaderFile} +% \begin{macrocode} +\def\BKM@PSHeaderFile#1{% + \special{prePostScriptfile #1}% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +% +% \end{macrocode} +% +% \subsubsection{Common part} +% +% \begin{macrocode} +%<*pdfmark> +% \end{macrocode} +% \begin{macro}{\BKM@filename} +% \begin{macrocode} +\def\BKM@filename{\jobname.out.ps} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\BKM@PSHeaderFile\BKM@filename +% \end{macrocode} +% +% \begin{macrocode} +\RequirePackage{atveryend}[2009/12/07] +\AfterLastShipout{\BKM@pdfmark@out} +% \end{macrocode} +% +% \begin{macro}{\BKM@pdfmark@out} +% Do not use package \xpackage{rerunfilecheck} here, because +% the file \cs{BKM@filename} is not read during the \hologo{TeX} run. +% \begin{macrocode} +\def\BKM@pdfmark@out{% + \if@filesw + \newwrite\BKM@file + \immediate\openout\BKM@file=\BKM@filename\relax + \BKM@write{\@percentchar!}% + \BKM@write{/pdfmark where{pop}}% + \BKM@write{% + {% + /globaldict where{pop globaldict}{userdict}ifelse% + /pdfmark/cleartomark load put% + }% + }% + \BKM@write{ifelse}% + \else + \let\BKM@write\@gobble + \let\BKM@DO@entry\@gobbletwo + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@write} +% \begin{macrocode} +\def\BKM@write#{% + \immediate\write\BKM@file +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\BKM@DO@entry} +% The specification for pdfmark says that |/Color| is the +% name of the key for color, however ghostscript only passes +% the key into the PDF file, thus the key name must be |/C|. +% \begin{macrocode} +\def\BKM@DO@entry#1#2{% + \begingroup + \kvsetkeys{BKM@DO}{#1}% + \ifx\BKM@DO@srcfile\@empty + \else + \BKM@UnescapeHex\BKM@DO@srcfile + \fi + \def\BKM@DO@title{#2}% + \BKM@UnescapeHex\BKM@DO@title + \expandafter\expandafter\expandafter\BKM@getx + \csname BKM@\BKM@DO@id\endcsname\@empty\@empty + \let\BKM@attr\@empty + \ifx\BKM@DO@flags\@empty + \else + \edef\BKM@attr{\BKM@attr/F \BKM@DO@flags}% + \fi + \ifx\BKM@DO@color\@empty + \else + \edef\BKM@attr{\BKM@attr/C[\BKM@DO@color]}% + \fi + \let\BKM@action\@empty + \ifx\BKM@DO@gotor\@empty + \ifx\BKM@DO@dest\@empty + \ifx\BKM@DO@named\@empty + \ifx\BKM@DO@rawaction\@empty + \ifx\BKM@DO@uri\@empty + \ifx\BKM@DO@page\@empty + \PackageError{bookmark}{% + Missing action\BKM@SourceLocation + }\@ehc + \edef\BKM@action{% + /Action/GoTo% + /Page 1% + /View[/Fit]% + }% + \else + \ifx\BKM@DO@view\@empty + \def\BKM@DO@view{Fit}% + \fi + \edef\BKM@action{% + /Action/GoTo% + /Page \BKM@DO@page + /View[/\BKM@DO@view]% + }% + \fi + \else + \BKM@UnescapeHex\BKM@DO@uri + \BKM@EscapeString\BKM@DO@uri + \edef\BKM@action{% + /Action<<% + /Subtype/URI% + /URI(\BKM@DO@uri)% + >>% + }% + \fi + \else + \BKM@UnescapeHex\BKM@DO@rawaction + \edef\BKM@action{% + /Action<<% + \BKM@DO@rawaction + >>% + }% + \fi + \else + \BKM@EscapeName\BKM@DO@named + \edef\BKM@action{% + /Action<<% + /Subtype/Named% + /N/\BKM@DO@named + >>% + }% + \fi + \else + \BKM@UnescapeHex\BKM@DO@dest + \BKM@EscapeString\BKM@DO@dest + \edef\BKM@action{% + /Action/GoTo% + /Dest(\BKM@DO@dest)cvn% + }% + \fi + \else + \ifx\BKM@DO@dest\@empty + \ifx\BKM@DO@page\@empty + \def\BKM@DO@page{1}% + \fi + \ifx\BKM@DO@view\@empty + \def\BKM@DO@view{Fit}% + \fi + \edef\BKM@action{% + /Page \BKM@DO@page + /View[/\BKM@DO@view]% + }% + \else + \BKM@UnescapeHex\BKM@DO@dest + \BKM@EscapeString\BKM@DO@dest + \edef\BKM@action{% + /Dest(\BKM@DO@dest)cvn% + }% + \fi + \BKM@UnescapeHex\BKM@DO@gotor + \BKM@EscapeString\BKM@DO@gotor + \edef\BKM@action{% + /Action/GoToR% + /File(\BKM@DO@gotor)% + \BKM@action + }% + \fi + \BKM@write{[}% + \BKM@write{/Title(\BKM@DO@title)}% + \ifnum\BKM@x@childs>\z@ + \BKM@write{/Count \ifBKM@DO@open\else-\fi\BKM@x@childs}% + \fi + \ifx\BKM@attr\@empty + \else + \BKM@write{\BKM@attr}% + \fi + \BKM@write{\BKM@action}% + \BKM@write{/OUT pdfmark}% + \endgroup +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +% +% \end{macrocode} +% +% \subsection{Common part for \xoption{pdftex} and \xoption{pdfmark}} +% +% \begin{macrocode} +%<*pdftex|pdfmark> +% \end{macrocode} +% +% \subsubsection{Write auxiliary file} +% +% \begin{macrocode} +\RequirePackage{auxhook} +% \end{macrocode} +% \begin{macrocode} +\AddLineBeginMainAux{% + \string\providecommand\string\BKM@entry[2]{}% +} +% \end{macrocode} +% +% \begin{macro}{\BKM@id} +% \begin{macrocode} +\newcount\BKM@id +\BKM@id=\z@ +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\BKM@0} +% \begin{macrocode} +\@namedef{BKM@0}{000} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\ifBKM@sw} +% \begin{macrocode} +\newif\ifBKM@sw +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\bookmark} +% \begin{macrocode} +\newcommand*{\bookmark}[2][]{% + \if@filesw + \begingroup + \BKM@InitSourceLocation + \def\bookmark@text{#2}% + \BKM@setup{#1}% + \ifx\BKM@srcfile\@empty + \else + \BKM@EscapeHex\BKM@srcfile + \fi + \edef\BKM@prev{\the\BKM@id}% + \global\advance\BKM@id\@ne + \BKM@swtrue + \@whilesw\ifBKM@sw\fi{% + \ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@ + \BKM@startatrootfalse + \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% + 0{\BKM@level}0% + }% + \BKM@swfalse + \else + \expandafter\expandafter\expandafter\BKM@getx + \csname BKM@\BKM@prev\endcsname + \ifnum\BKM@level>\BKM@x@level\relax + \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% + {\BKM@prev}{\BKM@level}0% + }% + \ifnum\BKM@prev>\z@ + \BKM@CalcExpr\BKM@CalcResult\BKM@x@childs+1% + \expandafter\xdef\csname BKM@\BKM@prev\endcsname{% + {\BKM@x@parent}{\BKM@x@level}{\BKM@CalcResult}% + }% + \fi + \BKM@swfalse + \else + \let\BKM@prev\BKM@x@parent + \fi + \fi + }% + \pdfstringdef\BKM@title{\bookmark@text}% + \edef\BKM@FLAGS{\BKM@PrintStyle}% + \csname BKM@HypDestOptHook\endcsname + \BKM@EscapeHex\BKM@dest + \BKM@EscapeHex\BKM@uri + \BKM@EscapeHex\BKM@gotor + \BKM@EscapeHex\BKM@rawaction + \BKM@EscapeHex\BKM@title + \immediate\write\@mainaux{% + \string\BKM@entry{% + id=\number\BKM@id + \ifBKM@open + \ifnum\BKM@level<\BKM@openlevel + ,open% + \fi + \fi + \BKM@auxentry{dest}% + \BKM@auxentry{named}% + \BKM@auxentry{uri}% + \BKM@auxentry{gotor}% + \BKM@auxentry{page}% + \BKM@auxentry{view}% + \BKM@auxentry{rawaction}% + \BKM@auxentry{color}% + \ifnum\BKM@FLAGS>\z@ + ,flags=\BKM@FLAGS + \fi + \BKM@auxentry{srcline}% + \BKM@auxentry{srcfile}% + }{\BKM@title}% + }% + \endgroup + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@getx} +% \begin{macrocode} +\def\BKM@getx#1#2#3{% + \def\BKM@x@parent{#1}% + \def\BKM@x@level{#2}% + \def\BKM@x@childs{#3}% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@auxentry} +% \begin{macrocode} +\def\BKM@auxentry#1{% + \expandafter\ifx\csname BKM@#1\endcsname\@empty + \else + ,#1={\csname BKM@#1\endcsname}% + \fi +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\BKM@InitSourceLocation} +% \begin{macrocode} +\def\BKM@InitSourceLocation{% + \edef\BKM@srcline{\the\inputlineno}% + \BKM@LuaTeX@InitFile + \ifx\BKM@srcfile\@empty + \ltx@IfUndefined{currfilepath}{}{% + \edef\BKM@srcfile{\currfilepath}% + }% + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\BKM@LuaTeX@InitFile} +% \begin{macrocode} +\ifluatex + \ifnum\luatexversion>36 % + \def\BKM@LuaTeX@InitFile{% + \begingroup + \ltx@LocToksA={}% + \edef\x{\endgroup + \def\noexpand\BKM@srcfile{% + \the\expandafter\ltx@LocToksA + \directlua{% + if status and status.filename then % + tex.settoks('ltx@LocToksA', status.filename)% + end% + }% + }% + }\x + }% + \else + \let\BKM@LuaTeX@InitFile\relax + \fi +\else + \let\BKM@LuaTeX@InitFile\relax +\fi +% \end{macrocode} +% \end{macro} +% +% \subsubsection{Read auxiliary data} +% +% \begin{macrocode} +\SetupKeyvalOptions{family=BKM@DO,prefix=BKM@DO@} +\DeclareStringOption[0]{id} +\DeclareBoolOption{open} +\DeclareStringOption{flags} +\DeclareStringOption{color} +\DeclareStringOption{dest} +\DeclareStringOption{named} +\DeclareStringOption{uri} +\DeclareStringOption{gotor} +\DeclareStringOption{page} +\DeclareStringOption{view} +\DeclareStringOption{rawaction} +\DeclareStringOption{srcline} +\DeclareStringOption{srcfile} +% \end{macrocode} +% +% \begin{macrocode} +\AtBeginDocument{% + \let\BKM@entry\BKM@DO@entry +} +% \end{macrocode} +% +% \begin{macrocode} +% +% \end{macrocode} +% +% \subsection{Option \xoption{atend}} +% +% \subsubsection{Hook} +% +% \begin{macrocode} +%<*package> +% \end{macrocode} +% \begin{macrocode} +\ifBKM@atend +\else +% \end{macrocode} +% \begin{macro}{\BookmarkAtEnd} +% This is a dummy definition that generates a warning +% if option \xoption{atend} has not been given. +% \begin{macrocode} + \newcommand{\BookmarkAtEnd}[1]{% + \PackageWarning{bookmark}{% + Ignored, because option `atend' is missing% + }% + }% +% \end{macrocode} +% \end{macro} +% \begin{macrocode} + \expandafter\endinput +\fi +% \end{macrocode} +% \begin{macro}{\BookmarkAtEnd} +% \begin{macrocode} +\newcommand*{\BookmarkAtEnd}{% + \g@addto@macro\BKM@EndHook +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\let\BKM@EndHook\@empty +% \end{macrocode} +% \begin{macrocode} +% +% \end{macrocode} +% +% \subsubsection{Drivers using hooks at end of document} +% +% The following drivers use package \xpackage{atveryend}'s +% \cs{AfterLastShipout}, because they still need the +% \xext{aux} file. +% \begin{itemize} +% \item +% Driver \xoption{pdftex} uses \cs{pdfoutline} that can +% be used after the last page. +% \item +% PostScript drivers such as +% \xoption{dvips} use an external PostScript header file +% for the bookmarks. File writing can be done after +% the last shipout page, but before the \xext{aux} file is closed. +% \end{itemize} +% \begin{macrocode} +%<*pdftex|pdfmark> +\ifBKM@atend + \AfterLastShipout{% + \BKM@EndHook + }% +\fi +% +% \end{macrocode} +% +% \subsubsection{Drivers using \cs{AtEndDvi}} +% +% The other drivers implement \cs{bookmark} using \cs{special} +% commands. Thus the last bookmarks must be put on the last page, +% not afterwards. +% \cs{AtEndDocument} cannot be used, because it is too late, the +% last page can already be output. Therefore we use package +% \xpackage{atenddvi} that uses the help of packages \xpackage{atbegshi} +% and \xpackage{zref}. The argument of \cs{AtEndDvi} is put +% at the end of the last page. At least two \hologo{LaTeX} runs are necessary. +% \begin{macrocode} +%<*dvipdfm|vtex> +\ifBKM@atend + \RequirePackage{atenddvi}% + \AtEndDvi{\BKM@EndHook}% +\fi +% +% \end{macrocode} +% +% \section{Installation} +% +% \subsection{Download} +% +% \paragraph{Package.} This package is available on +% CTAN\footnote{\CTANpkg{bookmark}}: +% \begin{description} +% \item[\CTAN{macros/latex/contrib/bookmark/bookmark.dtx}] The source file. +% \item[\CTAN{macros/latex/contrib/bookmark/bookmark.pdf}] Documentation. +% \end{description} +% +% +% \paragraph{Bundle.} All the packages of the bundle `bookmark' +% are also available in a TDS compliant ZIP archive. There +% the packages are already unpacked and the documentation files +% are generated. The files and directories obey the TDS standard. +% \begin{description} +% \item[\CTANinstall{install/macros/latex/contrib/bookmark.tds.zip}] +% \end{description} +% \emph{TDS} refers to the standard ``A Directory Structure +% for \TeX\ Files'' (\CTANpkg{tds}). Directories +% with \xfile{texmf} in their name are usually organized this way. +% +% \subsection{Bundle installation} +% +% \paragraph{Unpacking.} Unpack the \xfile{bookmark.tds.zip} in the +% TDS tree (also known as \xfile{texmf} tree) of your choice. +% Example (linux): +% \begin{quote} +% |unzip bookmark.tds.zip -d ~/texmf| +% \end{quote} +% +% \subsection{Package installation} +% +% \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting +% \docstrip\ archive. The files are extracted by running the +% \xfile{.dtx} through \plainTeX: +% \begin{quote} +% \verb|tex bookmark.dtx| +% \end{quote} +% +% \paragraph{TDS.} Now the different files must be moved into +% the different directories in your installation TDS tree +% (also known as \xfile{texmf} tree): +% \begin{quote} +% \def\t{^^A +% \begin{tabular}{@{}>{\ttfamily}l@{ $\rightarrow$ }>{\ttfamily}l@{}} +% bookmark.sty & tex/latex/bookmark/bookmark.sty\\ +% bkm-dvipdfm.def & tex/latex/bookmark/bkm-dvipdfm.def\\ +% bkm-dvips.def & tex/latex/bookmark/bkm-dvips.def\\ +% bkm-dvipsone.def & tex/latex/bookmark/bkm-dvipsone.def\\ +% bkm-textures.def & tex/latex/bookmark/bkm-textures.def\\ +% bkm-pdftex.def & tex/latex/bookmark/bkm-pdftex.def\\ +% bkm-vtex.def & tex/latex/bookmark/bkm-vtex.def\\ +% bookmark.pdf & doc/latex/bookmark/bookmark.pdf\\ +% bookmark-example.tex & doc/latex/bookmark/bookmark-example.tex\\ +% bookmark.dtx & source/latex/bookmark/bookmark.dtx\\ +% \end{tabular}^^A +% }^^A +% \sbox0{\t}^^A +% \ifdim\wd0>\linewidth +% \begingroup +% \advance\linewidth by\leftmargin +% \advance\linewidth by\rightmargin +% \edef\x{\endgroup +% \def\noexpand\lw{\the\linewidth}^^A +% }\x +% \def\lwbox{^^A +% \leavevmode +% \hbox to \linewidth{^^A +% \kern-\leftmargin\relax +% \hss +% \usebox0 +% \hss +% \kern-\rightmargin\relax +% }^^A +% }^^A +% \ifdim\wd0>\lw +% \sbox0{\small\t}^^A +% \ifdim\wd0>\linewidth +% \ifdim\wd0>\lw +% \sbox0{\footnotesize\t}^^A +% \ifdim\wd0>\linewidth +% \ifdim\wd0>\lw +% \sbox0{\scriptsize\t}^^A +% \ifdim\wd0>\linewidth +% \ifdim\wd0>\lw +% \sbox0{\tiny\t}^^A +% \ifdim\wd0>\linewidth +% \lwbox +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \end{quote} +% If you have a \xfile{docstrip.cfg} that configures and enables \docstrip's +% TDS installing feature, then some files can already be in the right +% place, see the documentation of \docstrip. +% +% \subsection{Refresh file name databases} +% +% If your \TeX~distribution +% (\TeX\,Live, \mikTeX, \dots) relies on file name databases, you must refresh +% these. For example, \TeX\,Live\ users run \verb|texhash| or +% \verb|mktexlsr|. +% +% \subsection{Some details for the interested} +% +% \paragraph{Unpacking with \LaTeX.} +% The \xfile{.dtx} chooses its action depending on the format: +% \begin{description} +% \item[\plainTeX:] Run \docstrip\ and extract the files. +% \item[\LaTeX:] Generate the documentation. +% \end{description} +% If you insist on using \LaTeX\ for \docstrip\ (really, +% \docstrip\ does not need \LaTeX), then inform the autodetect routine +% about your intention: +% \begin{quote} +% \verb|latex \let\install=y\input{bookmark.dtx}| +% \end{quote} +% Do not forget to quote the argument according to the demands +% of your shell. +% +% \paragraph{Generating the documentation.} +% You can use both the \xfile{.dtx} or the \xfile{.drv} to generate +% the documentation. The process can be configured by the +% configuration file \xfile{ltxdoc.cfg}. For instance, put this +% line into this file, if you want to have A4 as paper format: +% \begin{quote} +% \verb|\PassOptionsToClass{a4paper}{article}| +% \end{quote} +% An example follows how to generate the +% documentation with pdf\LaTeX: +% \begin{quote} +%\begin{verbatim} +%pdflatex bookmark.dtx +%makeindex -s gind.ist bookmark.idx +%pdflatex bookmark.dtx +%makeindex -s gind.ist bookmark.idx +%pdflatex bookmark.dtx +%\end{verbatim} +% \end{quote} +% +% \begin{thebibliography}{9} +% +% \bibitem{hyperref} +% Sebastian Rahtz, Heiko Oberdiek: +% \textit{The \xpackage{hyperref} package}; +% 2011/04/17 v6.82g; +% \CTANpkg{hyperref} +% +% \bibitem{currfile} +% Martin Scharrer: +% \textit{The \xpackage{currfile} package}; +% 2011/01/09 v0.4. +% \CTANpkg{currfile} +% +% \end{thebibliography} +% +% \begin{History} +% \begin{Version}{2007/02/19 v0.1} +% \item +% First experimental version. +% \end{Version} +% \begin{Version}{2007/02/20 v0.2} +% \item +% Option \xoption{startatroot} added. +% \item +% Dummies for \cs{pdf(un)escape...} commands added to get +% the package basically work for non-\hologo{pdfTeX} users. +% \end{Version} +% \begin{Version}{2007/02/21 v0.3} +% \item +% Dependency from \hologo{pdfTeX} 1.30 removed by using package +% \xpackage{pdfescape}. +% \end{Version} +% \begin{Version}{2007/02/22 v0.4} +% \item +% \xpackage{hyperref}'s \xoption{bookmarkstype} respected. +% \end{Version} +% \begin{Version}{2007/03/02 v0.5} +% \item +% Driver options \xoption{vtex} (PDF mode), \xoption{dvipsone}, +% and \xoption{textures} added. +% \item +% Implementation of option \xoption{depth} completed. Division names +% are supported, see \xpackage{hyperref}'s +% option \xoption{bookmarksdepth}. +% \item +% \xpackage{hyperref}'s options \xoption{bookmarksopen}, +% \xoption{bookmarksopenlevel}, and \xoption{bookmarksdepth} respected. +% \end{Version} +% \begin{Version}{2007/03/03 v0.6} +% \item +% Option \xoption{numbered} as alias for \xpackage{hyperref}'s +% \xoption{bookmarksnumbered}. +% \end{Version} +% \begin{Version}{2007/03/07 v0.7} +% \item +% Dependency from \hologo{eTeX} removed. +% \end{Version} +% \begin{Version}{2007/04/09 v0.8} +% \item +% Option \xoption{atend} added. +% \item +% Option \xoption{rgbcolor} removed. +% \verb|rgbcolor= | can be replaced by +% \verb|color=[rgb]{,,}|. +% \item +% Support of recent cvs version (2007-03-29) of dvipdfmx +% that extends the \cs{special} for bookmarks to specify +% open outline entries. Option \xoption{dvipdfmx-outline-open} +% or \cs{SpecialDvipdfmxOutlineOpen} notify the package. +% \end{Version} +% \begin{Version}{2007/04/25 v0.9} +% \item +% The syntax of \cs{special} of dvipdfmx, if feature +% \xoption{dvipdfmx-outline-open} is enabled, has changed. +% Now cvs version 2007-04-25 is needed. +% \end{Version} +% \begin{Version}{2007/05/29 v1.0} +% \item +% Bug fix in code for second parameter of XYZ. +% \end{Version} +% \begin{Version}{2007/07/13 v1.1} +% \item +% Fix for pdfmark with GoToR action. +% \end{Version} +% \begin{Version}{2007/09/25 v1.2} +% \item +% pdfmark driver respects \cs{nofiles}. +% \end{Version} +% \begin{Version}{2008/08/08 v1.3} +% \item +% Package \xpackage{flags} replaced by package \xpackage{bitset}. +% Now flags are also supported without \hologo{eTeX}. +% \item +% Hook for package \xpackage{hypdestopt} added. +% \end{Version} +% \begin{Version}{2008/09/13 v1.4} +% \item +% Fix for bug introduced in v1.3, package \xpackage{flags} is one-based, +% but package \xpackage{bitset} is zero-based. Thus options \xoption{bold} +% and \xoption{italic} are wrong in v1.3. (Daniel M\"ullner) +% \end{Version} +% \begin{Version}{2009/08/13 v1.5} +% \item +% Except for driver options the other options are now local options. +% This resolves a problem with KOMA-Script v3.00 and its option \xoption{open}. +% \end{Version} +% \begin{Version}{2009/12/06 v1.6} +% \item +% Use of package \xpackage{atveryend} for drivers \xoption{pdftex} +% and \xoption{pdfmark}. +% \end{Version} +% \begin{Version}{2009/12/07 v1.7} +% \item +% Use of package \xpackage{atveryend} fixed. +% \end{Version} +% \begin{Version}{2009/12/17 v1.8} +% \item +% Support of \xpackage{hyperref} 2009/12/17 v6.79v for \hologo{XeTeX}. +% \end{Version} +% \begin{Version}{2010/03/30 v1.9} +% \item +% Package name in an error message fixed. +% \end{Version} +% \begin{Version}{2010/04/03 v1.10} +% \item +% Option \xoption{style} and macro \cs{bookmarkdefinestyle} added. +% \item +% Hook support with option \xoption{addtohook} added. +% \item +% \cs{bookmarkget} added. +% \end{Version} +% \begin{Version}{2010/04/04 v1.11} +% \item +% Bug fix (introduced in v1.10). +% \end{Version} +% \begin{Version}{2010/04/08 v1.12} +% \item +% Requires \xpackage{ltxcmds} 2010/04/08. +% \end{Version} +% \begin{Version}{2010/07/23 v1.13} +% \item +% Support for \xclass{memoir}'s \cs{booknumberline} added. +% \end{Version} +% \begin{Version}{2010/09/02 v1.14} +% \item +% (Local) options \xoption{draft} and \xoption{final} added. +% \end{Version} +% \begin{Version}{2010/09/25 v1.15} +% \item +% Fix for option \xoption{dvipdfmx-outline-open}. +% \item +% Option \xoption{dvipdfmx-outline-open} is set automatically, +% if XeTeX $\geq$ 0.9995 is detected. +% \end{Version} +% \begin{Version}{2010/10/19 v1.16} +% \item +% Option `startatroot' now acts globally. +% \item +% Option `level' also accepts names the same way as option `depth'. +% \end{Version} +% \begin{Version}{2010/10/25 v1.17} +% \item +% \cs{bookmarksetupnext} added. +% \item +% Using \cs{kvsetkeys} of package \xpackage{kvsetkeys}, because +% \cs{setkeys} of package \xpackage{keyval} is not reentrant. +% This can cause problems (unknown keys) with older versions of +% hyperref that also uses \cs{setkeys} (found by GL). +% \end{Version} +% \begin{Version}{2010/11/05 v1.18} +% \item +% Use of \cs{pdf@ifdraftmode} of package \xpackage{pdftexcmds} for +% the default of option \xoption{draft}. +% \end{Version} +% \begin{Version}{2011/03/20 v1.19} +% \item +% Use of \cs{dimexpr} fixed, if \hologo{eTeX} is not used. +% (Bug found by Martin M\"unch.) +% \item +% Fix in documentation. Also layout options work without \hologo{eTeX}. +% \end{Version} +% \begin{Version}{2011/04/13 v1.20} +% \item +% Bug fix: \cs{BKM@SetDepth} renamed to \cs{BKM@SetDepthOrLevel}. +% \end{Version} +% \begin{Version}{2011/04/21 v1.21} +% \item +% Some support for file name and line number in error messages +% at end of document (pdfTeX and pdfmark based drivers). +% \end{Version} +% \begin{Version}{2011/05/13 v1.22} +% \item +% Change of version 2010/11/05 v1.18 reverted, because otherwise +% draftmode disables some \xext{aux} file entries. +% \end{Version} +% \begin{Version}{2011/09/19 v1.23} +% \item +% Some \cs{renewcommand}s changed to \cs{def} to avoid trouble +% if the commands are not defined, because hyperref stopped early. +% \end{Version} +% \begin{Version}{2011/12/02 v1.24} +% \item +% Small optimization in \cs{BKM@toHexDigit}. +% \end{Version} +% \begin{Version}{2016/05/16 v1.25} +% \item +% Documentation updates. +% \end{Version} +% \begin{Version}{2016/05/17 v1.26} +% \item +% define \cs{pdfbookmark} to allow pdftex driver to be used with Lua\TeX. +% \end{Version} +% \begin{Version}{2019/06/04 v1.27} +% \item +% unknown style options are ignored (issue 67) +% \end{Version} + +% \begin{Version}{2019/12/03 v1.28} +% \item +% Documentation updates. +% \item adjust package loading (all required packages already loade +% by \xpackage{hyperref}). +% \end{Version} +% \end{History} +% +% \PrintIndex +% +% \Finale +\endinput diff --git a/macros/latex/contrib/bookmark/bookmark.pdf b/macros/latex/contrib/bookmark/bookmark.pdf new file mode 100644 index 0000000000..e4fbe0984c Binary files /dev/null and b/macros/latex/contrib/bookmark/bookmark.pdf differ diff --git a/macros/latex/contrib/embedfile/README.md b/macros/latex/contrib/embedfile/README.md new file mode 100644 index 0000000000..d410d5f8c1 --- /dev/null +++ b/macros/latex/contrib/embedfile/README.md @@ -0,0 +1,7 @@ +# embedfile + +embedfile package for LaTeX + + +This package embeds files to a PDF document. +Currently the only supported drivers are pdfTeX and LuaTeX. diff --git a/macros/latex/contrib/embedfile/embedfile.dtx b/macros/latex/contrib/embedfile/embedfile.dtx new file mode 100644 index 0000000000..1fb0ed84b6 --- /dev/null +++ b/macros/latex/contrib/embedfile/embedfile.dtx @@ -0,0 +1,1965 @@ +% \iffalse meta-comment +% +% File: embedfile.dtx +% Version: 2019/12/03 v2.9 +% Info: Embed files into PDF +% +% Copyright (C) +% 2006-2011 Heiko Oberdiek +% 2016-2019 Oberdiek Package Support Group +% https://github.com/ho-tex/embedfile/issues +% +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either +% version 1.3c of this license or (at your option) any later +% version. This version of this license is in +% https://www.latex-project.org/lppl/lppl-1-3c.txt +% and the latest version of this license is in +% https://www.latex-project.org/lppl.txt +% and version 1.3 or later is part of all distributions of +% LaTeX version 2005/12/01 or later. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainers of this work are +% Heiko Oberdiek and the Oberdiek Package Support Group +% https://github.com/ho-tex/embedfile/issues +% +% The Base Interpreter refers to any `TeX-Format', +% because some files are installed in TDS:tex/generic//. +% +% This work consists of the main source file embedfile.dtx +% and the derived files +% embedfile.sty, embedfile.pdf, embedfile.ins, embedfile.drv, +% dtx-attach.sty, embedfile-example-plain.tex, +% embedfile-example-collection.tex, embedfile-test1.tex, +% embedfile-test2.tex, embedfile-test3.tex, +% embedfile-test4.tex. +% +% Distribution: +% CTAN:macros/latex/contrib/embedfile/embedfile.dtx +% CTAN:macros/latex/contrib/embedfile/embedfile.pdf +% +% Unpacking: +% (a) If embedfile.ins is present: +% tex embedfile.ins +% (b) Without embedfile.ins: +% tex embedfile.dtx +% (c) If you insist on using LaTeX +% latex \let\install=y\input{embedfile.dtx} +% (quote the arguments according to the demands of your shell) +% +% Documentation: +% (a) If embedfile.drv is present: +% latex embedfile.drv +% (b) Without embedfile.drv: +% latex embedfile.dtx; ... +% The class ltxdoc loads the configuration file ltxdoc.cfg +% if available. Here you can specify further options, e.g. +% use A4 as paper format: +% \PassOptionsToClass{a4paper}{article} +% +% Programm calls to get the documentation (example): +% pdflatex embedfile.dtx +% makeindex -s gind.ist embedfile.idx +% pdflatex embedfile.dtx +% makeindex -s gind.ist embedfile.idx +% pdflatex embedfile.dtx +% +% Installation: +% TDS:tex/generic/embedfile/embedfile.sty +% TDS:tex/generic/embedfile/dtx-attach.sty +% TDS:doc/latex/embedfile/embedfile.pdf +% TDS:doc/latex/embedfile/embedfile-example-plain.tex +% TDS:doc/latex/embedfile/embedfile-example-collection.tex +% TDS:source/latex/embedfile/embedfile.dtx +% +%<*ignore> +\begingroup + \catcode123=1 % + \catcode125=2 % + \def\x{LaTeX2e}% +\expandafter\endgroup +\ifcase 0\ifx\install y1\fi\expandafter + \ifx\csname processbatchFile\endcsname\relax\else1\fi + \ifx\fmtname\x\else 1\fi\relax +\else\csname fi\endcsname +% +%<*install> +\input docstrip.tex +\Msg{************************************************************************} +\Msg{* Installation} +\Msg{* Package: embedfile 2019/12/03 v2.9 Embed files into PDF (HO)} +\Msg{************************************************************************} + +\keepsilent +\askforoverwritefalse + +\let\MetaPrefix\relax +\preamble + +This is a generated file. + +Project: embedfile +Version: 2019/12/03 v2.9 + +Copyright (C) + 2006-2011 Heiko Oberdiek + 2016-2019 Oberdiek Package Support Group + +This work may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either +version 1.3c of this license or (at your option) any later +version. This version of this license is in + https://www.latex-project.org/lppl/lppl-1-3c.txt +and the latest version of this license is in + https://www.latex-project.org/lppl.txt +and version 1.3 or later is part of all distributions of +LaTeX version 2005/12/01 or later. + +This work has the LPPL maintenance status "maintained". + +The Current Maintainers of this work are +Heiko Oberdiek and the Oberdiek Package Support Group +https://github.com/ho-tex/embedfile/issues + + +The Base Interpreter refers to any `TeX-Format', +because some files are installed in TDS:tex/generic//. + +This work consists of the main source file embedfile.dtx +and the derived files + embedfile.sty, embedfile.pdf, embedfile.ins, embedfile.drv, + dtx-attach.sty, embedfile-example-plain.tex, + embedfile-example-collection.tex, embedfile-test1.tex, + embedfile-test2.tex, embedfile-test3.tex, + embedfile-test4.tex. + +\endpreamble +\let\MetaPrefix\DoubleperCent + +\generate{% + \file{embedfile.ins}{\from{embedfile.dtx}{install}}% + \file{embedfile.drv}{\from{embedfile.dtx}{driver}}% + \usedir{tex/generic/embedfile}% + \file{embedfile.sty}{\from{embedfile.dtx}{package}}% + \usedir{tex/latex/embedfile}% + \file{dtx-attach.sty}{\from{embedfile.dtx}{dtxattach}}% + \usedir{doc/latex/embedfile}% + \file{embedfile-example-plain.tex}{\from{embedfile.dtx}{exampleplain}}% + \file{embedfile-example-collection.tex}{\from{embedfile.dtx}{examplecollection}}% +% \usedir{doc/latex/embedfile/test}% +% \file{embedfile-test1.tex}{\from{embedfile.dtx}{test1}}% +% \file{embedfile-test2.tex}{\from{embedfile.dtx}{test2}}% +% \file{embedfile-test3.tex}{\from{embedfile.dtx}{test3}}% +% \file{embedfile-test4.tex}{\from{embedfile.dtx}{test4}}% +} + +\catcode32=13\relax% active space +\let =\space% +\Msg{************************************************************************} +\Msg{*} +\Msg{* To finish the installation you have to move the following} +\Msg{* files into a directory searched by TeX:} +\Msg{*} +\Msg{* embedfile.sty, dtx-attach.sty} +\Msg{*} +\Msg{* To produce the documentation run the file `embedfile.drv'} +\Msg{* through LaTeX.} +\Msg{*} +\Msg{* Happy TeXing!} +\Msg{*} +\Msg{************************************************************************} + +\endbatchfile +% +%<*ignore> +\fi +% +%<*driver> +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{embedfile.drv}% + [2019/12/03 v2.9 Embed files into PDF (HO)]% +\documentclass{ltxdoc} +\usepackage{holtxdoc}[2011/11/22] +\begin{document} + \DocInput{embedfile.dtx}% +\end{document} +% +% \fi +% +% +% +% \GetFileInfo{embedfile.drv} +% +% \title{The \xpackage{embedfile} package} +% \date{2019/12/03 v2.9} +% \author{Heiko Oberdiek\thanks +% {Please report any issues at \url{https://github.com/ho-tex/embedfile/issues}}} +% +% \maketitle +% +% \begin{abstract} +% This package embeds files to a PDF document. +% Currently the only supported driver is \pdfTeX\ $>=$ 1.30 in PDF mode. +% \end{abstract} +% +% \tableofcontents +% +% \section{Documentation} +% +% \subsection{Introduction} +% +% The PDF format (\cite{pdfspec}) allows the inclusion of files +% inside the PDF document. The included files can be bound to an +% annotation on a page. Or they can be recorded in a sorted +% list of embedded files. The packages \xpackage{attachfile} +% or \xpackage{attachfile2} follow the first approach, this +% package uses the latter method. +% +% \subsubsection{Future development} +% +% My dream is a large package that merges the features of +% all these packages meantioned before: +% \begin{itemize} +% \item Files can be attached to a page. +% \item Files can be attached to the document. +% \item An easy user interface for simple, common tasks and +% beginners. +% \item An interface for the advanced users that want to setup +% every detail. +% \item Support of many drivers (pdftex, dvips, dvipdfm, \dots). +% \item \dots +% \end{itemize} +% However, I have not managed to take the time for this project. +% Instead: +% \begin{itemize} +% \item First I experimented with package \xpackage{attachfile}, +% adding driver support, fixing bugs, \dots. The result is +% currently named as \xpackage{attachfile2}. It uses an external +% script to get file properties (size, date, checksum, \dots). +% \item In order to avoid an external program for getting basic +% file properties I provided a patch ``EscapeAndOther'' for +% pdfTeX that was accepted for version 1.30. +% \item This package closes a gap left by the packages for attaching +% files and allows the embedding of files to the document. +% Also it makes use of the new primitives of \pdfTeX. +% \end{itemize} +% +% \subsection{User interface} +% +% This package \xpackage{embedfile} can be used with both +% \LaTeX\ and \plainTeX. See \autoref{sec:plain} that +% explains the use with \plainTeX\ by an example. +% In \LaTeX\ the package is loaded as usually. There are no options. +% \begin{quote} +% \verb|\usepackage{embedfile}| +% \end{quote} +% +% \begin{declcs}{embedfile} +% |[|\meta{options}|]| \M{file} +% \end{declcs} +% The macro \cs{embedfile} includes file \meta{file} and +% attaches it to the PDF document. At the end of the document +% the sorted list of embedded files are written. Thus you can +% safely use \cs{embedfile} before \verb|\end{document}|. +% Embedding files using \cs{AtEndDocument} will only work, +% if \cs{AtEndDocument} is called before loading the package +% \xpackage{embedfile}. +% +% The \meta{options} are give as key value pairs. The following +% keys are supported: +% \begin{description} +% \item[\xoption{filespec}] +% This allows to override the file name +% that appears in the PDF file. If you are using other than +% simple file names (8-bit, path separators, \dots), look into +% the PDF specification (\cite{pdfspec}). +% There are rules how these file names must be written/encoded. +% Avoid 8-bit characters +% and other special characters, the behaviour is currently undefined. +% Use option \xoption{ucfilespec} for more funny file names. +% The string method, see below, is |escape| since version 2.4. +% +% This name is also used as entry in a name tree +% (see PDF specification: |/EmbeddedFiles|). Therefore the +% value for \xoption{filespec} must be unique among all +% embedded files. Also key \xoption{initialfiles} refers +% to this name, if the file name and the value of \xoption{filespec} +% are different. +% \item[\xoption{ucfilespec}] +% Since PDF 1.7 the file name may be provided in Unicode. +% The conversion of the option value into a PDF string +% is controlled by option \xoption{stringmethod}. +% \item[\xoption{filesystem}] +% This sets the entry \verb|/FS| in +% the file specification dictionary, see PDF specification +% (\cite{pdfspec}). +% Example: \verb|filesystem=URL|. +% \item[\xoption{mimetype}] +% This sets the mime type (\cite{mime}) of the file, +% see \autoref{sec:plain} for examples and \cite{types} +% for a list of officially registered types. +% \item[\xoption{desc}] +% The description for the file. +% \item[\xoption{stringmethod}] +% The package must convert the values of the keys \xoption{ucfilespec} +% and \xoption{desc} into a PDF string (before version 2.4: \xoption{filespec} +% and \xoption{desc}). If \xpackage{hyperref} +% is found, then its \cs{pdfstringdef} will be used, otherwise +% \pdfTeX's \cs{pdfescapestring} is used. Value \verb|psd| +% forces the use of \cs{pdfstringdef}, value \verb|escape| +% the use of \cs{pdfescapestring}. +% \item[\xoption{\meta{key}.value}] Sets the value of a collection +% item property, see section \ref{sec:collection}. +% \item[\xoption{\meta{key}.prefix}] +% Sets the prefix of a collection item property, +% see section \ref{sec:collection}. +% \item[\xoption{id}] +% The value must be an unique name. Macros +% \cs{embedfileifobjectexists} and \cs{embedfilegetobject} +% are using this name later. +% \end{description} +% +% \begin{declcs}{embedfilefinish} +% \end{declcs} +% The list of all embedded files must be added as data structure +% in the PDF file. In case of \LaTeX\ this is automatically done. +% The package uses \cs{AtEndDocument}. Then the list of all +% files should be known. However, \plainTeX\ does not know +% about \cs{AtEndDocument}. Thus the user must call +% \cs{embedfilefinish} at the end of the document +% after the last file is embedded. +% +% \begin{declcs}{embedfilesetup} \M{options} +% \end{declcs} +% Options for \cs{embedfile} and collection support +% can be set in \cs{embedfilesetup}. +% +% \subsection{Collection support (PDF 1.7)} +% \label{sec:collection} +% +% Since PDF 1.7 the embedded files can form a \emph{collection} +% (sometimes referred as \emph{package}), the main document +% is called \emph{cover sheet}. See PDF specification +% 8.2.4 ``Collections'' and 3.10.5 ``Collection items'' \cite{pdfspec}. +% +% Usually Acrobat Reader 7 or 8 shows the +% embedded files in a table at the bottom with the following columns: +% \begin{quote} +% \begin{tabular}{@{}l|l|l|l@{}} +% Name & Description & Modified & Size\\ +% \hline +% \dots & \dots & \dots & \dots\\ +% \end{tabular} +% \end{quote} +% Acrobat Reader 10 shows the embeded files in the left panel +% and adds a new column for the compressed size. +% +% If the files form a collection, then they are displayed +% in a table left or top (depending on option \xoption{view}, +% see \cs{embedfilesetup}). +% +% +% Collection support is enabled automatically, if +% it is used. +% +% \begin{declcs}{embedfilesetup} \M{options} +% \end{declcs} +% The following options are supported in addition +% to options for \cs{embedfile}: +% \begin{description} +% \item[\xoption{view}] +% If the PDF file contains a collection, then Acrobat Reader 8 +% shows a line at the top below the menu bar and the toolbar. +% It shows the current selected file, icons for changing the +% view mode, an options menu. +% The initial mode how the collection is presented is +% set by this option \xoption{view}. +% The following modes/values are supported, the default is |details|: +% \begin{description} +% \item[\texttt{details}] The full collection table is displayed +% at the top below the collection bar. +% \item[\texttt{tile}] The files of the collection are shown +% in tile mode on the left. +% \item[\texttt{hidden}] The collection table is not shown. +% \end{description} +% \item[\xoption{initialfile}] +% Selects the file that is initially presented. Especially +% useful for an embedded PDF file that is then shown instead +% of the cover document. There must be an \cs{embedfile} command +% somewhere whose value for key \xoption{filespec} is used here. +% The \cs{embedfile} command can drop option \xoption{filespec} +% if the file name is not different. +% \end{description} +% +% \begin{declcs}{embedfilefield} \M{key} \M{options} +% \end{declcs} +% Macro \cs{embedfilefield} defines a column/field in the collection table. +% The name of the field is \meta{key}. +% \begin{description} +% \item[\xoption{type}] +% sets the type of the field. The supported values are: +% \begin{description} +% \item[\texttt{text}] A text field. Its value is set in +% \cs{embedfile} by option \xoption{\meta{key}.value}. +% \item[\texttt{date}] A date field. Its value is set in +% \cs{embedfile} by option \xoption{\meta{key}.value}. +% A special format is required, see ``3.8.3 Dates'' \cite{pdfspec}. +% \item[\texttt{number}] A field with an integer or float number. +% Its value is set in \cs{embedfile} by option +% \xoption{\meta{key}.value}. +% \item[\texttt{file}] The file name of the embedded file. +% \item[\texttt{desc}] The description text of the embedded file. It is +% set in \cs{embedfile} by option \xoption{desc}. +% \item[\texttt{moddate}] The modification date of the embedded file. +% \item[\texttt{size}] The size of the embedded file. +% \end{description} +% All types allow the use of a prefix that is disregarded by +% sorting. The prefix for this field is set in \cs{embedfile} by +% option \xoption{\meta{key}.prefix}. +% \item[\xoption{title}] sets the column title. +% \item[\xoption{visible}] controls whether the column is presented: +% \begin{description} +% \item[\texttt{true}] shows the column. +% \item[\texttt{false}] hides the column. +% \end{description} +% Default: \texttt{true} +% \item[\xoption{edit}] +% Allows the editing of field values. Does not seem to have an +% effect for Acrobat Reader. +% \begin{description} +% \item[\texttt{true}] enables the feature, if available (depends +% on the PDF viewer). +% \item[\texttt{false}] disables the feature. +% \end{description} +% Default: \texttt{false} +% \end{description} +% The order of \cs{embedfilefield} statements defines the order +% of the columns. +% +% \begin{declcs}{embedfilesort} \M{key-sort-list} +% \end{declcs} +% The sort order of the embedded files are controlled by +% macro \cs{embedfilesort}. \meta{key-sort-list} defines +% the sort order. The key is a field name defined by \cs{embedfilefield}. +% Its value is either \texttt{ascending} or \texttt{descending}. +% The default is \texttt{ascending}. +% +% \subsection{Export of object references} +% +% Caution: This feature is still experimental. It may be even removed +% in future versions. Therefore feedback would be nice, if someone +% has a useful application for this feature. +% +% Object numbers are saved, if \xoption{id} is given in \cs{embedfile}. +% The following objects are supported: +% \begin{itemize} +% \item \texttt{EmbeddedFile} +% \item \texttt{Filespec} +% \end{itemize} +% +% \begin{declcs}{embedfileifobjectexists} \M{id} \M{type} +% \M{then} \M{else} +% \end{declcs} +% Macro \cs{embedfileifobjectexists} tests whether object of \meta{type} +% is available for the embedded file identified by \meta{id}. +% +% \begin{declcs}{embedfilegetobject} \M{id} \M{type} +% \end{declcs} +% Macro \cs{embedfilegetobject} expands to the full object reference +% object of \meta{type} for the embedded file identified by \meta{id}. +% +% \subsubsection{Example} +% +%\begin{quote} +%\begin{verbatim} +%\embedfile[id={foo}]{foo.pdf} +%\embedfileifobjectexists{foo}{Filespec}{% +% \typeout{% +% FileSpec object for `foo': % +% \embedfilegetobject{foo}{Filespec}% +% }% +%}{% +% \typeout{No Filespec object for `foo'}% +%} +%\end{verbatim} +%\end{quote} +% +% \subsection{Examples} +% \label{sec:examples} +% +% \subsubsection{\plainTeX} +% \label{sec:plain} +% +% The package can be used with \plainTeX. It can be used +% with or without help from \xfile{miniltx.tex}. +% +% If additionally package \xpackage{keyval} (\xpackage{graphicx}) +% is needed, load it first. Then package \xpackage{embedfile} avoids +% a duplicate loading of package \xpackage{keyval}. +% +% Because \plainTeX\ does not provide a hook at end of the document, +% you have to call \cs{embedfilefinish} manually at the end +% after the last embedded file. +% \begin{macrocode} +%<*exampleplain> +%< +% \end{macrocode} +% +% \subsubsection{Collection example} +% +% \begin{macrocode} +%<*examplecollection> +%< +% \end{macrocode} +% +% \subsection{Package \xpackage{dtx-attach}} +% +% Package \xpackage{dtx-attach} is just a small application of +% package \xpackage{embedfile}. I am using it for the CTAN +% documentation of my packages in \CTANpkg{oberdiek}. +% It also serves as small example for the use of the package with \LaTeX. +% +% \begin{macrocode} +%<*dtxattach> +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{dtx-attach} + [2019/12/03 v2.9 Embed \string\jobname.dtx (HO)]% +\RequirePackage{embedfile}[2019/12/03] +\embedfile[% + stringmethod=escape,% + mimetype=plain/text,% + desc={LaTeX docstrip source archive for package `\jobname'}% +]{\jobname.dtx} +% +% \end{macrocode} +% +% \StopEventually{ +% } +% +% \section{Implementation} +% +% \begin{macrocode} +%<*package> +% \end{macrocode} +% +% \subsection{Reload check and package identification} +% Reload check, especially if the package is not used with \LaTeX. +% \begin{macrocode} +\begingroup\catcode61\catcode48\catcode32=10\relax% + \catcode13=5 % ^^M + \endlinechar=13 % + \catcode35=6 % # + \catcode39=12 % ' + \catcode44=12 % , + \catcode45=12 % - + \catcode46=12 % . + \catcode58=12 % : + \catcode64=11 % @ + \catcode123=1 % { + \catcode125=2 % } + \expandafter\let\expandafter\x\csname ver@embedfile.sty\endcsname + \ifx\x\relax % plain-TeX, first loading + \else + \def\empty{}% + \ifx\x\empty % LaTeX, first loading, + % variable is initialized, but \ProvidesPackage not yet seen + \else + \expandafter\ifx\csname PackageInfo\endcsname\relax + \def\x#1#2{% + \immediate\write-1{Package #1 Info: #2.}% + }% + \else + \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% + \fi + \x{embedfile}{The package is already loaded}% + \aftergroup\endinput + \fi + \fi +\endgroup% +% \end{macrocode} +% Package identification: +% \begin{macrocode} +\begingroup\catcode61\catcode48\catcode32=10\relax% + \catcode13=5 % ^^M + \endlinechar=13 % + \catcode35=6 % # + \catcode39=12 % ' + \catcode40=12 % ( + \catcode41=12 % ) + \catcode44=12 % , + \catcode45=12 % - + \catcode46=12 % . + \catcode47=12 % / + \catcode58=12 % : + \catcode64=11 % @ + \catcode91=12 % [ + \catcode93=12 % ] + \catcode123=1 % { + \catcode125=2 % } + \expandafter\ifx\csname ProvidesPackage\endcsname\relax + \def\x#1#2#3[#4]{\endgroup + \immediate\write-1{Package: #3 #4}% + \xdef#1{#4}% + }% + \else + \def\x#1#2[#3]{\endgroup + #2[{#3}]% + \ifx#1\@undefined + \xdef#1{#3}% + \fi + \ifx#1\relax + \xdef#1{#3}% + \fi + }% + \fi +\expandafter\x\csname ver@embedfile.sty\endcsname +\ProvidesPackage{embedfile}% + [2019/12/03 v2.9 Embed files into PDF (HO)]% +% \end{macrocode} +% +% \subsection{Catcodes} +% +% \begin{macrocode} +\begingroup\catcode61\catcode48\catcode32=10\relax% + \catcode13=5 % ^^M + \endlinechar=13 % + \catcode123=1 % { + \catcode125=2 % } + \catcode64=11 % @ + \def\x{\endgroup + \expandafter\edef\csname EmFi@AtEnd\endcsname{% + \endlinechar=\the\endlinechar\relax + \catcode13=\the\catcode13\relax + \catcode32=\the\catcode32\relax + \catcode35=\the\catcode35\relax + \catcode61=\the\catcode61\relax + \catcode64=\the\catcode64\relax + \catcode123=\the\catcode123\relax + \catcode125=\the\catcode125\relax + }% + }% +\x\catcode61\catcode48\catcode32=10\relax% +\catcode13=5 % ^^M +\endlinechar=13 % +\catcode35=6 % # +\catcode64=11 % @ +\catcode123=1 % { +\catcode125=2 % } +\def\TMP@EnsureCode#1#2{% + \edef\EmFi@AtEnd{% + \EmFi@AtEnd + \catcode#1=\the\catcode#1\relax + }% + \catcode#1=#2\relax +} +\TMP@EnsureCode{39}{12}% ' +\TMP@EnsureCode{40}{12}% ( +\TMP@EnsureCode{41}{12}% ) +\TMP@EnsureCode{44}{12}% , +\TMP@EnsureCode{46}{12}% . +\TMP@EnsureCode{47}{12}% / +\TMP@EnsureCode{58}{12}% : +\TMP@EnsureCode{60}{12}% < +\TMP@EnsureCode{62}{12}% > +\TMP@EnsureCode{91}{12}% [ +\TMP@EnsureCode{93}{12}% ] +\TMP@EnsureCode{96}{12}% ` +\edef\EmFi@AtEnd{\EmFi@AtEnd\noexpand\endinput} +% \end{macrocode} +% +% \subsection{Tools} +% +% \begin{macro}{\EmFi@RequirePackage} +% \begin{macrocode} +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname RequirePackage\endcsname\relax + \def\EmFi@RequirePackage#1[#2]{% + \input #1.sty\relax + }% +\else + \let\EmFi@RequirePackage\RequirePackage +\fi +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\EmFi@Error} +% \begin{macrocode} +\EmFi@RequirePackage{infwarerr}[2007/09/09]% +\def\EmFi@Error{% + \@PackageError{embedfile}% +} +% \end{macrocode} +% \end{macro} +% +% Luatex compat +% \begin{macrocode} +\ifx\pdfextension\@undefined\else + \protected\def\pdflastobj {\numexpr\pdffeedback lastobj\relax} + \protected\def\pdfnames {\pdfextension names } + \protected\def\pdfobj {\pdfextension obj } + \protected\def\pdfcatalog {\pdfextension catalog } + \let\pdfoutput \outputmode +\fi +% \end{macrocode} +% +% \subsection{Check for recent \pdfTeX\ in PDF mode} +% +% Load package \xpackage{iftex} and check mode. +% \begin{macrocode} +\EmFi@RequirePackage{iftex}[2019/11/07] +\ifpdf +\else + \EmFi@Error{% + Missing pdfTeX in PDF mode% + }{% + Currently other drivers are not supported. % + Package loading is aborted.% + }% + \expandafter\EmFi@AtEnd +\fi% +% \end{macrocode} +% \begin{macrocode} +\EmFi@RequirePackage{pdftexcmds}[2007/11/11] +\EmFi@RequirePackage{ltxcmds}[2010/03/01] +\EmFi@RequirePackage{kvsetkeys}[2010/03/01] +\EmFi@RequirePackage{kvdefinekeys}[2010/03/01] +% \end{macrocode} +% Check version. +% \begin{macrocode} +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname pdf@filesize\endcsname\relax + \EmFi@Error{% + Unsupported pdfTeX version% + }{% + At least version 1.30 is necessary. Package loading is aborted.% + }% + \expandafter\EmFi@AtEnd +\fi% +% \end{macrocode} +% +% \subsection{Strings} +% +% Minimal version of package \xpackage{pdfescape} is 2007/08/27 v1.5 +% because of \cs{EdefSanitize}. +% \begin{macrocode} +\EmFi@RequirePackage{pdfescape}[2007/11/11] +% \end{macrocode} +% +% \begin{macrocode} +\def\EmFi@temp#1{% + \expandafter\EdefSanitize\csname EmFi@S@#1\endcsname{#1}% +} +% \end{macrocode} +% \begin{macro}{\EmFi@details} +% \begin{macrocode} +\EmFi@temp{details}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@tile} +% \begin{macrocode} +\EmFi@temp{tile}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@hidden} +% \begin{macrocode} +\EmFi@temp{hidden}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@text} +% \begin{macrocode} +\EmFi@temp{text} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@date} +% \begin{macrocode} +\EmFi@temp{date} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@number} +% \begin{macrocode} +\EmFi@temp{number} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@file} +% \begin{macrocode} +\EmFi@temp{file} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@desc} +% \begin{macrocode} +\EmFi@temp{desc} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@afrelationship} +% \begin{macrocode} +\EmFi@temp{afrelationship} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@moddate} +% \begin{macrocode} +\EmFi@temp{moddate} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@creationdate} +% \begin{macrocode} +\EmFi@temp{creationdate} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@size} +% \begin{macrocode} +\EmFi@temp{size} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@ascending} +% \begin{macrocode} +\EmFi@temp{ascending} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@descending} +% \begin{macrocode} +\EmFi@temp{descending} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@true} +% \begin{macrocode} +\EmFi@temp{true} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@S@false} +% \begin{macrocode} +\EmFi@temp{false} +% \end{macrocode} +% \end{macro} +% +% \subsection{Switches} +% +% \begin{macro}{\ifEmFi@collection} +% \begin{macrocode} +\ltx@newif\ifEmFi@collection +% \end{macrocode} +% \end{macro} +% \begin{macro}{\ifEmFi@sort} +% \begin{macrocode} +\ltx@newif\ifEmFi@sort +% \end{macrocode} +% \end{macro} +% \begin{macro}{\ifEmFi@visible} +% \begin{macrocode} +\ltx@newif\ifEmFi@visible +% \end{macrocode} +% \end{macro} +% \begin{macro}{\ifEmFi@edit} +% \begin{macrocode} +\ltx@newif\ifEmFi@edit +% \end{macrocode} +% \end{macro} +% \begin{macro}{\ifEmFi@item} +% \begin{macrocode} +\ltx@newif\ifEmFi@item +% \end{macrocode} +% \end{macro} +% \begin{macro}{\ifEmFi@finished} +% \begin{macrocode} +\ltx@newif\ifEmFi@finished +% \end{macrocode} +% \end{macro} +% \begin{macro}{\ifEmFi@id} +% \begin{macrocode} +\ltx@newif\ifEmFi@id +% \end{macrocode} +% \end{macro} +% +% \subsection{Key value definitions} +% +% \begin{macro}{\EmFi@GlobalKey} +% \begin{macrocode} +\def\EmFi@GlobalKey#1#2{% + \global\expandafter\let\csname KV@#1@#2\expandafter\endcsname + \csname KV@#1@#2\endcsname +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@GlobalDefaultKey} +% \begin{macrocode} +\def\EmFi@GlobalDefaultKey#1#2{% + \EmFi@GlobalKey{#1}{#2}% + \global\expandafter\let + \csname KV@#1@#2@default\expandafter\endcsname + \csname KV@#1@#2@default\endcsname +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\EmFi@DefineKey} +% \begin{macrocode} +\def\EmFi@DefineKey#1#2{% + \kv@define@key{EmFi}{#1}{% + \expandafter\def\csname EmFi@#1\endcsname{##1}% + }% + \expandafter\def\csname EmFi@#1\endcsname{#2}% +} +% \end{macrocode} +% \end{macro} +% Subtype of the embedded file (optional). +% \begin{macrocode} +\EmFi@DefineKey{mimetype}{} +% \end{macrocode} +% File specification string. +% \begin{macrocode} +\EmFi@DefineKey{filespec}{\EmFi@file} +% \end{macrocode} +% File specification string in Unicode. +% \begin{macrocode} +\EmFi@DefineKey{ucfilespec}{} +% \end{macrocode} +% File system (optional). +% \begin{macrocode} +\EmFi@DefineKey{filesystem}{} +% \end{macrocode} +% Description (optional). +% \begin{macrocode} +\EmFi@DefineKey{desc}{} +% \end{macrocode} +% AFRelationship (mandatory for PDF/A-3 compliance). +% \begin{macrocode} +\EmFi@DefineKey{afrelationship}{} +% \end{macrocode} +% Method for converting text to PDF strings. +% \begin{macrocode} +\EmFi@DefineKey{stringmethod}{% + \ifx\pdfstringdef\@undefined + escape% + \else + \ifx\pdfstringdef\relax + escape% + \else + psd% + \fi + \fi +} +% \end{macrocode} +% +% Option \xoption{id} as key for object numbers. +% \begin{macrocode} +\kv@define@key{EmFi}{id}{% + \def\EmFi@id{#1}% + \EmFi@idtrue +} +% \end{macrocode} +% \begin{macro}{\EmFi@defobj} +% \begin{macrocode} +\def\EmFi@defobj#1{% + \ifEmFi@id + \expandafter\xdef\csname EmFi@#1@\EmFi@id\endcsname{% + \the\pdflastobj\ltx@space 0 R% + }% + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\embedfileifobjectexists} +% \begin{macrocode} +\def\embedfileifobjectexists#1#2{% + \expandafter\ifx\csname EmFi@#2@#1\endcsname\relax + \expandafter\ltx@secondoftwo + \else + \expandafter\ltx@firstoftwo + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\embedfilegetobject} +% \begin{macrocode} +\def\embedfilegetobject#1#2{% + \embedfileifobjectexists{#1}{#2}{% + \csname EmFi@#2@#1\endcsname + }{% + 0 0 R% + }% +} +% \end{macrocode} +% \end{macro} +% +% Initial view of the collection. +% \begin{macrocode} +\kv@define@key{EmFi}{view}[]{% + \EdefSanitize\EmFi@temp{#1}% + \def\EmFi@next{% + \global\EmFi@collectiontrue + }% + \ifx\EmFi@temp\ltx@empty + \let\EmFi@view\EmFi@S@details + \else\ifx\EmFi@temp\EmFi@S@details + \let\EmFi@view\EmFi@S@details + \else\ifx\EmFi@temp\EmFi@S@tile + \let\EmFi@view\EmFi@S@tile + \else\ifx\EmFi@temp\EmFi@S@hidden + \let\EmFi@view\EmFi@S@hidden + \else + \let\EmFi@next\relax + \EmFi@Error{% + Unknown value `\EmFi@temp' for key `view'.\MessageBreak + Supported values: `details', `tile', `hidden'.% + }\@ehc + \fi\fi\fi\fi + \EmFi@next +} +% \end{macrocode} +% \begin{macrocode} +\EmFi@DefineKey{initialfile}{} +% \end{macrocode} +% +% \begin{macro}{\embedfilesetup} +% \begin{macrocode} +\def\embedfilesetup{% + \ifEmFi@finished + \def\EmFi@next##1{}% + \EmFi@Error{% + \string\embedfilefield\ltx@space after \string\embedfilefinish + }{% + The list of embedded files is already written.% + }% + \else + \def\EmFi@next{% + \kvsetkeys{EmFi}% + }% + \fi + \EmFi@next +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\EmFi@schema} +% \begin{macrocode} +\def\EmFi@schema{} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@order} +% \begin{macrocode} +\gdef\EmFi@order{0} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@@order} +% \begin{macrocode} +\let\EmFi@@order\relax +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@fieldlist} +% \begin{macrocode} +\def\EmFi@fieldlist{} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@sortcase} +% \begin{macrocode} +\def\EmFi@sortcase{0}% +% \end{macrocode} +% \end{macro} +% \begin{macro}{\embedfilefield} +% \begin{macrocode} +\def\embedfilefield#1#2{% + \ifEmFi@finished + \EmFi@Error{% + \string\embedfilefield\ltx@space after \string\embedfilefinish + }{% + The list of embedded files is already written.% + }% + \else + \global\EmFi@collectiontrue + \EdefSanitize\EmFi@key{#1}% + \expandafter\ifx\csname KV@EmFi@\EmFi@key.prefix\endcsname\relax + \begingroup + \count@=\EmFi@order + \advance\count@ 1 % + \xdef\EmFi@order{\the\count@}% + \let\EmFi@title\EmFi@key + \let\EmFi@type\EmFi@S@text + \EmFi@visibletrue + \EmFi@editfalse + \kvsetkeys{EmFiFi}{#2}% + \EmFi@convert\EmFi@title\EmFi@title + \xdef\EmFi@schema{% + \EmFi@schema + /\pdf@escapename{\EmFi@key}<<% + /Subtype/% + \ifx\EmFi@type\EmFi@S@date D% + \else\ifx\EmFi@type\EmFi@S@number N% + \else\ifx\EmFi@type\EmFi@S@file F% + \else\ifx\EmFi@type\EmFi@S@desc Desc% + \else\ifx\EmFi@type\EmFi@S@afrelationship AFRelationship% + \else\ifx\EmFi@type\EmFi@S@moddate ModDate% + \else\ifx\EmFi@type\EmFi@S@creationdate CreationDate% + \else\ifx\EmFi@type\EmFi@S@size Size% + \else S% + \fi\fi\fi\fi\fi\fi\fi + /N(\EmFi@title)% + \EmFi@@order{\EmFi@order}% + \ifEmFi@visible + \else + /V false% + \fi + \ifEmFi@edit + /E true% + \fi + >>% + }% + \let\do\relax + \xdef\EmFi@fieldlist{% + \EmFi@fieldlist + \do{\EmFi@key}% + }% + \ifx\EmFi@type\EmFi@S@text + \kv@define@key{EmFi}{\EmFi@key.value}{% + \EmFi@itemtrue + \def\EmFi@temp{##1}% + \EmFi@convert\EmFi@temp\EmFi@temp + \expandafter\def\csname EmFi@V@#1% + \expandafter\endcsname\expandafter{% + \expandafter(\EmFi@temp)% + }% + }% + \EmFi@GlobalKey{EmFi}{\EmFi@key.value}% + \else\ifx\EmFi@type\EmFi@S@date + \kv@define@key{EmFi}{\EmFi@key.value}{% + \EmFi@itemtrue + \def\EmFi@temp{##1}% + \EmFi@convert\EmFi@temp\EmFi@temp + \expandafter\def\csname EmFi@V@#1% + \expandafter\endcsname\expandafter{% + \expandafter(\EmFi@temp)% + }% + }% + \EmFi@GlobalKey{EmFi}{\EmFi@key.value}% + \else\ifx\EmFi@type\EmFi@S@number + \kv@define@key{EmFi}{\EmFi@key.value}{% + \EmFi@itemtrue + \expandafter\EdefSanitize\csname EmFi@V@#1\endcsname{ ##1}% + }% + \EmFi@GlobalKey{EmFi}{\EmFi@key.value}% + \fi\fi\fi + \kv@define@key{EmFi}{\EmFi@key.prefix}{% + \EmFi@itemtrue + \expandafter\def\csname EmFi@P@#1\endcsname{##1}% + }% + \EmFi@GlobalKey{EmFi}{\EmFi@key.prefix}% + \kv@define@key{EmFiSo}{\EmFi@key}[ascending]{% + \EdefSanitize\EmFi@temp{##1}% + \ifx\EmFi@temp\EmFi@S@ascending + \def\EmFi@temp{true}% + \else\ifx\EmFi@temp\EmFi@S@descending + \def\EmFi@temp{false}% + \else + \def\EmFi@temp{}% + \EmFi@Error{% + Unknown sort order `\EmFi@temp'.\MessageBreak + Supported values: `\EmFi@S@ascending', % + `\EmFi@S@descending + }\@ehc + \fi\fi + \ifx\EmFi@temp\ltx@empty + \else + \xdef\EmFi@sortkeys{% + \EmFi@sortkeys + /\pdf@escapename{#1}% + }% + \ifx\EmFi@sortorders\ltx@empty + \global\let\EmFi@sortorders\EmFi@temp + \gdef\EmFi@sortcase{1}% + \else + \xdef\EmFi@sortorders{% + \EmFi@sortorders + \ltx@space + \EmFi@temp + }% + \xdef\EmFi@sortcase{2}% + \fi + \fi + }% + \EmFi@GlobalDefaultKey{EmFiSo}\EmFi@key + \endgroup + \else + \EmFi@Error{% + Field `\EmFi@key' is already defined% + }\@ehc + \fi + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\kv@define@key{EmFiFi}{type}{% + \EdefSanitize\EmFi@temp{#1}% + \ifx\EmFi@temp\EmFi@S@text + \let\EmFi@type\EmFi@temp + \else\ifx\EmFi@temp\EmFi@S@date + \let\EmFi@type\EmFi@temp + \else\ifx\EmFi@temp\EmFi@S@number + \let\EmFi@type\EmFi@temp + \else\ifx\EmFi@temp\EmFi@S@file + \let\EmFi@type\EmFi@temp + \else\ifx\EmFi@temp\EmFi@S@desc + \let\EmFi@type\EmFi@temp + \else\ifx\EmFi@temp\EmFi@S@afrelationship + \let\EmFi@type\EmFi@temp + \else\ifx\EmFi@temp\EmFi@S@moddate + \let\EmFi@type\EmFi@temp + \else\ifx\EmFi@temp\EmFi@S@creationdate + \let\EmFi@type\EmFi@temp + \else\ifx\EmFi@temp\EmFi@S@size + \let\EmFi@type\EmFi@temp + \else + \EmFi@Error{% + Unknown type `\EmFi@temp'.\MessageBreak + Supported types: `text', `date', `number', `file',\MessageBreak + `desc', `afrelationship', `moddate', `creationdate', `size'% + }% + \fi\fi\fi\fi\fi\fi\fi\fi\fi +} +% \end{macrocode} +% \begin{macrocode} +\kv@define@key{EmFiFi}{title}{% + \def\EmFi@title{#1}% +} +% \end{macrocode} +% \begin{macro}{\EmFi@setboolean} +% \begin{macrocode} +\def\EmFi@setboolean#1#2{% + \EdefSanitize\EmFi@temp{#2}% + \ifx\EmFi@temp\EmFi@S@true + \csname EmFi@#1true\endcsname + \else + \ifx\EmFi@temp\EmFi@S@false + \csname EmFi@#1false\endcsname + \else + \EmFi@Error{% + Unknown value `\EmFi@temp' for key `#1'.\MessageBreak + Supported values: `true', `false'% + }\@ehc + \fi + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\kv@define@key{EmFiFi}{visible}[true]{% + \EmFi@setboolean{visible}{#1}% +} +% \end{macrocode} +% \begin{macrocode} +\kv@define@key{EmFiFi}{edit}[true]{% + \EmFi@setboolean{edit}{#1}% +} +% \end{macrocode} +% +% \begin{macro}{\EmFi@sortkeys} +% \begin{macrocode} +\def\EmFi@sortkeys{} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@sortorders} +% \begin{macrocode} +\def\EmFi@sortorders{} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\embedfilesort} +% \begin{macrocode} +\def\embedfilesort{% + \kvsetkeys{EmFiSo}% +} +% \end{macrocode} +% \end{macro} +% +% \subsection{Embed the file} +% +% \begin{macro}{\embedfile} +% \begin{macrocode} +\def\embedfile{% + \ltx@ifnextchar[\EmFi@embedfile{\EmFi@embedfile[]}% +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@embedfile} +% \begin{macrocode} +\def\EmFi@embedfile[#1]#2{% + \ifEmFi@finished + \EmFi@Error{% + \string\embedfile\ltx@space after \string\embedfilefinish + }{% + The list of embedded files is already written.% + }% + \else + \begingroup + \def\EmFi@file{#2}% + \kvsetkeys{EmFi}{#1}% + \expandafter\expandafter\expandafter + \ifx\expandafter\expandafter\expandafter + \\\pdf@filesize{\EmFi@file}\\% + \EmFi@Error{% + File `\EmFi@file' not found% + }{% + The unknown file is not embedded.% + }% + \else + \edef\EmFi@@filespec{% + \pdf@escapestring{\EmFi@filespec}% + }% + \ifx\EmFi@ucfilespec\ltx@empty + \let\EmFi@@ucfilespec\ltx@empty + \else + \EmFi@convert\EmFi@ucfilespec\EmFi@@ucfilespec + \fi + \ifx\EmFi@desc\ltx@empty + \let\EmFi@@desc\ltx@empty + \else + \EmFi@convert\EmFi@desc\EmFi@@desc + \fi + \ifx\EmFi@afrelationship\ltx@empty + \let\EmFi@@afrelationship\ltx@empty + \else + \EmFi@convert\EmFi@afrelationship\EmFi@@afrelationship + \fi + \ifEmFi@item + \let\do\EmFi@do + \immediate\pdfobj{% + <<% + \EmFi@fieldlist + >>% + }% + \edef\EmFi@ci{\the\pdflastobj}% + \fi + \immediate\pdfobj stream attr{% + /Type/EmbeddedFile% + \ifx\EmFi@mimetype\ltx@empty + \else + /Subtype/\pdf@escapename{\EmFi@mimetype}% + \fi + /Params<<% + /ModDate(\pdf@filemoddate{\EmFi@file})% + /Size \pdf@filesize{\EmFi@file}% + /CheckSum<\pdf@filemdfivesum{\EmFi@file}>% + >>% + }file{\EmFi@file}\relax + \EmFi@defobj{EmbeddedFile}% + \immediate\pdfobj{% + <<% + /Type/Filespec% + \ifx\EmFi@filesystem\ltx@empty + \else + /FS/\pdf@escapename{\EmFi@filesystem}% + \fi + /F(\EmFi@@filespec)% + \ifx\EmFi@@ucfilespec\ltx@empty + \else + /UF(\EmFi@@ucfilespec)% + \fi + \ifx\EmFi@@desc\ltx@empty + \else + /Desc(\EmFi@@desc)% + \fi + \ifx\EmFi@@afrelationship\ltx@empty + \else + /AFRelationship\EmFi@@afrelationship% + \fi + /EF<<% + /F \the\pdflastobj\ltx@space 0 R% + >>% + \ifEmFi@item + /CI \EmFi@ci\ltx@space 0 R% + \fi + >>% + }% + \EmFi@defobj{Filespec}% + \EmFi@add{% + \EmFi@@filespec + }{\the\pdflastobj\ltx@space 0 R}% + \fi + \endgroup + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@do} +% \begin{macrocode} +\def\EmFi@do#1{% + \expandafter\ifx\csname EmFi@P@#1\endcsname\relax + \expandafter\ifx\csname EmFi@V@#1\endcsname\relax + \else + /\pdf@escapename{#1}\csname EmFi@V@#1\endcsname + \fi + \else + /\pdf@escapename{#1}<<% + \expandafter\ifx\csname EmFi@V@#1\endcsname\relax + \else + /D\csname EmFi@V@#1\endcsname + \fi + /P(\csname EmFi@P@#1\endcsname)% + >>% + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\EmFi@convert} +% \begin{macrocode} +\def\EmFi@convert#1#2{% + \ifnum\pdf@strcmp{\EmFi@stringmethod}{psd}=0 % + \pdfstringdef\EmFi@temp{#1}% + \let#2\EmFi@temp + \else + \edef#2{\pdf@escapestring{#1}}% + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\global\let\EmFi@list\ltx@empty +% \end{macrocode} +% \begin{macro}{\EmFi@add} +% Sorting is done by the insertion sort algorithm. +% Probably the sorting could be done more reliable. +% However, the PDF specification is not too clear to me +% regarding precise sorting rules (how to deal with +% different encodings, escaped characters, \dots). +% \begin{macrocode} +\def\EmFi@add#1#2{% + \begingroup + \ifx\EmFi@list\ltx@empty + \xdef\EmFi@list{\noexpand\do{#1}{#2}}% + \else + \def\do##1##2{% + \ifnum\pdf@strcmp{##1}{#1}>0 % + \edef\x{% + \toks@{% + \the\toks@% + \noexpand\do{#1}{#2}% + \noexpand\do{##1}{##2}% + }% + }% + \x + \def\do####1####2{% + \toks@\expandafter{\the\toks@\do{####1}{####2}}% + }% + \def\stop{% + \xdef\EmFi@list{\the\toks@}% + }% + \else + \toks@\expandafter{\the\toks@\do{##1}{##2}}% + \fi + }% + \def\stop{% + \xdef\EmFi@list{\the\toks@\noexpand\do{#1}{#2}}% + }% + \toks@{}% + \EmFi@list\stop + \fi + \endgroup +} +% \end{macrocode} +% \end{macro} +% \begin{macro}{\embedfilefinish} +% \begin{macrocode} +\def\embedfilefinish{% + \ifEmFi@finished + \EmFi@Error{% + Too many invocations of \string\embedfilefinish + }{% + The list of embedded files is already written.% + }% + \else + \ifx\EmFi@list\ltx@empty + \else +% \end{macrocode} +% Write |/EmbeddedFiles| entry. +% \begin{macrocode} + \global\EmFi@finishedtrue + \begingroup + \def\do##1##2{% + (##1)##2% + }% + \immediate\pdfobj{% + <<% + /Names[\EmFi@list]% + >>% + }% + \pdfnames{% + /EmbeddedFiles \the\pdflastobj\ltx@space 0 R% + }% + \endgroup + \begingroup + \def\do##1##2{% + \ltx@space##2% + }% + \immediate\pdfobj{% + [\EmFi@list]% + }% + \pdfcatalog{% + /AF \the\pdflastobj\ltx@space 0 R% + }% + \endgroup +% \end{macrocode} +% Write collection objects. +% \begin{macrocode} + \ifx\EmFi@initialfile\ltx@empty + \else + \EmFi@collectiontrue + \fi + \ifEmFi@collection + \ifx\EmFi@initialfile\ltx@empty + \let\EmFi@@initialfile\ltx@empty + \else + \edef\EmFi@@initialfile{% + \pdf@escapestring{\EmFi@initialfile}% + }% + \fi +% \end{macrocode} +% Look for initial file among the embedded files. +% \begin{macrocode} + \begingroup + \let\f=N% + \def\do##1##2{% + \def\x{##1}% + \ifx\x\EmFi@@initialfile + \let\f=Y% + \let\do\ltx@gobbletwo + \fi + }% + \EmFi@list + \expandafter\endgroup + \ifx\f Y% + \else + \@PackageWarningNoLine{embedfile}{% + Missing initial file `\EmFi@initialfile'\MessageBreak + among the embedded files% + }% + \let\EmFi@initialfile\ltx@empty + \let\EmFi@@initialfile\ltx@empty + \fi + \ifcase\EmFi@sortcase + \def\EmFi@temp{}% + \or + \def\EmFi@temp{% + /S\EmFi@sortkeys + /A \EmFi@sortorders + }% + \else + \def\EmFi@temp{% + /S[\EmFi@sortkeys]% + /A[\EmFi@sortorders]% + }% + \fi + \def\EmFi@@order##1{% + \ifnum\EmFi@order>1 % + /O ##1% + \fi + }% + \immediate\pdfobj{% + <<% + \ifx\EmFi@schema\ltx@empty + \else + /Schema<<\EmFi@schema>>% + \fi + \ifx\EmFi@@initialfile\ltx@empty + \else + /D(\EmFi@@initialfile)% + \fi + \ifx\EmFi@view\EmFi@S@tile + /View/T% + \else\ifx\EmFi@view\EmFi@S@hidden + /View/H% + \fi\fi + \ifx\EmFi@temp\ltx@empty + \EmFi@temp + \else + /Sort<<\EmFi@temp>>% + \fi + >>% + }% + \pdfcatalog{% + /Collection \the\pdflastobj\ltx@space0 R% + }% + \fi + \fi + \fi +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname AtEndDocument\endcsname\relax +\else + \AtEndDocument{\embedfilefinish}% +\fi +% \end{macrocode} +% +% \begin{macrocode} +\EmFi@AtEnd% +% +% \end{macrocode} +% \section{Installation} +% +% \subsection{Download} +% +% \paragraph{Package.} This package is available on +% CTAN\footnote{\CTANpkg{embedfile}}: +% \begin{description} +% \item[\CTAN{macros/latex/contrib/embedfile/embedfile.dtx}] The source file. +% \item[\CTAN{macros/latex/contrib/embedfile/embedfile.pdf}] Documentation. +% \end{description} +% +% +% \paragraph{Bundle.} All the packages of the bundle `embedfile' +% are also available in a TDS compliant ZIP archive. There +% the packages are already unpacked and the documentation files +% are generated. The files and directories obey the TDS standard. +% \begin{description} +% \item[\CTANinstall{install/macros/latex/contrib/embedfile.tds.zip}] +% \end{description} +% \emph{TDS} refers to the standard ``A Directory Structure +% for \TeX\ Files'' (\CTANpkg{tds}). Directories +% with \xfile{texmf} in their name are usually organized this way. +% +% \subsection{Bundle installation} +% +% \paragraph{Unpacking.} Unpack the \xfile{embedfile.tds.zip} in the +% TDS tree (also known as \xfile{texmf} tree) of your choice. +% Example (linux): +% \begin{quote} +% |unzip embedfile.tds.zip -d ~/texmf| +% \end{quote} +% +% \subsection{Package installation} +% +% \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting +% \docstrip\ archive. The files are extracted by running the +% \xfile{.dtx} through \plainTeX: +% \begin{quote} +% \verb|tex embedfile.dtx| +% \end{quote} +% +% \paragraph{TDS.} Now the different files must be moved into +% the different directories in your installation TDS tree +% (also known as \xfile{texmf} tree): +% \begin{quote} +% \def\t{^^A +% \begin{tabular}{@{}>{\ttfamily}l@{ $\rightarrow$ }>{\ttfamily}l@{}} +% embedfile.sty & tex/generic/embedfile/embedfile.sty\\ +% dtx-attach.sty & tex/generic/embedfile/dtx-attach.sty\\ +% embedfile.pdf & doc/latex/embedfile/embedfile.pdf\\ +% embedfile-example-plain.tex & doc/latex/embedfile/embedfile-example-plain.tex\\ +% embedfile-example-collection.tex & doc/latex/embedfile/embedfile-example-collection.tex\\ +% embedfile.dtx & source/latex/embedfile/embedfile.dtx\\ +% \end{tabular}^^A +% }^^A +% \sbox0{\t}^^A +% \ifdim\wd0>\linewidth +% \begingroup +% \advance\linewidth by\leftmargin +% \advance\linewidth by\rightmargin +% \edef\x{\endgroup +% \def\noexpand\lw{\the\linewidth}^^A +% }\x +% \def\lwbox{^^A +% \leavevmode +% \hbox to \linewidth{^^A +% \kern-\leftmargin\relax +% \hss +% \usebox0 +% \hss +% \kern-\rightmargin\relax +% }^^A +% }^^A +% \ifdim\wd0>\lw +% \sbox0{\small\t}^^A +% \ifdim\wd0>\linewidth +% \ifdim\wd0>\lw +% \sbox0{\footnotesize\t}^^A +% \ifdim\wd0>\linewidth +% \ifdim\wd0>\lw +% \sbox0{\scriptsize\t}^^A +% \ifdim\wd0>\linewidth +% \ifdim\wd0>\lw +% \sbox0{\tiny\t}^^A +% \ifdim\wd0>\linewidth +% \lwbox +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \else +% \lwbox +% \fi +% \else +% \usebox0 +% \fi +% \end{quote} +% If you have a \xfile{docstrip.cfg} that configures and enables \docstrip's +% TDS installing feature, then some files can already be in the right +% place, see the documentation of \docstrip. +% +% \subsection{Refresh file name databases} +% +% If your \TeX~distribution +% (\TeX\,Live, \mikTeX, \dots) relies on file name databases, you must refresh +% these. For example, \TeX\,Live\ users run \verb|texhash| or +% \verb|mktexlsr|. +% +% \subsection{Some details for the interested} +% +% \paragraph{Unpacking with \LaTeX.} +% The \xfile{.dtx} chooses its action depending on the format: +% \begin{description} +% \item[\plainTeX:] Run \docstrip\ and extract the files. +% \item[\LaTeX:] Generate the documentation. +% \end{description} +% If you insist on using \LaTeX\ for \docstrip\ (really, +% \docstrip\ does not need \LaTeX), then inform the autodetect routine +% about your intention: +% \begin{quote} +% \verb|latex \let\install=y\input{embedfile.dtx}| +% \end{quote} +% Do not forget to quote the argument according to the demands +% of your shell. +% +% \paragraph{Generating the documentation.} +% You can use both the \xfile{.dtx} or the \xfile{.drv} to generate +% the documentation. The process can be configured by the +% configuration file \xfile{ltxdoc.cfg}. For instance, put this +% line into this file, if you want to have A4 as paper format: +% \begin{quote} +% \verb|\PassOptionsToClass{a4paper}{article}| +% \end{quote} +% An example follows how to generate the +% documentation with pdf\LaTeX: +% \begin{quote} +%\begin{verbatim} +%pdflatex embedfile.dtx +%makeindex -s gind.ist embedfile.idx +%pdflatex embedfile.dtx +%makeindex -s gind.ist embedfile.idx +%pdflatex embedfile.dtx +%\end{verbatim} +% \end{quote} +% +% \begin{thebibliography}{9} +% \bibitem{attachfile} +% Scott Pakin: \textit{The \xpackage{attachfile} package}; +% 2005/02/20 v1.2; +% \CTANpkg{attachfile}. +% +% \bibitem{attachfile2} +% Heiko Oberdiek: \textit{The \xpackage{attachfile2} package}; +% 2006/08/16 v2.2; +% \CTANpkg{attachfile2}. +% +% \bibitem{pdfspec} +% Adobe Systems Incorporated: +% \href{http://www.adobe.com/devnet/acrobat/pdfs/pdf_reference.pdf}% +% {\textit{PDF Reference, Sixth Edition, Version 1.7}},% +% Oktober 2006; +% \url{http://www.adobe.com/devnet/pdf/pdf_reference.html}. +% +% \bibitem{mime} +% Network Working Group: RFC 2046, \textit{Multipurpose Internet Mail Extensions (MIME) Part Two: +% Media Types}, November 1996; \url{http://www.rfc-editor.org/}. +% +% \bibitem{types} +% IANA (Internet Assigned Numbers Authority): +% \textit{MIME Media Types}, May 2006; +% \url{http://www.iana.org/assignments/media-types/}. +% +% \end{thebibliography} +% +% \begin{History} +% \begin{Version}{2006/08/16 v1.0} +% \item +% First public version. +% \end{Version} +% \begin{Version}{2007/04/11 v1.1} +% \item +% Line ends sanitized. +% \end{Version} +% \begin{Version}{2007/09/09 v1.2} +% \item +% Fixes for plain-TeX, wrapper for package \xpackage{keyval} added. +% \item +% Catcode section rewritten. +% \end{Version} +% \begin{Version}{2007/10/28 v2.0} +% \item +% Collection support added (PDF 1.7). +% \end{Version} +% \begin{Version}{2007/10/29 v2.1} +% \item +% Export of object references by adding new option \xoption{id} and +% new macros \cs{embedfileifobjectexists} and \cs{embedfilegetobject}. +% \end{Version} +% \begin{Version}{2007/11/11 v2.2} +% \item +% Use of package \xpackage{pdftexcmds} for \LuaTeX\ support. +% \end{Version} +% \begin{Version}{2007/11/25 v2.3} +% \item +% Fix in use of \cs{pdf@filesize}, bug introduced in previous version. +% \end{Version} +% \begin{Version}{2009/09/25 v2.4} +% \item +% Bug fix: If \xpackage{hyperref} is used with option \xoption{unicode}, +% the Unicode encoded file name causes trouble. Therefore \cs{pdfstringdef} +% is now never used for option \xoption{filespec}, always method +% \texttt{escape} is applied (Peter Cibulka). +% \item +% Bug fix for \xoption{initialfile}. +% \item +% Bug fix for file names in \texttt{/EmbeddedFiles}. +% \item +% New option \xoption{ucfilespec} for file name support in Unicode +% (since PDF 1.7). +% \end{Version} +% \begin{Version}{2010/03/01 v2.5} +% \item +% Compatibility for \iniTeX. +% \item +% Package \xpackage{keyval} replaced by packages \xpackage{kvsetkeys} +% and \xpackage{kvdefinekeys} because of compatibility for \iniTeX. +% \item +% TDS location moved from TDS:tex/latex/oberdiek/embedfile.sty to +% TDS:tex/generic/oberdiek/embedfile.sty. +% \end{Version} +% \begin{Version}{2011/04/13 v2.6} +% \item +% Docu fixes (thanks Hans-Martin M\"unch). +% \end{Version} +% \begin{Version}{2016/05/15 v2.7} +% \item +% LuaTeX compatibility +% \end{Version} +% \begin{Version}{2018/11/01 v2.8} +% \item +% Remove luatex85 package depenency. +% \end{Version} +% \begin{Version}{2019/12/03 v2.9} +% \item +% add \verb|/AF| and \verb|/AFrelationship| keys (Andreas Karrenbauer) +% \item +% add \verb|\pdfcatalog| emulation for Lua\TeX. +% \item +% update to use \xpackage{iftex} +% \end{Version} +% \end{History} +% +% \PrintIndex +% +% \Finale +\endinput diff --git a/macros/latex/contrib/embedfile/embedfile.pdf b/macros/latex/contrib/embedfile/embedfile.pdf new file mode 100644 index 0000000000..a91594eaf5 Binary files /dev/null and b/macros/latex/contrib/embedfile/embedfile.pdf differ diff --git a/macros/latex/contrib/knowledge/README.md b/macros/latex/contrib/knowledge/README.md index a5bc16beaa..81a9ddf7f8 100644 --- a/macros/latex/contrib/knowledge/README.md +++ b/macros/latex/contrib/knowledge/README.md @@ -3,8 +3,8 @@ This directory contains the package name: knowledge license: LaTeX Project Public License version 1.2 or above - version: v1.19 - date: 2019/11/19 + version: v1.20 + date: 2019/12/03 author: Thomas Colcombet mail: thomas.colcombet@irif.fr web: https://www.irif.fr/~colcombe/knowledge_en.html diff --git a/macros/latex/contrib/knowledge/knowledge-code.dtx b/macros/latex/contrib/knowledge/knowledge-code.dtx index 40ea1c6aa0..d97ed2143a 100644 --- a/macros/latex/contrib/knowledge/knowledge-code.dtx +++ b/macros/latex/contrib/knowledge/knowledge-code.dtx @@ -23,7 +23,7 @@ % % \iffalse %\usepackage{expl3} -%\ProvidesExplPackage{knowledge}{2019/11/19}{1.19}{} +%\ProvidesExplPackage{knowledge}{2019/12/03}{1.20}{} %<*driver> \def\knowledgecode{active} \input{knowledge.tex} @@ -52,6 +52,7 @@ % \changes{1.17}{2019/10/03}{improvements} % % \changes{1.18}{2019/10/03}{bug fix/improvement} % % \changes{1.19}{2019/11/19}{bug fix} % +% \changes{1.20}{2019/12/03}{bug fix} % % \GetFileInfo{knowledge.sty} % % \DoNotIndex{} % @@ -71,8 +72,8 @@ This directory contains the package name: knowledge license: LaTeX Project Public License version 1.2 or above - version: v1.19 - date: 2019/11/19 + version: v1.20 + date: 2019/12/03 author: Thomas Colcombet mail: thomas.colcombet@irif.fr web: https://www.irif.fr/~colcombe/knowledge_en.html @@ -171,6 +172,16 @@ Content of the file knowledge-sources.zip: {\expandafter\tl_head:n\expandafter{\string\escape}} % \end{macrocode} % +% \begin{macrocode} +\cs_new:Nn\debug_vars:nn{ + \iow_term:n{---~{#1}} + \tl_map_inline:nn{#2} + {\iow_term:x{\space\space\exp_not:N##1=\space\tl_if_exist:NTF##1 + {{\exp_not:V##1}} + {undefined}}} +} +% \end{macrocode} +% % \subsection{Messages of the package} % %\AP First, some generic messages that are produced using \csintro{\knowledge_info:n}, @@ -204,20 +215,20 @@ Content of the file knowledge-sources.zip: % \csintro{knowledge~unknown~in~scope}, \csintro{knowledge~unknown~label}, \csintro{package~required} and \csintro{knowledge~exists}. % \begin{macrocode} \msg_new:nnn{ knowledge }{ knowledge~recursion } - { The~knowledges~are~probably~cyclic,~starting~from~'#1'~(namespace~'#2'),~ + { The~knowledges~are~probably~cyclic,~starting~from\\<#1>~(namespace~'#2'),~ currently~at~'#3'.} % \end{macrocode} % \begin{macrocode} \msg_new:nnn{ knowledge }{ knowledge~unknown } - {The~knowledge~'#1'~could~not~be~found~in~scopes~<~#3~>~(namespace~'#2').} + {The~knowledge~'#1'~could~not~be~found~in~scopes\\<#3>~(namespace~'#2').} % \end{macrocode} % \begin{macrocode} \msg_new:nnn{ knowledge }{ knowledge~unknown~in~scope } - {The~knowledge~'#1'~could~not~be~found~in~scope~'#3'~(namespace~'#2').} + {The~knowledge~'#1'~could~not~be~found~in~scope\\<#3>~(namespace~'#2').} % \end{macrocode} % \begin{macrocode} \msg_new:nnn{ knowledge }{ knowledge~unknown~label } - {The~label~'#2'~could~not~be~found~while~searching~for~'#1'.~Possibly~rerun~latex.} + {The~label~'#2'~could~not~be~found~while~searching~for:\\<#1>\\Possibly~rerun~latex.} % \end{macrocode} % \begin{macrocode} \msg_new:nnn{ knowledge }{ package~required } @@ -254,12 +265,12 @@ Content of the file knowledge-sources.zip: % \end{macrocode} %\AP We define new the final messages, that are thrown at the end of the compilation as a recap that some problems occured. These are: \csintro{recap~unknown~knowledge}, \csintro{recap~autoref~introduced~twice} and \csintro{recap~autoref~not~introduced}. % \begin{macrocode} -\msg_new:nnn{knowledge}{recap~unknown~knowledge} - {Some~knowledge~are~not~defined.~See~the~'.diagnose'~file~for~more~information.} -\msg_new:nnn{knowledge}{recap~autoref~introduced~twice} - {Some~knowledge~is~introduced~twice.~See~the~'.diagnose'~file~for~more~information.} -\msg_new:nnn{knowledge}{recap~autoref~not~introduced} - {Some~knowledge~is~used~but~not~introduced.~See~the~'.diagnose'~file~for~more~information.} +\exp_args:Nnnx\msg_new:nnn{knowledge}{recap~unknown~knowledge} + {Some~knowledge~are~not~defined.~See~the~'\c_sys_jobname_str.diagnose'~file~for~more~information.} +\exp_args:Nnnx\msg_new:nnn{knowledge}{recap~autoref~introduced~twice} + {Some~knowledge~is~introduced~twice.~See~the~'\c_sys_jobname_str.diagnose'~file~for~more~information.} +\exp_args:Nnnx\msg_new:nnn{knowledge}{recap~autoref~not~introduced} + {Some~knowledge~is~used~but~not~introduced.~See~the~'\c_sys_jobname_str.diagnose'~file~for~more~information.} % \end{macrocode} % % @@ -431,11 +442,18 @@ Content of the file knowledge-sources.zip: \bool_set_false:N\knowledge_configuration_diagnoseline_bool \KnowledgeConfigureBooleanOption[\knowledge_configuration_diagnoseline_bool]{diagnose~line} % \end{macrocode} +% Activates or deactivates the help in the "diagnose file". +% \begin{macrocode} +\bool_new:N\knowledge_configuration_diagnosehelp_bool +\bool_set_true:N\knowledge_configuration_diagnosehelp_bool +\KnowledgeConfigureBooleanOption[\knowledge_configuration_diagnosehelp_bool]{diagnose~help} +% \end{macrocode} % % \begin{macrocode} -\bool_new:N\knowledge_configuration_barsuggestion_bool -\bool_gset_false:N\knowledge_configuration_barsuggestion_bool -\KnowledgeConfigureBooleanOption[\knowledge_configuration_barsuggestion_bool]{bar~suggestion} +\bool_new:N\knowledge_configuration_diagnosebar_bool +\bool_gset_true:N\knowledge_configuration_diagnosebar_bool +\KnowledgeConfigureBooleanOption[\knowledge_configuration_diagnosebar_bool]{bar~suggestion}%backward compatibility +\KnowledgeConfigureBooleanOption[\knowledge_configuration_diagnosebar_bool]{diagnose~bar} % \end{macrocode} % % \begin{macrocode} @@ -1189,7 +1207,7 @@ Content of the file knowledge-sources.zip: {} } % \end{macrocode} -% The command \cs{\knowledge_scope_track_scope:n} +% \AP The command \cs{\knowledge_scope_track_scope:n} % is used to set the variable \cs{\knowledge_knowledge_instance_tl}. % If the argument is a scope name, then it is searched for in the context, and the corresponding "instance" is used. % Otherwise it is used as a "scopetag"; this "scopetag" being potentially @@ -1231,14 +1249,14 @@ Content of the file knowledge-sources.zip: % % \subsubsection{Scope tags} % -% A ""scopetag"" is a name that can be used to identify a family of "instances" that correspond to it. +% \AP A ""scopetag"" is a name that can be used to identify a family of "instances" that correspond to it. % It gets to have two variables attached to it: % \begin{description} % \itemAP[\cs{\knowledge_scopetag_tl}\texttt{{[TAG]}\_bool}] which tells whether it % has been officially declared (it is false if it has been used but not declared by a \cs{\knowledgescope} % or a \cs{\label} command). % \itemAP[\cs{\knowledge_scopetag_tl}\texttt{{[TAG]}\_seq}] is a sequence of -% "instances" that are attached to it. It always contains (as soon as created) +% "instances" that are attached to it. It always contains (as soon as created) \textbf{explicit-scope:}\texttt{TAG}. % \end{description} % % In order to identify scopes, the command~\cs{\knowledgescope} (or \cs{\label} which is overloaded for this purpose). @@ -1280,7 +1298,7 @@ Content of the file knowledge-sources.zip: % \AP The command \csintro{\knowledgescope} associates an "instance" to one or more "scopetags": % \begin{macrocode} \NewDocumentCommand\knowledgescope{ >{\SplitList{,}}m }{ - \kl_hide_begin:\group_begin: + \kl_hide_begin:\group_begin: \ProcessList{#1}\knowledge_knowledgescope_one:n \group_end:\kl_hide_end: } @@ -1290,8 +1308,7 @@ Content of the file knowledge-sources.zip: \cs_new:Nn\knowledge_knowledgescope_one:n{ \knowledge_scopetag_declares:n{#1} \scope_get_labelizable_instance:N\l_tmpb_tl - \KAuxWriteX*{\exp_not:n{\KAuxNewLinkScopetagInstance}%{\exp_not:n{#1}}% old version - {#1}{\l_tmpb_tl}} + \KAuxWriteX*{\exp_not:N\KAuxNewLinkScopetagInstance{#1}{\l_tmpb_tl}} } % \end{macrocode} % @@ -1302,10 +1319,11 @@ Content of the file knowledge-sources.zip: \bool_new:N\knowledge_configuration_label_autoscope_bool \bool_gset_true:N\knowledge_configuration_label_autoscope_bool \KnowledgeConfigureBooleanOption[\knowledge_configuration_label_autoscope_bool]{patch~label} +\KnowledgeConfigureBooleanOption[\knowledge_configuration_label_autoscope_bool]{label~scope} % \end{macrocode} -% \noindent\AP\csintro{\scopeLabel} implicitly adds a call to \cs{\knowledgescope} (if \cs{\knowledge_configuration_label_autoscope_bool} is set to true), and then calls the original \cs{\label} code. +% \noindent\AP\csintro{\knowledgelabel} implicitly adds a call to \cs{\knowledgescope} (if \cs{\knowledge_configuration_label_autoscope_bool} is set to true), and then calls the original \cs{\label} code. % \begin{macrocode} -\NewDocumentCommand\scopeLabel{m}{ +\NewDocumentCommand\knowledgelabel{m}{ \kl_hide_begin: \bool_if:NTF \knowledge_configuration_label_autoscope_bool @@ -1315,7 +1333,8 @@ Content of the file knowledge-sources.zip: \kl_hide_end: \cs_if_exist:NTF\LaTeXlabel\LaTeXlabel\use_none:n{#1} } -\let\label\scopeLabel +\let\scopeLabel\knowledgelabel%for backward compatibility +\let\label\knowledgelabel % \end{macrocode} % \AP In order to cicumvent this overloading, the normal \cs{\label} command % can be used using \csintro{\knowledge_latex_label:n}: @@ -1340,8 +1359,8 @@ Content of the file knowledge-sources.zip: \NewKAuxCommand\KAuxNewLinkScopetagInstance{mm} {Package~scope:~Declares~that~a~label~is~declared~in~an~instance~of~a~scope.} \DeclareKAuxPhaseCommand\KAuxNewLinkScopetagInstance{init}{ - \knowledge_scopetag_ensure:n{#1} - \seq_gput_right:cn{\knowledge_scopetag_tl[#1]_seq}{#2} + \knowledge_scopetag_ensure:n{#1} + \seq_gput_right:cn{\knowledge_scopetag_tl[#1]_seq}{#2} } % \end{macrocode} % @@ -1425,7 +1444,7 @@ Content of the file knowledge-sources.zip: {\scope_area_pop:n{##1}} {}} \kutils_secure_latex_command:N\label - \let\label\scopeLabel + \let\label\knowledgelabel } % \end{macrocode} % @@ -1497,7 +1516,7 @@ Content of the file knowledge-sources.zip: {\scope_area_pop:n{knowledge~import~internal}} \NewDocumentEnvironment{knowledge~context}{m} {\ScopeActivate\scope_area_push:n{knowledge~context~internal} - \scopeLabel{#1}} + \knowledgelabel{#1}} {\scope_area_pop:n{knowledge~context~internal}} % \end{macrocode} % \subsection{Files} @@ -1506,8 +1525,9 @@ Content of the file knowledge-sources.zip: % \subsubsection{KAux file} % % Code to be executed before, at initialization and after the writing of the \kl{kaux file}. +% It tests before is the file was properly written during the last compilation using |\IfKAuxReadyTF|. % \begin{macrocode} -\KAuxBefore{\KAuxProcess{init}} +\KAuxBefore{\IfKAuxReadyTF{\KAuxProcess{init}}{}} \KAuxInit{} \KAuxAfter{\KnowledgeDiagnoseOutput} % \end{macrocode} @@ -1558,6 +1578,21 @@ Content of the file knowledge-sources.zip: \knowledge_diagnose:n{} \knowledge_diagnose:n{} % + \bool_if:NTF\knowledge_configuration_diagnosehelp_bool + { + \knowledge_diagnose:n{********} + \knowledge_diagnose:n{*~Help~*} + \knowledge_diagnose:n{********} + \knowledge_diagnose:n{} + \knowledge_diagnose:x{\use:c{@backslashchar}\cs_to_str:N\knowledgeconfigure{diagnose~bar=false}~deactivate~`|'-notation~in~diagnose~file.} + \knowledge_diagnose:x{\use:c{@backslashchar}\cs_to_str:N\knowledgeconfigure{diagnose~help=false}~deactivate~long~help~in~the~diagnose~file.} + \knowledge_diagnose:x{\use:c{@backslashchar}\cs_to_str:N\knowledgeconfigure{diagnose~line=true}~add~line~numbers~to~diagnose~file.} + \knowledge_diagnose:n{} + }{ + \knowledge_diagnose:x{\use:c{@backslashchar}\cs_to_str:N\knowledgeconfigure{diagnose~help=true}~to~activate~help~in~the~diagnose~file.} + \knowledge_diagnose:n{} + } + % \int_compare:nNnT\kl_digest_unknownknowledge_int>0{ \knowledge_diagnose:n{************************} \knowledge_diagnose:n{*~Undefined~knowledges~*} @@ -1565,6 +1600,8 @@ Content of the file knowledge-sources.zip: \knowledge_diagnose:n{} % \knowledge_diagnose_reset_line: + \bool_if:NT\knowledge_configuration_diagnosebar_bool + {\knowledge_diagnose:x{\use:c{@backslashchar}knowledge{ignore}}} \KAuxProcess{diagnose-unknown-suggest} % \knowledge_diagnose:n{} @@ -1952,17 +1989,13 @@ Content of the file knowledge-sources.zip: export / false .code:n = {\bool_set_false:N\knowledge_knowledge_export_bool}, export / true .code:n = {\bool_set_true:N\knowledge_knowledge_export_bool}, export .default:n = false, -% instance .code:n = -% { \tl_set:Nn\knowledge_knowledge_instance_tl{#1} }, - link~instance .code:n = - { \tl_set:Nn\knowledge_knowledge_instance_tl{#1} }, scope .code:n = - { \knowledge_scope_track_scope:n{#1} + { \knowledge_scope_track_scope:n{#1} \tl_gput_right:Nn\knowledge_knowledge_immediate_synonym_directives_tl{,scope = {#1}}}, synonym .code:n = { \bool_set_true:N\knowledge_knowledge_is_synonym_bool \exp_args:Nnx\keys_set:nn { knowledge~directives } - {link={\exp_not:o\knowledge_knowledge_synonymlink_tl}, + {link={\exp_not:V\knowledge_knowledge_synonymlink_tl}, link~instance={\exp_not:V\knowledge_knowledge_synonyminstance_tl}}}, } % \end{macrocode} @@ -2049,7 +2082,7 @@ Content of the file knowledge-sources.zip: \bool_gset_false:N\knowledge_knowledge_is_synonym_bool % \tl_if_eq:nnTF{#4}{|} - {\__knowledge_knowledge_cont_newsyntax:nw{#3}|} + {\__knowledge_knowledge_cont_barnotation:nw{#3}|} {\tl_if_eq:nnTF{#4}{[} {\__knowledge_knowledge_cont_classical:nw{#3}[} {\__knowledge_knowledge_cont_classical:nw{#3}{#4}}} @@ -2071,6 +2104,7 @@ Content of the file knowledge-sources.zip: % \end{macrocode} % \begin{macrocode} \NewDocumentCommand\__knowledge_knowledge_cont_classical:nw{m >{\SplitList{|}}o m }{ + %\iow_term:n{\__knowledge_knowledge_cont_classical~{#1}{#3}} \knowledge_knowledge_setparseat:NNn\l_tmpa_tl\l_tmpb_tl{#1} % \use:x{ @@ -2081,6 +2115,9 @@ Content of the file knowledge-sources.zip: \tl_if_empty:NTF\l_tmpb_tl{}{,scope={\exp_not:V\l_tmpb_tl}}}} % \exp_args:NV\__knowledge_knowledge_recallsynonym:n\l_tmpa_tl + %\tl_show:N\l_tmpa_tl + %\tl_show:N\knowledge_knowledge_instance_tl + %\tl_show:N\knowledge_knowledge_immediate_synonym_directives_tl % \IfNoValueTF{#2}{}{ \cs_set:Nn\l_tmpa_cs:n @@ -2092,53 +2129,79 @@ Content of the file knowledge-sources.zip: \__knowledge_knowledge_end: } % \end{macrocode} +% \AP The code for the "`\vbar'-notation". +% \csintro{\knowledge_knowledge_barnotation_firstline:n} and \csintro{\knowledge_knowledge_barnotation_nextlines:n} +% contain the code to be executed when the first line is read, then the following ones. This is defined during parsing. +% \csintro{\knowledge_knowledge_barnotation_exec_line:n} changes from one value to the other during the parsing. % \begin{macrocode} -\cs_new:Npn\knowledge_knowledge_newsyntax_firstline:n{} +\cs_new:Npn\knowledge_knowledge_barnotation_firstline:n{} % \end{macrocode} % \begin{macrocode} -\cs_new:Npn\knowledge_knowledge_newsyntax_nextlines:n{} +\cs_new:Npn\knowledge_knowledge_barnotation_nextlines:n{} % \end{macrocode} +% \AP\csintro{\__knowledge_knowledge_cont_barnotation:nw} takes as first as argument the directives to be used for the +% defining the first "knowledge" (first argument in the "`\vbar'-notation"), and then it absorbs the content of the following line, +% from the first~`\vbar' to the line return. % \begin{macrocode} -\cs_new:Npn\__knowledge_knowledge_cont_newsyntax:nw#1{ - \cs_set:Nn\knowledge_knowledge_newsyntax_firstline:n - {\knowledge{##1}{#1} - \cs_set_eq:NN - \knowledge_knowledge_newsyntax_exec_line:n - \knowledge_knowledge_newsyntax_nextlines:n} - \cs_set:Nn\knowledge_knowledge_newsyntax_nextlines:n - {\exp_args:Nnx\knowledge{##1} - {\exp_not:V\knowledge_knowledge_immediate_synonym_directives_tl}} - \cs_set_eq:NN - \knowledge_knowledge_newsyntax_exec_line:n - \knowledge_knowledge_newsyntax_firstline:n - \kl_newknowledge_parse:w +\cs_new:Npn\__knowledge_knowledge_cont_barnotation:nw#1{ + \cs_set:Nn\knowledge_knowledge_barnotation_firstline:n{ + %\knowledge_knowledge_setparseat\g_tmpa_tl\g_tmpb_tl{#1} + %\iow_term:n{\knowledge{##1}{#1}~(first)} + \knowledge{##1}{#1} + \cs_set_eq:NN + \knowledge_knowledge_barnotation_exec_line:n + \knowledge_knowledge_barnotation_nextlines:n} + \cs_set:Nn\knowledge_knowledge_barnotation_nextlines:n + {%\iow_term:n{\exp_not:n{\knowledge{##1}}{synonym}} + \knowledge{##1}{synonym}} + \cs_set_eq:NN + \knowledge_knowledge_barnotation_exec_line:n + \knowledge_knowledge_barnotation_firstline:n + \kl_newknowledge_parse:w } % \end{macrocode} +% \AP Now the core of the parsing works by calling \csintro{\kl_newknowledge_parse:w}. +% It tests the existence of a starting `\vbar', and in this case absorb the line +% using \cs{\knowledge_knowledge_barnotation_exec_line:w} +% and calls \cs{\knowledge_knowledge_barnotation_exec_line:n} to +% execute it. This operation is repeated +% until there are no more starting `\vbar', and in this case \cs{\__knowledge_knowledge_end:} +% is used. % \begin{macrocode} \cs_new:Npn\kl_newknowledge_parse:w{ - \peek_charcode_remove_ignore_spaces:NTF| - {\kl_insert_klendline:w\knowledge_knowledge_newsyntax_exec_line:w} - {\__knowledge_knowledge_end:} + \peek_charcode_remove_ignore_spaces:NTF| + {\kl_insert_klendline:w\knowledge_knowledge_barnotation_exec_line:w} + {\__knowledge_knowledge_end:} } % \end{macrocode} % \begin{macrocode} -\cs_new:Npn\knowledge_knowledge_newsyntax_exec_line:w#1\kl_end_line:{ - \knowledge_knowledge_newsyntax_exec_line:n{#1} - \kl_newknowledge_parse:w +\cs_new:Npn\knowledge_knowledge_barnotation_exec_line:w#1\kl_end_line:{ + \knowledge_knowledge_barnotation_exec_line:n{#1} + \kl_newknowledge_parse:w } % \end{macrocode} +% The catcode modifications for parsing a single line in "`\vbar'-notation": +% \AP The macro \csintro{\kl_insert_klendline:w} replaces the next occurrence of +% a line return by the control sequence \csintro{\kl_end_line:}. +% This temporarily changes the catcode. However, as soon as it is done, a normal command +% (meaning using the standard catcode regime) can then absorb the line. % \begin{macrocode} \char_set_catcode_active:N\^^M \cs_gset:Npn\kl_insert_klendline:w{\group_begin:\catcode`\^^M=\active\kl_insert_klendline_:w} \cs_gset:Npn\kl_insert_klendline_:w#1^^M{\group_end:#1\kl_end_line:} \char_set_catcode_end_line:N\^^M % \end{macrocode} +% \AP How to break a line from the "`\vbar'-notation" in pieces. +% The \csintro{\knowledge_knowledge_setparseat:NNn}\ +% takes two tl-variables and the line content. +% The result is that the part before the first `@' is put inside the first variable, +% and what is after and before the next `@' (possibly empty) in the second one. % \begin{macrocode} \cs_new:Nn\knowledge_knowledge_setparseat:NNn - {\knowledge_knowledge_setparseat_:NNw#1#2#3@@\kl_end:} + {\knowledge_knowledge_setparseat_:NNw#1#2#3@@\kl_end:} \cs_new:Npn\knowledge_knowledge_setparseat_:NNw#1#2#3@#4@#5\kl_end: - {\tl_set:Nx#1{\tl_trim_spaces:n{#3}} - \tl_set:Nx#2{\tl_trim_spaces:n{#4}}} + {\tl_set:Nx#1{\tl_trim_spaces:n{#3}} + \tl_set:Nx#2{\tl_trim_spaces:n{#4}}} % \end{macrocode} % %\AP The boolean \cs{\knowledge_knowledgestyle_bool} @@ -2229,9 +2292,9 @@ Content of the file knowledge-sources.zip: {} % \bool_if:NT\knowledge_knowledge_clear_bool - {\tl_put_left:Nn\knowledge_knowledge_directives_tl{clear,}} + {\tl_put_left:Nn\knowledge_knowledge_directives_tl{clear,}} \bool_if:NT\knowledge_knowledge_append_bool - {\tl_put_left:Nn\knowledge_knowledge_directives_tl{force,}} + {\tl_put_left:Nn\knowledge_knowledge_directives_tl{force,}} % \bool_if:nTF{\knowledge_knowledge_now_bool} {\use:x{ @@ -2348,8 +2411,9 @@ Content of the file knowledge-sources.zip: } % \end{macrocode} % -% \AP The following macro, \csintro{\knowledge_klTKS:nnn} is an internal version of \cs{\kl}-like commands. it takes explicitely the text to be displayed, -% followed by the \kl{knowledge name} to be used, and a \kl{label} pointing to the \kl[instance]{instance of scope} +% \AP The following macro, \csintro{\knowledge_klTKS:nnn} is an internal version of \cs{\kl}-like commands. +% It takes explicitly (1) the text to be displayed, +% (2) the \kl{knowledge name} to be used for the search, and (3) a \kl{label} pointing to the \kl[instance]{instance of scope} % in which the \kl{knowledge name} has to be searched for. This \kl{label} can be empty, and in this case, this means that % the stack of instances that are visible in the context of the call of the command should be inspected for searching for % the knowledge. @@ -2372,14 +2436,18 @@ Content of the file knowledge-sources.zip: % \end{macrocode} % \begin{macrocode} \cs_new:Nn\knowledge_klTKS:nnn{ + %\iow_term:n{\knowledge_klTKS:nnn{#1}{#2}{#3}} \group_begin: % \tl_set:Nx\knowledge_kl_linkscope_tl{\tl_to_str:n{#3}} - \tl_set:Nn\knowledge_kl_instance_tl{} + \tl_set:Nn\knowledge_kl_linkinstance_tl{} \tl_set:Nn\knowledge_kl_text_tl{#1} \tl_set:Nx\knowledge_kl_base_key_tl{\tl_to_str:n{#2}} \tl_set_eq:NN\knowledge_kl_key_tl\knowledge_kl_base_key_tl \int_set_eq:NN\knowledge_kl_recursion_int\knowledge_kl_max_recursion_int + %\debug_vars:nn{klTKS:nnn} + % {\knowledge_kl_linkscope_tl\knowledge_kl_linkinstance_tl + % \knowledge_kl_text_tl\knowledge_kl_base_key_tl} % \tl_if_exist:cTF {knowledge_kl_\tl_to_str:V\knowledge_kl_modifiers_tl _init_tl} @@ -2420,7 +2488,9 @@ Content of the file knowledge-sources.zip: \knowledge_kl_find_recursion_exceeded:TF \knowledge_kl_error_recursion: {\tl_if_empty:NTF\knowledge_kl_linkscope_tl - \knowledge_kl_find_withoutscope: + {\tl_if_empty:NTF\knowledge_kl_linkinstance_tl + {\knowledge_kl_find_withoutscope:} + {\knowledge_kl_find_withinstance:}} \knowledge_kl_find_withscopetag:} } % \end{macrocode} @@ -2435,23 +2505,25 @@ Content of the file knowledge-sources.zip: \cs_new:Nn\knowledge_kl_find_withinstance:{ \knowledge_knowledge_if_exist:VVVTF \knowledge_kl_namespace_tl - \knowledge_kl_instance_tl + \knowledge_kl_linkinstance_tl \knowledge_kl_key_tl {\knowledge_kl_exec:nnV \knowledge_kl_namespace_tl - \knowledge_kl_instance_tl + \knowledge_kl_linkinstance_tl \knowledge_kl_key_tl} { \knowledge_kl_error_unknown_in_scope_firsttime: } } % \end{macrocode} -% \csintro{\knowledge_kl_find_withscopetag:} searches for the knowledge, with a given scopetag +% \AP \csintro{\knowledge_kl_find_withscopetag:} searches for the knowledge, with a given "scopetag". % \begin{macrocode} \cs_new:Nn\knowledge_kl_find_withscopetag:{ + %\debug_vars:nn{\knowledge_kl_find_withscopetag:}{\knowledge_kl_linkscope_tl} \exp_args:NV\knowledge_scopetag_warn_if_unknown:n\knowledge_kl_linkscope_tl \tl_clear:N\l_tmpa_tl \exp_args:Nc\seq_map_function:NN {\knowledge_scopetag_tl[\knowledge_kl_linkscope_tl]_seq} \knowledge_kl_find_scopetag_tmpa:n + % tests whether the search was successful \tl_if_empty:NTF\l_tmpa_tl {\knowledge_kl_error_unknown_in_scope_firsttime:} {\knowledge_kl_exec:VVV @@ -2460,10 +2532,14 @@ Content of the file knowledge-sources.zip: \knowledge_kl_key_tl} } % \end{macrocode} -% \csintro{\knowledge_kl_find_scopetag:Nn} takes a token list for the result, and -% a scopetag as argument. If the tl is empty, and a knowledge using scopetag as instance is found, -% then the scopetag is transfered to the token list. +% \AP \csintro{\knowledge_kl_find_scopetag:Nn} takes a tl variable for the result, and +% a "scopetag" as argument. If the tl is empty, and a knowledge using "scopetag" as instance is found, +% then the "scopetag" is transferred to the token list. \csintro{\knowledge_kl_find_scopetag_tmpa:n} +% uses as variable \cs{\l_tmpa_tl} % \begin{macrocode} +\cs_new:Npn\knowledge_kl_find_scopetag_tmpa:n{ + \knowledge_kl_find_scopetag:Nn\l_tmpa_tl +} \cs_new:Nn\knowledge_kl_find_scopetag:Nn{ \tl_if_empty:NTF#1 {\knowledge_knowledge_if_exist:VnVTF @@ -2474,23 +2550,25 @@ Content of the file knowledge-sources.zip: {}} {} } -\cs_new:Npn\knowledge_kl_find_scopetag_tmpa:n{ - \knowledge_kl_find_scopetag:Nn\l_tmpa_tl -} % \end{macrocode} % \begin{macrocode} \cs_new:Nn\knowledge_kl_find_withoutscope:{ + %\debug_vars:nn{\knowledge_kl_find_withoutscope:} + % {\knowledge_kl_key_tl\knowledge_kl_linkinstance_tl} + %\exp_args:NVVV\knowledge_knowledge_if_exist:nnnTF + % \knowledge_kl_namespace_tl\knowledge_kl_linkinstance_tl\knowledge_kl_key_tl + % {\tl_show:n{found}}{\tl_show:n{not~found}} \knowledge_kl_find_in_scope:VNTF \knowledge_kl_key_tl - \knowledge_kl_instance_tl - {\knowledge_kl_exec:nnV + \knowledge_kl_linkinstance_tl + {\knowledge_kl_exec:VVV \knowledge_kl_namespace_tl - \knowledge_kl_instance_tl + \knowledge_kl_linkinstance_tl \knowledge_kl_key_tl} {\knowledge_kl_error_unknown_firsttime:} } % \end{macrocode} -% \cs{\knowledge_kl_find_in_scope:nNTF} introduces the namespace as +% \AP \csintro{\knowledge_kl_find_in_scope:nNTF} introduces the "namespace" as % first argument in a call to \cs{\knowledge_kl_find_in_scope:nnNTF} % \begin{macrocode} \cs_new:Npn\knowledge_kl_find_in_scope:nNTF{ @@ -2498,12 +2576,13 @@ Content of the file knowledge-sources.zip: \knowledge_kl_namespace_tl } % \end{macrocode} -% We now code the macro \cs{\knowledge_kl_find_in_scope:nnNTF}, that +% \AP We now code the macro \csintro{\knowledge_kl_find_in_scope:nnNTF}, that % takes the \kl{namespace}, and the \kl{knowledge}, and answers the \kl{instance} (if it exists), % and sets the tl-token (third argument) to contain the scope in which it has been found. % \begin{macrocode} \cs_new:Nn\knowledge_kl_find_in_scope:nnNTF{ \group_begin: + %\tl_show:n{\knowledge_kl_find_in_scope:~#1/#2/#3} \tl_set:Nn\l_tmpa_tl{#1} \tl_set:Nn\l_tmpb_tl{#2} \bool_gset_false:N\g_tmpa_bool @@ -2518,17 +2597,17 @@ Content of the file knowledge-sources.zip: % \end{macrocode} % \cs{\knowledge_kl_find_in_scope_test:n} tests the existence of a "knowledge" % in the "scopetag" given as argument. For this it searches through all the instances associated to the -% scopetag, and sets \cs{\g_tmpa_bool} when found. +% "scopetag", and sets \cs{\g_tmpa_bool} when found. % One has to check that the visible instance is not the mark. % \begin{macrocode} \cs_new:Nn\knowledge_kl_find_in_scope_test:n{ - \tl_if_eq:nnTF{#1}{|}{}{ - \knowledge_kl_find_in_scope_test_:n{#1} - \seq_if_exist:cTF{\knowledge_scopetag_tl[#1]_seq} - {\exp_args:Nc\seq_map_function:NN - {\knowledge_scopetag_tl[#1]_seq} - \knowledge_kl_find_in_scope_test_:n - }{}} + \tl_if_eq:nnTF{#1}{|}{}{ + \knowledge_kl_find_in_scope_test_:n{#1} + \seq_if_exist:cTF{\knowledge_scopetag_tl[#1]_seq} + {\exp_args:Nc\seq_map_function:NN + {\knowledge_scopetag_tl[#1]_seq} + \knowledge_kl_find_in_scope_test_:n + }{}} } % \end{macrocode} % \begin{macrocode} @@ -2557,13 +2636,14 @@ Content of the file knowledge-sources.zip: \cs_new:Nn\knowledge_kl_exec:nnn{ \tl_set:Nx\knowledge_kl_resourcearguments_tl {{#1}{#2}{\exp_not:n{#3}}} + %\debug_vars:nn{\knowledge_kl_exec:nnn}{\knowledge_kl_resourcearguments_tl} \exp_args:NNc\tl_set:Nn\knowledge_kl_resourcetoken_tl {\knowledge_id:nnn{#1}{#2}{#3}} \expandafter\ktuple_countuse_gincr:N\knowledge_kl_resourcetoken_tl % \tl_clear:N\knowledge_kl_link_tl \tl_clear:N\knowledge_kl_linkscope_tl - \tl_clear:N\knowledge_kl_instance_tl + \tl_clear:N\knowledge_kl_linkinstance_tl \tl_map_function:NN \knowledge_kl_styledirectives_tl \tl_clear:N @@ -2662,7 +2742,7 @@ Content of the file knowledge-sources.zip: {\tl_if_empty:NTF\l_tmpa_tl{}{\tl_put_right:Nn\l_tmpa_tl{,} \tl_put_right:Nn\l_tmpa_tl{namespace={#1}}}} - \bool_if:NTF\knowledge_configuration_barsuggestion_bool{ + \bool_if:NTF\knowledge_configuration_diagnosebar_bool{ %\knowledge_diagnose:x{\char_escape_tl knowledge{\exp_not:V\l_tmpa_tl}} \tl_set:Nn\l_tmpa_tl{~~~|~~#3} \tl_if_empty:nTF{#2}{} @@ -3045,7 +3125,7 @@ Content of the file knowledge-sources.zip: % \begin{macrocode} \NewKnowledgeParamTl*{link} \NewKnowledgeParamTl*[\knowledge_kl_linkscope_tl]{link~scope} -\NewKnowledgeParamTl*[\knowledge_kl_instance_tl]{link~instance} +\NewKnowledgeParamTl*[\knowledge_kl_linkinstance_tl]{link~instance} \NewKnowledgeParamTl*[\knowledge_kl_forcedtext_tl]{text} \NewKnowledgeParamTl*{wrap} % \end{macrocode} @@ -3848,7 +3928,13 @@ Content of the file knowledge-sources.zip: \expandafter{\tl_to_str:n{#1}}} \newcommand\robustdisplaybracket[1] {[\robustdisplay{#1}]} - +% \end{macrocode} +% The ignore directive does nothing... +% \begin{macrocode} +\knowledgedirective{ignore}{} +% \end{macrocode} +% +% \begin{macrocode} \ExplSyntaxOff % in paper mode, nothing is displayed \IfKnowledgePaperModeTF{ diff --git a/macros/latex/contrib/knowledge/knowledge-utils.dtx b/macros/latex/contrib/knowledge/knowledge-utils.dtx index dc0f0deed7..477d57c188 100644 --- a/macros/latex/contrib/knowledge/knowledge-utils.dtx +++ b/macros/latex/contrib/knowledge/knowledge-utils.dtx @@ -323,11 +323,46 @@ \KAuxWrite*{}} \NewDocumentCommand\KAuxClose{} - {\iow_close:N\knowledge_kaux_iow + {\KAuxWrite*{\KAuxEOF {}} + \iow_close:N\knowledge_kaux_iow \bool_gset_true:N\kaux_can_be_used_bool \kaux_posttreatment_tl } % \end{macrocode} +% Testing if the KAux file is complete. +% |\kaux_if_exist_containline:nnTF| tests if a line of a file is equal to the argument. +% This has to be used with care: the searched line is transformed into a str, thus introducing +% potential extra spaces after the control sequences. +% Also, when lines are read from the files, the trailing spaces are lost. +% Anyway, |IfKAuxReadyTF| tests for the presence of |\KAuxEOF {}| in a proper way. +% \begin{macrocode} +\cs_new:Npn\kaux_if_exist_containline:nnTF#1#2{ + \file_if_exist:nTF{#1}{ + \ior_open:Nn\klg_tmpa_ior{#1} + \bool_gset_false:N\g_tmpa_bool + \bool_gset_false:N\g_tmpb_bool + \str_gset:Nn\g_tmpb_str{#2} + \bool_do_until:Nn\g_tmpa_bool{ + \ior_if_eof:NTF\klg_tmpa_ior + {\bool_set_true:N\g_tmpa_bool} + { + \ior_str_get:NN\klg_tmpa_ior\g_tmpa_str + %\iow_term:x{(\exp_not:V\g_tmpa_str)=?(\exp_not:V\g_tmpb_str)} + \str_if_eq:NNTF\g_tmpa_str\g_tmpb_str + {\bool_gset_true:N\g_tmpa_bool + \bool_gset_true:N\g_tmpb_bool} + {} + }} + \ior_close:N\klg_tmpa_ior + %\bool_show:N\g_tmpb_bool + \bool_if:NTF\g_tmpb_bool + } + {\use_ii:nn} +} + +\NewDocumentCommand\IfKAuxReadyTF{} + {\exp_args:Nx\kaux_if_exist_containline:nnTF{\c_sys_jobname_str.kaux}{\KAuxEOF {}}} +% \end{macrocode} % % % @@ -386,6 +421,14 @@ \tl_gset:cn{kaux_\cs_to_str:N#1-args_tl}{#2} \tl_gput_right:Nn\kaux_command_list_tl{#1} } +% \end{macrocode} +% As an example, |\KAuxEOF| describes is used at the end of the Kaux file. +% \begin{macrocode} +\NewKAuxCommand\KAuxEOF{m} + {Does~nothing,~useless~empty~argument + ,~and~is~searched~for~knowing~if~the~kaux~file~was~written~till~the~end.} +% \end{macrocode} +% \begin{macrocode} \NewDocumentCommand\KAuxCommand{mmm} { \cs_if_exist:NTF #1 {} @@ -524,7 +567,7 @@ % \subsection{References} % % This is an old part of the code which is difficult to read. -% It should probably be cleaned. +% It should be cleaned. But this is a lot of work. % % When using \cs{\cell_new_type:nnn}, a new name space is created, % in which can be stored information. The first parameter is the name space. The second @@ -1010,7 +1053,8 @@ \ior_close:N\klg_tmpa_ior \iow_close:N\klg_tmpa_iow \group_end:}} - +% \end{macrocode} +% \begin{macrocode} \cs_new_protected_with_variants:Nnn\kl_compare_files:Nnn{NnV,NVn,NVV} {\group_begin: \bool_set_false:N\l_tmpa_bool% set when finished @@ -1052,7 +1096,8 @@ {\group_end:\bool_set_true:N#1} {\group_end:\bool_set_false:N#1} } - +% \end{macrocode} +% \begin{macrocode} \cs_new_protected:Nn\kl_tl_to_file:nn {\iow_open:Nn\klg_tmpa_iow{#1} \iow_now:Nn\klg_tmpa_iow{#2} diff --git a/macros/latex/contrib/knowledge/knowledge.pdf b/macros/latex/contrib/knowledge/knowledge.pdf index 7412086a72..b2e551fbb9 100644 Binary files a/macros/latex/contrib/knowledge/knowledge.pdf and b/macros/latex/contrib/knowledge/knowledge.pdf differ diff --git a/macros/latex/contrib/knowledge/knowledge.tex b/macros/latex/contrib/knowledge/knowledge.tex index d567aa3604..d65b26a459 100644 --- a/macros/latex/contrib/knowledge/knowledge.tex +++ b/macros/latex/contrib/knowledge/knowledge.tex @@ -188,7 +188,10 @@ \knowledgeconfigure{quotation=false} -\knowledge{LaTeX}[latex|LATEX|Latex]{text=\LaTeX, color=black} +\knowledge{LaTeX}[latex|LATEX|Latex]{text=\LaTeX} +\knowledge{tex}[TeX|TEX]{text=\TeX} +\knowledge{pdflatex}{typewriter} + \knowledge"{text=\quotesymbol} \knowledge{""}{text=\quotesymbol\quotesymbol} \knowledgeconfigure{quotation=true} @@ -220,7 +223,6 @@ \knowledge{{@}}{kcommand,text=\arobas} -\knowledge{tex}{text=\TeX} \knowledgedirective{people}{emphasize,color=DarkGray} \knowledge{stackexchange}{people} @@ -317,8 +319,7 @@ \knowledge{index key=}{directive} \knowledge{index parent key=}{directive} \knowledge{index style=}{directive} -\knowledge{bar suggestion=}{directive} -\knowledge{patch label}[patch label=]{option} +\knowledge{label scope}[label scope=]{option} \knowledge{color=}{directive} \knowledge{cyclic color}{directive} \knowledge{colorbox=}{directive} @@ -357,8 +358,9 @@ \knowledge{unprotect link co}{option,text=unprotect link} \knowledge{hyperlinks=}{option} \knowledge{fix hyperref twocolumn}{option} +\knowledge{diagnose help=}[diagnose help]{option} \knowledge{diagnose line=}[diagnose line]{option} -\knowledge{bar suggestion=}[bar suggestion]{option} +\knowledge{diagnose bar=}[diagnose bar]{option} \knowledge{active}{option} @@ -469,10 +471,6 @@ | scope | scopes | Scopes -\knowledge{doc notion} - | explicit scope - | Explicit scopes - | explicit scopes \knowledge{doc notion} | scopetag | scopetags @@ -521,9 +519,6 @@ \knowledge {scope.sty}{link=scope option} -\knowledge{latex}{text=\LaTeX} -\knowledge{tex}{} -\knowledge{pdflatex}{} \knowledgedefault{} @@ -741,9 +736,12 @@ This involves testing the counter |beamer@coveringdepth| which if higher than o "Explicit scopes" are introduced. Updating of the documentation. "up" directive in math mode now silently does nothing, and \cs{\knowledgedirective} now forbids redefinitions by default (thanks to Léo Stefanesco). \item[2019-07-02] Removing the `\texttt{kl}' and `\texttt{intro}' styles that prevented a proper configuration of "intro notion@@style" (thanks to Léo Stefanesco). \item[2019-10-03] Update of the documentation, and V1.17. -\item[2019-10-27] Bug correction and added the `\kl{patch label}' configuration directive (thanks to \href{https://becca.ooo/}{Rebecca Turner}). V1.18. +\item[2019-10-27] Bug correction and added the `\textbf{patch label}' configuration directive (thanks to \href{https://becca.ooo/}{Rebecca Turner}). V1.18. \item[2019-11-19] Now the labels are evaluated before being written to the "kaux file" in a \cs\KAuxNewLinkScopetagInstance\ command (bug fix). V1.19. - \end{compactdesc} +\item[2019-11-29] Help added in the "diagnose file". \textbf{bar suggestion} (still working) renamed to "diagnose bar", and activated by default. \textbf{patch label} is renamed into "label scope". +\item[2019-12-02] The "kaux file" is now checked for completeness befre being used. This should avoid errors when the previous compilation failed. +\item[2019-12-03] Corrected bug in the scope access. V1.20 +\end{compactdesc} \normalsize %\restoregeometry @@ -1229,8 +1227,11 @@ be used in the optional parameter of \cs{\usepackage} when loading the "knowledg ""Configuration directives"" consists of a comma separated list of elements that can take the following values: \begin{description} -\itemAP["diagnose line="] can be set to true or false. It activates or deactivates the line numbering in the "diagnose file". False is the default. +\itemAP["diagnose bar="] (de)activates the "`\vbar'-notation" in the "diagnose file". True by default. +\itemAP["diagnose help="] can be set to true or false. It activates or deactivates the help in the "diagnose file". True by default. +\itemAP["diagnose line="] can be set to true or false. It activates or deactivates the line numbering in the "diagnose file". False by default. \itemAP[\kl{fix hyperref twocolumn}] triggers a hack that solves a known problem that may occur when "hyperref@@package" is used in two-columns mode. +\itemAP[\kl{label scope}] enables or disables the redefined \cs{\label} command, which helps automatically define scopes (default is~\textmd{true}). \itemAP["notion@@option"] configures the "notion" "directive" which is a refined version of "autoref". \itemAP["protect quotation="] is followed by a comma separated list of environments in which the "quotation notation" will be automatically deactivated (surrounded by braces if more than one item in the list). \itemAP[\intro{protect link co} and \intro{unprotect link co}] starts and ends respectively a zone in which the "knowledge@@package" package do not create hyperlinks. These can be nested. @@ -1879,13 +1880,27 @@ The following code (that requires the "scope option" for being functional) shoul It is often the case in a text, that one has to locally break the nesting structure of a document, and refer to a object local in an environment. For instance, a comment may refer to a variables/concept that has been locally used in the proof. The "knowledge@@package" provides suitable mechanisms for complex referencing of scopes. Let us explain this through an example: \begin{code} -\cs\begin{definition}\cs\label{} -\indent~~\cs\knowledge{} -\cs\end{definition} +\textcolor{gray}{\% We declare first in the preamble the environments that use knowledge.}\\ +\cs\knowledgeconfigureenvironment\{definition\}\{knowledge=attracts\}\par\indent +{[...]}\\ +\indent +\cs\begin\{definition\}\cs\label\{somewhere\}\\ +\indent~~\cs\knowledge\{something\}\{notion\}\\ +\indent~~Here, \cs\intro\{something\} is a notion internal to the definition. +\cs\end\{definition\} \end{code} +Note here that what is important is the location of the \cs\knowledge\ command, irrespective of the location ofthe \cs\intro\ command. +\AP The \cs\label\ command is used to name the "scope". In fact, the real command is +\begin{center} + \smallcode{\csintro\knowledgescope\{scope name\}} +\end{center}\noindent +which associates a scope name to the surrounding environment (providing it has been declared possible to do it using +\cs\knowledgeconfigureenvironment). +\AP +The standard \LaTeX\ command \cs\label\ is overloaded and performs implicitly a call to \cs\knowledgescope\ (this behavior can be deactivated/reactivated using the ""label scope=""\texttt{\{true,false\}} directive). The result is that the same string of characters can be used in order to name the scope, and at the same time is used as a standard \LaTeX\ label. -Something important is missing so far: one rapidly wants to access to \kl{knowledges} that do not exist in the current \kl{scope}. For instance, a notion is used in a section of a document, and one would like to refer to it in the introduction. Another case is that of a notion or a mathematic variable that is introduced in the statement of a theorem, and should be accessible inside the proof. There are essentially two ways to access such distance \kl{knowledges}: either use the \smallcode{\cs\kl(label)\{text\}} command (or the equivalent \smallcode{\kl{"...@...@..."}} notation), or use the \cs{\knowledgeimport} command. We describe the second possibility now. The syntax is: +\AP Something important is missing so far: one rapidly wants to access to \kl{knowledges} that do not exist in the current \kl{scope}. For instance, a notion is used in a section of a document, and one would like to refer to it in the introduction. Another case is that of a notion or a mathematic variable that is introduced in the statement of a theorem, and should be accessible inside the proof. There are essentially two ways to access such distant \kl{knowledges}: either use the \smallcode{\cs\kl(label)\{text\}} command (or the equivalent \smallcode{\kl{"...@...@..."}} notation), or use the \cs{\knowledgeimport} command. We describe the second possibility now. The syntax is: \begin{center} \smallcode{\csintro\knowledgeimport\{label\}} \end{center} @@ -1967,18 +1982,19 @@ The detail of the problems are then gathered in the \kl{diagnose file}. \label{subsection:diagnose file} The \intro{diagnose file} is a file that is created when the "knowledge@@package" package is used -(note that another file, ""jobname.kaux"" is also created by the "knowledge@@package" package, for internal use). It enormously eases the use of the package, and it is a good habit to sometimes check it. It gathers a certain number of informations, that can be warning, code to be used, or simply information. This file has the name of the tex document with the extension \kl{.diagnose}. Its content is divided into clearly identified parts. Depending on the used options, some of these parts may appear or disappear. +(note that another file, ""jobname.kaux"" is also created by the "knowledge@@package" package, for internal use). It enormously eases the use of the package, and it is important to look into it when finalizing a document. It gathers a certain number of informations, that can be warning, code to be used, or simply information. This file has the name of the tex document with the extension \kl{.diagnose}. Its content is divided into clearly identified parts. Depending on the used options, some of these parts may appear or disappear. \begin{description} \itemAP[\intro{Undefined knowledges}] in this section are listed all the knowledges that have been unsuccessfully searched for. These are given in lines either of the form - \begin{quote} - \texttt{\cs{\knowledge}\{undefined knowledge\}\{\textit{suggested directives}\}} - \end{quote} - or of the form \begin{quote} \texttt{\cs{\knowledge}\{\textit{suggested directives}\}\\ - \indent~~~\klbn|~~undefined knowledge}\textit{[\klbn@scope]} + \indent~~~\klbn|~~undefined knowledge}\textit{[\klbn@scope]}\\ + \indent~~~~~~~~~~~~~~\vdots \end{quote} - \AP Switching from one mode to another is obtained using the "configuration directive" ""bar suggestion=""\{true,false\} (default is true). + or of the form + \begin{quote} + \texttt{\cs{\knowledge}\{undefined knowledge\}\{\textit{suggested directives}\}} + \end{quote} + \AP Switching from one mode to another is obtained using the "configuration directive" "diagnose bar="\{true,false\} (default is true). The intent is that copying the content of this section to the document itself will solve all problems of \kl{undefined knowledges}. It is an efficient way, when one has written a document without caring so much about knowledges to copy the content of this section, and then modify it/reorganize it, in order to suit ones purposes. By default, no suggestion is offered, or "notion" is suggested if the "notion@@option" directive has been used. Suggestion can be automatically configured using the "suggestion=@@variant" "directive@@variant" of the macros \cs{\knowledgenewvariant} and \cs{\knowledgesetvariant}. @@ -2001,9 +2017,8 @@ This can be activated using the "diagnose line" boolean option: \end{center} \AP By default, the "diagnose file" gives suggestions to be used with the normal \cs\knowledge\ syntax. A "`\vbar'-notation" suggestion can be activated using: -This can be activated using the "diagnose line" boolean option: \begin{center} -\smallcode{\cs\knowledgeconfigure\{""bar suggestion=""true\}} +\smallcode{\cs\knowledgeconfigure\{""diagnose bar=""true\}} \end{center} \iffalse @@ -2369,9 +2384,9 @@ I do not know to which extend it is compatible with various classes... \subsubsection{The "notion@@option" directive} -The configuration option~\intro(option){notion} is activated using: +\AP The configuration option~\intro(option){notion} is activated using: \begin{center} -\smallcode{\cs\knowledgeconfigure\{\intro(option){notion}\}} +\smallcode{\cs\knowledgeconfigure\{\kl(option){notion}\}} \end{center}\noindent \AP It automatically configures a \kl[\knowledge directives]{directive} \intro{notion} which is an \kl{autoref} displayed properly: @@ -2710,7 +2725,7 @@ If other kind of problems occur, report them to \texttt{thomas.colcombet@irif.fr \label{subsection:configuration directive list} \begin{compactdesc} -\item["bar suggestion="\textmd{\{true,false\}}] activates the \kl{`\vbar'-notation} in the "diagnose file" (default is false) +\item["diagnose bar="\textmd{\{true,false\}}] activates the \kl{`\vbar'-notation} in the "diagnose file" (default is false) \item["composition"] switches to "composition mode", \item["cyclic colors=@@option"] fixes the cyclic list of colors used by the "directive" "cyclic color". \item["diagnose line="\textmd{\{true,false\}}] activates or deactivates the line numbering in the "diagnose file". @@ -2720,7 +2735,7 @@ If other kind of problems occur, report them to \texttt{thomas.colcombet@irif.fr \item[\kl{hyperlinks=}\textmd{\{true,false\}}] activates or deactivates the hyperlinks. \item[{{\kl(option){notion}}}] activates the "notion" directive \item["paper"] switches to "paper mode", -\itemAP[\kl{patch label}] enables or disables the redefined \cs{\label} command, which helps automatically define scopes (default is~\textmd{true}). +\itemAP[\kl{label scope=}\textmd{\{true,false\}}] enables or disables the redefined \cs{\label} command, which helps automatically define scopes (default is~\textmd{true}). \item[\kl{protect link co} and \kl{unprotect link co}] starts and ends respectively a zone in which the "knowledge@@package" package does not create hyperlinks. \item[\kl{protect quotation=}\textmd{\{environment list\}}] declares a list of environment in which the "quotation notation" should be deactivated \item[{{\kl(option)[quotation]{quotation=}\textmd{\{true,false\}}}}] activates or deactivates the "quotation notation". diff --git a/macros/latex/contrib/oberdiek/bookmark.dtx b/macros/latex/contrib/oberdiek/bookmark.dtx deleted file mode 100644 index 7d9c9c1eec..0000000000 --- a/macros/latex/contrib/oberdiek/bookmark.dtx +++ /dev/null @@ -1,3471 +0,0 @@ -% \iffalse meta-comment -% -% File: bookmark.dtx -% Version: 2019/06/04 v1.27 -% Info: PDF bookmarks -% -% Copyright (C) -% 2007-2011 Heiko Oberdiek -% 2016-2019 Oberdiek Package Support Group -% https://github.com/ho-tex/oberdiek/issues -% -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either -% version 1.3c of this license or (at your option) any later -% version. This version of this license is in -% https://www.latex-project.org/lppl/lppl-1-3c.txt -% and the latest version of this license is in -% https://www.latex-project.org/lppl.txt -% and version 1.3 or later is part of all distributions of -% LaTeX version 2005/12/01 or later. -% -% This work has the LPPL maintenance status "maintained". -% -% The Current Maintainers of this work are -% Heiko Oberdiek and the Oberdiek Package Support Group -% https://github.com/ho-tex/oberdiek/issues -% -% This work consists of the main source file bookmark.dtx -% and the derived files -% bookmark.sty, bookmark.pdf, bookmark.ins, bookmark.drv, -% bkm-dvipdfm.def, bkm-dvips.def, bkm-dvipsone.def, -% bkm-textures.def, bkm-pdftex.def, bkm-vtex.def, -% bookmark-example.tex. -% -% Distribution: -% CTAN:macros/latex/contrib/oberdiek/bookmark.dtx -% CTAN:macros/latex/contrib/oberdiek/bookmark.pdf -% -% Unpacking: -% (a) If bookmark.ins is present: -% tex bookmark.ins -% (b) Without bookmark.ins: -% tex bookmark.dtx -% (c) If you insist on using LaTeX -% latex \let\install=y\input{bookmark.dtx} -% (quote the arguments according to the demands of your shell) -% -% Documentation: -% (a) If bookmark.drv is present: -% latex bookmark.drv -% (b) Without bookmark.drv: -% latex bookmark.dtx; ... -% The class ltxdoc loads the configuration file ltxdoc.cfg -% if available. Here you can specify further options, e.g. -% use A4 as paper format: -% \PassOptionsToClass{a4paper}{article} -% -% Programm calls to get the documentation (example): -% pdflatex bookmark.dtx -% makeindex -s gind.ist bookmark.idx -% pdflatex bookmark.dtx -% makeindex -s gind.ist bookmark.idx -% pdflatex bookmark.dtx -% -% Installation: -% TDS:tex/latex/oberdiek/bookmark.sty -% TDS:tex/latex/oberdiek/bkm-dvipdfm.def -% TDS:tex/latex/oberdiek/bkm-dvips.def -% TDS:tex/latex/oberdiek/bkm-dvipsone.def -% TDS:tex/latex/oberdiek/bkm-textures.def -% TDS:tex/latex/oberdiek/bkm-pdftex.def -% TDS:tex/latex/oberdiek/bkm-vtex.def -% TDS:doc/latex/oberdiek/bookmark.pdf -% TDS:doc/latex/oberdiek/bookmark-example.tex -% TDS:source/latex/oberdiek/bookmark.dtx -% -%<*ignore> -\begingroup - \catcode123=1 % - \catcode125=2 % - \def\x{LaTeX2e}% -\expandafter\endgroup -\ifcase 0\ifx\install y1\fi\expandafter - \ifx\csname processbatchFile\endcsname\relax\else1\fi - \ifx\fmtname\x\else 1\fi\relax -\else\csname fi\endcsname -% -%<*install> -\input docstrip.tex -\Msg{************************************************************************} -\Msg{* Installation} -\Msg{* Package: bookmark 2019/06/04 v1.27 PDF bookmarks (HO)} -\Msg{************************************************************************} - -\keepsilent -\askforoverwritefalse - -\let\MetaPrefix\relax -\preamble - -This is a generated file. - -Project: bookmark -Version: 2019/06/04 v1.27 - -Copyright (C) - 2007-2011 Heiko Oberdiek - 2016-2019 Oberdiek Package Support Group - -This work may be distributed and/or modified under the -conditions of the LaTeX Project Public License, either -version 1.3c of this license or (at your option) any later -version. This version of this license is in - https://www.latex-project.org/lppl/lppl-1-3c.txt -and the latest version of this license is in - https://www.latex-project.org/lppl.txt -and version 1.3 or later is part of all distributions of -LaTeX version 2005/12/01 or later. - -This work has the LPPL maintenance status "maintained". - -The Current Maintainers of this work are -Heiko Oberdiek and the Oberdiek Package Support Group -https://github.com/ho-tex/oberdiek/issues - - -This work consists of the main source file bookmark.dtx -and the derived files - bookmark.sty, bookmark.pdf, bookmark.ins, bookmark.drv, - bkm-dvipdfm.def, bkm-dvips.def, bkm-dvipsone.def, - bkm-textures.def, bkm-pdftex.def, bkm-vtex.def, - bookmark-example.tex. - -\endpreamble -\let\MetaPrefix\DoubleperCent - -\generate{% - \file{bookmark.ins}{\from{bookmark.dtx}{install}}% - \file{bookmark.drv}{\from{bookmark.dtx}{driver}}% - \usedir{tex/latex/oberdiek}% - \file{bookmark.sty}{\from{bookmark.dtx}{package}}% - \file{bkm-dvipdfm.def}{\from{bookmark.dtx}{dvipdfm}}% - \file{bkm-dvips.def}{\from{bookmark.dtx}{dvips,pdfmark}}% - \file{bkm-dvipsone.def}{\from{bookmark.dtx}{dvipsone,pdfmark}}% - \file{bkm-textures.def}{\from{bookmark.dtx}{textures,pdfmark}}% - \file{bkm-pdftex.def}{\from{bookmark.dtx}{pdftex}}% - \file{bkm-vtex.def}{\from{bookmark.dtx}{vtex}}% - \usedir{doc/latex/oberdiek}% - \file{bookmark-example.tex}{\from{bookmark.dtx}{example}}% - \nopreamble - \nopostamble -% \usedir{source/latex/oberdiek/catalogue}% -% \file{bookmark.xml}{\from{bookmark.dtx}{catalogue}}% -} - -\catcode32=13\relax% active space -\let =\space% -\Msg{************************************************************************} -\Msg{*} -\Msg{* To finish the installation you have to move the following} -\Msg{* files into a directory searched by TeX:} -\Msg{*} -\Msg{* bookmark.sty, bkm-dvipdfm.def, bkm-dvips.def,} -\Msg{* bkm-dvipsone.def, bkm-textures.def, bkm-pdftex.def,} -\Msg{* bkm-vtex.def} -\Msg{*} -\Msg{* To produce the documentation run the file `bookmark.drv'} -\Msg{* through LaTeX.} -\Msg{*} -\Msg{* Happy TeXing!} -\Msg{*} -\Msg{************************************************************************} - -\endbatchfile -% -%<*ignore> -\fi -% -%<*driver> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{bookmark.drv}% - [2019/06/04 v1.27 PDF bookmarks (HO)]% -\documentclass{ltxdoc} -\usepackage{holtxdoc}[2011/11/22] -\begin{document} - \DocInput{bookmark.dtx}% -\end{document} -% -% \fi -% -% -% \CharacterTable -% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -% Digits \0\1\2\3\4\5\6\7\8\9 -% Exclamation \! Double quote \" Hash (number) \# -% Dollar \$ Percent \% Ampersand \& -% Acute accent \' Left paren \( Right paren \) -% Asterisk \* Plus \+ Comma \, -% Minus \- Point \. Solidus \/ -% Colon \: Semicolon \; Less than \< -% Equals \= Greater than \> Question mark \? -% Commercial at \@ Left bracket \[ Backslash \\ -% Right bracket \] Circumflex \^ Underscore \_ -% Grave accent \` Left brace \{ Vertical bar \| -% Right brace \} Tilde \~} -% -% \GetFileInfo{bookmark.drv} -% -% \title{The \xpackage{bookmark} package} -% \date{2019/06/04 v1.27} -% \author{Heiko Oberdiek\thanks -% {Please report any issues at \url{https://github.com/ho-tex/oberdiek/issues}}} -% -% \maketitle -% -% \begin{abstract} -% This package implements a new bookmark (outline) organization for -% package \xpackage{hyperref}. Bookmark properties such -% as style and color can now be set. Other action types -% are available (URI, GoToR, Named). The bookmarks are -% generated in the first compile run. Package \xpackage{hyperref} -% uses two runs. -% \end{abstract} -% -% \tableofcontents -% -% \section{Documentation} -% -% \subsection{Introduction} -% -% This package \xpackage{bookmark} tries to provide a more modern -% management for bookmarks: -% \begin{itemize} -% \item The bookmarks are already generated in the first \hologo{TeX} compile run. -% \item The font style and color of the bookmarks can be changed. -% \item More actions than simple GoTo actions are possible. -% \end{itemize} -% -% In the same way as \xpackage{hyperref} \cite{hyperref} -% the bookmarks are generated -% in the order of the bookmark generating macros (\cs{bookmark}). -% A level number is used to define the tree structure of the bookmarks. -% The restrictions are less strict: -% \begin{itemize} -% \item The level values may jump and omit values. A \cs{subsubsection} -% may follow a \cs{chapter}. This was an error in \xpackage{hyperref}, -% that prints a warning and tries to fix this. -% \item Several bookmarks may point to the same destination. -% In \xpackage{hyperref} this would mess up the bookmark tree -% completely, because the algorithm assumes that the destination -% names are keys (unique). -% \end{itemize} -% -% Note that this package is intended as experimentation platform -% for bookmark management. Feedback is welcome. Also the interfaces -% may change in future versions. -% -% \subsection{Options} -% -% Options can be given at four places: -% \begin{enumerate} -% \item \cs{usepackage}|[|\meta{options}|]{bookmark}|\\ -% This is the only place for driver options -% and option \xoption{atend}. -% \item \cs{bookmarksetup}|{|\meta{options}|}|\\ -% This command is just for setting options. -% \item \cs{bookmarksetupnext}|{|\meta{options}|}|\\ -% The options are stored and called after the -% options of the next \cs{bookmark} command. -% \item \cs{bookmark}|[|\meta{options}|]{|\meta{title}|}|\\ -% This command sets the bookmark. The option settings remain -% limited to this bookmark. -% \end{enumerate} -% Exception: Driver options, option \xoption{atend} and -% options \xoption{draft}\slash\xoption{final} -% cannot be changed after the package is loaded. -% -% \subsubsection{Options \xoption{draft} and \xoption{final}} -% -% If a \LaTeX\ file is compiled several times, then a little -% time can be saved, if option \xoption{draft} is used to -% disable the bookmark stuff of this package. Default is -% \xoption{final}. -% Both options are boolean options, without -% value the value |true| is used. |draft=true| is the same -% as |final=false|. -% -% Options of package \xpackage{bookmark} are local options -% with the exception of driver options. Therefore \xoption{draft} -% or \xoption{final} given as class option is not seen by this -% package. If you want to optimize first \LaTeX\ runs depending -% on a global \xoption{draft}, then package \xpackage{ifdraft} -% and \LaTeX's \cs{PassOptionsToPackage} -% might help in the organization of the preamble, for example: -%\begin{quote} -%\begin{verbatim} -%\documentclass[draft]{article} -%\usepackage{ifdraft} -%\ifdraft{% -% \PassOptionsToPackage{draft}{bookmark}% -%}{} -%\end{verbatim} -%\end{quote} -% -% \subsubsection{Driver options} -% -% Supported drivers are \xoption{pdftex}, \xoption{dvips}, -% \xoption{dvipsone}, \xoption{textures}, -% \xoption{dvipdfm} (\xoption{xetex}), and \xoption{vtex}. -% The \hologo{TeX} engines \hologo{pdfTeX}, \hologo{XeTeX}, -% and \hologo{VTeX} are automatically detected. -% The default for the DVI drivers is \xoption{dvips}. This can -% be changed in the configuration file \xfile{bookmark.cfg} by -% \cs{BookmarkDriverDefault}, e.g.: -% \begin{quote} -% |\def\BookmarkDriverDefault{dvipdfm}| -% \end{quote} -% -% \paragraph{Open bookmarks with dvipdfmx.} Since 2007-04-25 the -% cvs version of dvipmdfmx contains a patch that extends the -% \cs{special} for bookmarks in order to specify the open status of -% an outline entry. Option \xoption{dvipdfmx-outline-open} notifies -% the package that the dvi driver program understands this kind -% of \cs{special}. Alternatively \cs{SpecialDvipdfmxOutlineOpen} -% can be defined as number one in the configuration file or before -% the package is loaded, e.g.: -% \begin{quote} -% |\chardef\SpecialDvipdfmxOutlineOpen=1\relax| -% \end{quote} -% -% \subsubsection{Layout options} -% -% \paragraph{Font options.} -% -% \begin{description} -% \item[\xoption{bold}:] The bookmark is shown with a bold font -% if the PDF viewer supports this (since PDF 1.4). -% \item[\xoption{italic}:] An italic font is used (since PDF 1.4). -% \end{description} -% Both \xoption{bold} and \xoption{italic} can be used together. -% Using value |false| disables the font option. -% -% \paragraph{Color option.} -% -% Colored bookmarks are a feature of PDF 1.4, they are not supported -% by all PDF viewers. -% \begin{description} -% \item[\xoption{color}:] Here the color can be given as -% color specification of packages \xpackage{color} or \xpackage{xcolor}. -% An empty value means that the color property is not set. -% Without package \xpackage{xcolor} the recognized values -% are restricted to -% \begin{itemize} -% \item Empty value, no color is set,\\ -% example: |color={}| -% \item Explicit color specification of color model rgb,\\ -% example for red: |color=[rgb]{1,0,0}| -% \item Explicit color specification of color model gray,\\ -% example for dark gray: |color=[gray]{0.25}| -% \end{itemize} -% Note that this restriction also holds if package \xpackage{color} -% is loaded. With \xpackage{xcolor}, however, the full range -% of color specifications can be used. -% \end{description} -% -% \subsubsection{Action options} -% -% \begin{description} -% \item[\xoption{dest}:] Destination name. -% \item[\xoption{page}:] Page number, first page is 1. -% \item[\xoption{view}:] View specification, examples:\\ -% |view={FitB}|, |view={FitH 842}|, |view={XYZ 0 100 null}| -% Some view specification parameters expect numbers as parameters -% with unit bp. They can be given either as plain numbers or -% as length expressions inside \cs{calc}. Expressions of -% package \xpackage{calc} are supported if the package is loaded. -% Otherwise \hologo{eTeX}'s \cs{dimexpr} is used. Example:\\ -% |view={FitH \calc{\paperheight-\topmargin-1in}}|\\ -% |view={XYZ 0 \calc{\paperheight} null}|\\ -% Note that \cs{calc} cannot be used for the third parameter -% of |XYZ|. This parameter is the zoom value, not a length. -% \item[\xoption{named}:] Named action name:\\ -% |FirstPage|, |LastPage|, |NextPage|, |PrevPage| -% \item[\xoption{gotor}:] Name of the external PDF file. -% \item[\xoption{uri}:] URI specification. -% \item[\xoption{rawaction}:] Raw action specification. -% Because these specification depends on the driver this option -% should not be used. -% \end{description} -% The appropriate action for the bookmark is selected by -% analyzing the specified options. The actions -% are distinguished by different sets of options: -% \begin{quote} -% \begin{tabular}{@{}ll@{}} -% \textbf{Action} & \textbf{Options}\\ -% \hline -% \textsf{GoTo}: & \xoption{dest}\\ -% \textsf{GoTo}: & \xoption{page} + \xoption{view}\\ -% \textsf{GoToR}: & \xoption{gotor} + \xoption{dest}\\ -% \textsf{GoToR}: & \xoption{gotor} + \xoption{page} + \xoption{view}\\ -% \textsf{Named}: & \xoption{named}\\ -% \textsf{URI}: & \xoption{uri} -% \end{tabular} -% \end{quote} -% -% \paragraph{Missing actions.} -% If the action is missing package \xpackage{bookmark} throws -% an error message. Depending on the driver (\xoption{pdftex}, -% \xoption{dvips} and friends) the package detects it quite late -% at the end of the document. Since version 2011/04/21 v1.21 -% the package tries printing the line number and file name -% of the corresponding occurence of \cs{bookmark}. -% However, \hologo{TeX} does provide the line number, but -% unhappily the file name is a secret. The package supports -% some ways to get the file name: -% \begin{itemize} -% \item If \hologo{LuaTeX} (indenpendently from DVI or PDF modus) -% is running, then its |status.filename| is used automatically. -% \item Package \cs{currfile} \cite{currfile} redefines \hologo{LaTeX} -% internals to keep track of the file name. If the package -% is loaded, then its \cs{currfilepath} is detected and used -% automatically by package \xpackage{bookmark}. -% \item The file name can be set manually by option \xoption{scrfile} -% in \cs{bookmarksetup} or \cs{bookmark}. But be careful, -% manual setting disables the previous ways for file name -% detection. And a wrong or missed file name setting might -% get you a wrong source location in the error message. -% \end{itemize} -% -% \subsubsection{Level options} -% -% The order of the bookmark entries are defined by the -% appearance order of \cs{bookmark} commands. The tree structure -% is constructed by the property \xoption{level} of the bookmark nodes. -% The values of \xoption{level} are integers. If the level of a -% bookmark entry has a higher value than the previous node, then -% the entry becomes a child of the previous node. The absolute -% value of the difference does not matter. -% -% Package \xpackage{bookmark} remembers the level of the previous -% bookmark entry in a global property `current level'. -% -% The behaviour of the level system can be configured by following -% options: -% \begin{description} -% \item[\xoption{level}:] -% Sets the level, see the description above. If option \xoption{level} -% is given without value, then the default behaviour is restored, -% that the `current level' is used as level value. -% Since version 2010/10/19 v1.16 package \xpackage{bookmark} -% also supports names |part|, |section| and other, -% if the macros \cs{toclevel@part}, \cs{toclevel@section} -% are defined (done by package \xpackage{hyperref}, see -% option \xoption{bookmarkdepth}). -% \item[\xoption{rellevel}:] -% Sets the level relative to the previous level. -% A positive value means that the bookmark entry become -% a child of the previous one. -% \item[\xoption{keeplevel}:] -% Use the level, set by \xoption{level} or \xoption{rellevel}, -% but do not change the global property `current level'. -% The option can be disabled by setting to |false|. -% \item[\xoption{startatroot}:] -% At this time the bookmark tree starts at the top level again. -% The next bookmark entry is not sorted as child to a previous entry. -% Example scenario: A document uses part. However there are -% last chapters that should not be put below the last part: -% \begin{quote} -%\begin{verbatim} -%\documentclass{book} -%[...] -%\begin{document} -% \part{First part} -% \chapter{First chapter in first part} -% [...] -% \part{Second part} -% \chapter{First chapter in second part} -% [...] -% \bookmarksetup{startatroot} -% \chapter{Index}% does not belong to second part -%\end{document} -%\end{verbatim} -% \end{quote} -% \end{description} -% -% \subsubsection{Style definitions} -% -% A style is a group of option settings. It can be defined -% by macro \cs{bookmarkdefinestyle} and is used by option \xoption{style}. -% \begin{declcs}{bookmarkdefinestyle} \M{name} \M{key value list} -% \end{declcs} -% The \meta{key value list} of option settings is assigned the -% style \meta{name}. -% -% \begin{description} -% \item[\xoption{style}:] -% The value of option \xoption{style} is the name of a previously -% defined style. Its option settings are now executed. -% The options may include option \xoption{style}. -% Endless recursion by calling the same style recursively -% is prevented and throws an error. -% \end{description} -% -% \subsubsection{Hook support} -% -% A hook is called right after the processing the optional options -% of macro \cs{bookmark}. -% \begin{description} -% \item[\xoption{addtohook}:] -% Code, given as value to this option is added to the hook. -% \end{description} -% -% \begin{declcs}{bookmarkget} \M{option} -% \end{declcs} -% Macro \cs{bookmarkget} extracts the value of the latest option -% setting of option \meta{option}. In case of boolean options number -% one is returned, if the boolean option is enabled, otherwise the -% result is zero. -% The resulting numbers can directly be used in \cs{ifnum} or \cs{ifcase}. -% If you want to have the digits \texttt{0} and \texttt{1}, then -% prefix \cs{bookmarkget} with \cs{number}. -% Macro \cs{bookmarkget} is expandable. -% In case of -% unsupported options an empty string is returned. -% Supported boolean options are -% \begin{quote} -% \xoption{bold}, -% \xoption{italic}, -% \xoption{open} -% \end{quote} -% Other supported options: -% \begin{quote} -% \xoption{depth}, -% \xoption{dest}, -% \xoption{color}, -% \xoption{gotor}, -% \xoption{level}, -% \xoption{named}, -% \xoption{openlevel}, -% \xoption{page}, -% \xoption{rawaction}, -% \xoption{uri}, -% \xoption{view}, -% \end{quote} -% Additionally the following key is available: -% \begin{quote} -% \xoption{text} -% \end{quote} -% It returns the text of the outline entry. -% -% \paragraph{Option setting.} -% Inside the hook an option can be set using \cs{bookmarksetup}. -% -% \subsection{Compatibility with \xpackage{hyperref}} -% -% Package \xpackage{bookmark} automatically disables -% \xpackage{hyperref}'s bookmarks. However the package -% uses some of the code of \xpackage{hyperref}. For example, -% the package redefines the hook \cs{Hy@writebookmark} that -% \xpackage{hyperref} inserts in \cs{addcontentsline} and -% other commands. Therefore -% \xpackage{hyperref}'s bookmarks should not be disabled. -% -% Package \xpackage{bookmark} uses \xpackage{hyperref}'s \cs{pdfstringdef} -% and does not provide a replacement. -% -% Some options of \xpackage{hyperref} are also implemented -% in package \xpackage{bookmark}: -% \begin{quote} -% \begin{tabular}{@{}ll@{}} -% \xpackage{hyperref} & \xpackage{bookmark}\\ -% \hline -% \xoption{bookmarksdepth} & \xoption{depth}\\ -% \xoption{bookmarksopen} & \xoption{open}\\ -% \xoption{bookmarksopenlevel} & \xoption{openlevel}\\ -% \xoption{bookmarksnumbered} & \xoption{numbered}\\ -% \end{tabular} -% \end{quote} -% -% The following commands are also available: -% \begin{quote} -% \cs{pdfbookmark}\\ -% \cs{currentpdfbookmark}\\ -% \cs{subpdfbookmark}\\ -% \cs{belowpdfbookmark} -% \end{quote} -% -% \subsection{Adding bookmarks at the end} -% -% Package option \xoption{atend} enables the following macro: -% \begin{declcs}{BookmarkAtEnd} -% \M{stuff} -% \end{declcs} -% Macro \cs{BookmarkAtEnd} puts \meta{stuff} at the end -% of the document. \meta{stuff} means bookmark commands. -% Example: -% \begin{quote} -%\begin{verbatim} -%\usepackage[atend]{bookmark} -%\BookmarkAtEnd{% -% \bookmarksetup{startatroot}% -% \bookmark[named=LastPage, level=0]{Last page}% -%} -%\end{verbatim} -% \end{quote} -% -% Alternatively, option \xoption{startatroot} can be given -% in \cs{bookmark}: -% \begin{quote} -%\begin{verbatim} -%\BookmarkAtEnd{% -% \bookmark[ -% startatroot, -% named=LastPage, -% level=0, -% ]{Last page}% -%} -%\end{verbatim} -% \end{quote} -% -% \paragraph{Remarks.} -% \begin{itemize} -% \item -% \cs{BookmarkAtEnd} hides the fact that the method for -% adding bookmarks at the end of the document depends -% on the driver. -% -% Some drivers -% (\xoption{pdftex}, \xoption{dvips}, \xoption{dvipsone}, -% \xoption{textures}) use package \xpackage{atveryend}'s -% for this purpose. \cs{AtEndDocument} is too early, -% the last page might not been shipped out. Because the \xext{aux} -% file is needed, these drivers use \cs{AfterLastShipout}. -% -% The implementation of the other drivers -% (\xoption{dvipdfm}, \xoption{xetex}, \xoption{vtex}) -% depends on -% \cs{special} that does not have an effect after the last -% page. In this case \cs{AtEndDvi} of package \xpackage{atenddvi} -% helps. It puts its argument on last page of the document. -% Two \hologo{LaTeX} runs are necessary at least, because -% the last page is detected by a reference. -% \item -% The time of expansion of the argument of \cs{BookmarkAtEnd} -% is not specified. This can happen immediately or at the end -% of the document. -% \end{itemize} -% -% \subsection{Limitations/ToDos} -% -% \begin{itemize} -% \item Support for missing actions (Launch, \dots). -% \item Better design for \xpackage{hyperref}'s option -% \xoption{bookmarkstype}. -% \end{itemize} -% -% \section{Example} -% -% \begin{macrocode} -%<*example> -% \end{macrocode} -% \begin{macrocode} -\documentclass{article} -\usepackage{xcolor}[2007/01/21] -\usepackage{hyperref} -\usepackage[ - open, - openlevel=2, - atend -]{bookmark}[2019/06/04] - -\bookmarksetup{color=blue} - -\BookmarkAtEnd{% - \bookmarksetup{startatroot}% - \bookmark[named=LastPage, level=0]{End/Last page}% - \bookmark[named=FirstPage, level=1]{First page}% -} - -\begin{document} -\section{First section} -\subsection{Subsection A} -\begin{figure} - \hypertarget{fig}{}% - A figure. -\end{figure} -\bookmark[ - rellevel=1, - keeplevel, - dest=fig -]{A figure} -\subsection{Subsection B} -\subsubsection{Subsubsection C} -\subsection{Umlauts: \"A\"O\"U\"a\"o\"u\ss} -\newpage -\bookmarksetup{ - bold, - color=[rgb]{1,0,0} -} -\section{Very important section} -\bookmarksetup{ - italic, - bold=false, - color=blue -} -\subsection{Italic section} -\bookmarksetup{ - italic=false -} -\part{Misc} -\section{Diverse} -\subsubsection{Subsubsection, omitting subsection} -\bookmarksetup{ - startatroot -} -\section{Last section outside part} -\subsection{Subsection} -\bookmarksetup{ - color={} -} -\begingroup - \bookmarksetup{level=0, color=green!80!black} - \bookmark[named=FirstPage]{First page} - \bookmark[named=LastPage]{Last page} - \bookmark[named=PrevPage]{Previous page} - \bookmark[named=NextPage]{Next page} -\endgroup -\bookmark[ - page=2, - view=FitH 800 -]{Page 2, FitH 800} -\bookmark[ - page=2, - view=FitBH \calc{\paperheight-\topmargin-1in-\headheight-\headsep} -]{Page 2, FitBH top of text body} -\bookmark[ - uri={http://www.dante.de/}, - color=magenta -]{Dante homepage} -\bookmark[ - gotor={t.pdf}, - page=1, - view={XYZ 0 1000 null}, - color=cyan!75!black -]{File t.pdf} -\bookmark[named=FirstPage]{First page} -\bookmark[rellevel=1, named=LastPage]{Last page (rellevel=1)} -\bookmark[named=PrevPage]{Previous page} -\bookmark[level=0, named=FirstPage]{First page (level=0)} -\bookmark[ - rellevel=1, - keeplevel, - named=LastPage -]{Last page (rellevel=1, keeplevel)} -\bookmark[named=PrevPage]{Previous page} -\end{document} -% \end{macrocode} -% \begin{macrocode} -% -% \end{macrocode} -% -% \StopEventually{ -% } -% -% \section{Implementation} -% -% \subsection{Package} -% -% \begin{macrocode} -%<*package> -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{bookmark}% - [2019/06/04 v1.27 PDF bookmarks (HO)]% -% \end{macrocode} -% -% \subsubsection{Requirements} -% -% \paragraph{\hologo{eTeX}.} -% -% \begin{macro}{\BKM@CalcExpr} -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname numexpr\endcsname\relax - \def\BKM@CalcExpr#1#2#3#4{% - \begingroup - \count@=#2\relax - \advance\count@ by#3#4\relax - \edef\x{\endgroup - \def\noexpand#1{\the\count@}% - }% - \x - }% -\else - \def\BKM@CalcExpr#1#2#3#4{% - \edef#1{% - \the\numexpr#2#3#4\relax - }% - }% -\fi -% \end{macrocode} -% \end{macro} -% -% \paragraph{Escape features of \hologo{pdfTeX}.} -% -% \begin{macrocode} -\RequirePackage{pdfescape}[2007/03/20] -% \end{macrocode} -% \begin{macro}{\BKM@EscapeName} -% \begin{macrocode} -\def\BKM@EscapeName#1{% - \ifx#1\@empty - \else - \EdefEscapeName#1#1% - \fi -}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@EscapeString} -% \begin{macrocode} -\def\BKM@EscapeString#1{% - \ifx#1\@empty - \else - \EdefEscapeString#1#1% - \fi -}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@EscapeHex} -% \begin{macrocode} -\def\BKM@EscapeHex#1{% - \ifx#1\@empty - \else - \EdefEscapeHex#1#1% - \fi -}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@UnescapeHex} -% \begin{macrocode} -\def\BKM@UnescapeHex#1{% - \EdefUnescapeHex#1#1% -}% -% \end{macrocode} -% \end{macro} -% -% \paragraph{Packages.} -% -% \begin{macrocode} -\RequirePackage{ifpdf}[2009/04/10] -\RequirePackage{ifxetex} -\RequirePackage{ifvtex}[2008/11/04] -\RequirePackage{ifluatex}[2010/03/01] -\RequirePackage{pdftexcmds}[2010/11/04] -\RequirePackage{hyperref}[2010/06/18] -\RequirePackage{auxhook}[2007/04/06] -\RequirePackage{kvsetkeys}[2010/03/01] -\RequirePackage{kvoptions}[2009/08/13] -\RequirePackage{hycolor}[2008/09/08] -\RequirePackage{bitset}[2011/01/30] -\RequirePackage{ltxcmds}[2011/04/14] -% \end{macrocode} -% -% \subsubsection{Package options} -% -% \begin{macrocode} -\SetupKeyvalOptions{family=BKM,prefix=BKM@} -\DeclareLocalOptions{% - atend,% - bold,% - color,% - depth,% - dest,% - draft,% - final,% - gotor,% - italic,% - keeplevel,% - level,% - named,% - numbered,% - open,% - openlevel,% - page,% - rawaction,% - rellevel,% - srcfile,% - srcline,% - startatroot,% - uri,% - view,% -} -% \end{macrocode} -% \begin{macro}{\bookmarksetup} -% \begin{macrocode} -\newcommand*{\bookmarksetup}{\kvsetkeys{BKM}} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@setup} -% \begin{macrocode} -\def\BKM@setup#1{% - \bookmarksetup{#1}% - \ifx\BKM@HookNext\ltx@empty - \else - \expandafter\bookmarksetup\expandafter{\BKM@HookNext}% - \BKM@HookNextClear - \fi - \BKM@hook - \ifBKM@keeplevel - \else - \xdef\BKM@currentlevel{\BKM@level}% - \fi -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\bookmarksetupnext} -% \begin{macrocode} -\newcommand*{\bookmarksetupnext}[1]{% - \ltx@GlobalAppendToMacro\BKM@HookNext{,#1}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@setupnext} -% \begin{macrocode} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@HookNextClear} -% \begin{macrocode} -\def\BKM@HookNextClear{% - \global\let\BKM@HookNext\ltx@empty -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@HookNext} -% \begin{macrocode} -\BKM@HookNextClear -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\DeclareBoolOption{draft} -\DeclareComplementaryOption{final}{draft} -% \end{macrocode} -% \begin{macro}{\BKM@DisableOptions} -% \begin{macrocode} -\def\BKM@DisableOptions{% - \DisableKeyvalOption[action=warning,package=bookmark]% - {BKM}{draft}% - \DisableKeyvalOption[action=warning,package=bookmark]% - {BKM}{final}% -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\DeclareBoolOption[\ifHy@bookmarksopen true\else false\fi]{open} -% \end{macrocode} -% \begin{macro}{\bookmark@open} -% \begin{macrocode} -\def\bookmark@open{% - \ifBKM@open\ltx@one\else\ltx@zero\fi -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\DeclareStringOption[\maxdimen]{openlevel} -% \end{macrocode} -% \begin{macro}{\BKM@openlevel} -% \begin{macrocode} -\edef\BKM@openlevel{\number\@bookmarksopenlevel} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -%\DeclareStringOption[\c@tocdepth]{depth} -\ltx@IfUndefined{Hy@bookmarksdepth}{% - \def\BKM@depth{\c@tocdepth}% -}{% - \let\BKM@depth\Hy@bookmarksdepth -} -\define@key{BKM}{depth}[]{% - \edef\BKM@param{#1}% - \ifx\BKM@param\@empty - \def\BKM@depth{\c@tocdepth}% - \else - \ltx@IfUndefined{toclevel@\BKM@param}{% - \@onelevel@sanitize\BKM@param - \edef\BKM@temp{\expandafter\@car\BKM@param\@nil}% - \ifcase 0\expandafter\ifx\BKM@temp-1\fi - \expandafter\ifnum\expandafter`\BKM@temp>47 % - \expandafter\ifnum\expandafter`\BKM@temp<58 % - 1% - \fi - \fi - \relax - \PackageWarning{bookmark}{% - Unknown document division name (\BKM@param)\MessageBreak - for option `depth'% - }% - \else - \BKM@SetDepthOrLevel\BKM@depth\BKM@param - \fi - }{% - \BKM@SetDepthOrLevel\BKM@depth{% - \csname toclevel@\BKM@param\endcsname - }% - }% - \fi -} -% \end{macrocode} -% \begin{macro}{\bookmark@depth} -% \begin{macrocode} -\def\bookmark@depth{\BKM@depth} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@SetDepthOrLevel} -% \begin{macrocode} -\def\BKM@SetDepthOrLevel#1#2{% - \begingroup - \setbox\z@=\hbox{% - \count@=#2\relax - \expandafter - }% - \expandafter\endgroup - \expandafter\def\expandafter#1\expandafter{\the\count@}% -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\DeclareStringOption[\BKM@currentlevel]{level}[\BKM@currentlevel] -\define@key{BKM}{level}{% - \edef\BKM@param{#1}% - \ifx\BKM@param\BKM@MacroCurrentLevel - \let\BKM@level\BKM@param - \else - \ltx@IfUndefined{toclevel@\BKM@param}{% - \@onelevel@sanitize\BKM@param - \edef\BKM@temp{\expandafter\@car\BKM@param\@nil}% - \ifcase 0\expandafter\ifx\BKM@temp-1\fi - \expandafter\ifnum\expandafter`\BKM@temp>47 % - \expandafter\ifnum\expandafter`\BKM@temp<58 % - 1% - \fi - \fi - \relax - \PackageWarning{bookmark}{% - Unknown document division name (\BKM@param)\MessageBreak - for option `level'% - }% - \else - \BKM@SetDepthOrLevel\BKM@level\BKM@param - \fi - }{% - \BKM@SetDepthOrLevel\BKM@level{% - \csname toclevel@\BKM@param\endcsname - }% - }% - \fi -} -% \end{macrocode} -% \begin{macro}{\BKM@MacroCurrentLevel} -% \begin{macrocode} -\def\BKM@MacroCurrentLevel{\BKM@currentlevel} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\DeclareBoolOption{keeplevel} -\DeclareBoolOption{startatroot} -% \end{macrocode} -% \begin{macro}{\BKM@startatrootfalse} -% \begin{macrocode} -\def\BKM@startatrootfalse{% - \global\let\ifBKM@startatroot\iffalse -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@startatroottrue} -% \begin{macrocode} -\def\BKM@startatroottrue{% - \global\let\ifBKM@startatroot\iftrue -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\define@key{BKM}{rellevel}{% - \BKM@CalcExpr\BKM@level{#1}+\BKM@currentlevel -} -% \end{macrocode} -% \begin{macro}{\bookmark@level} -% \begin{macrocode} -\def\bookmark@level{\BKM@level} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@currentlevel} -% \begin{macrocode} -\def\BKM@currentlevel{0} -% \end{macrocode} -% \end{macro} -% Make \xpackage{bookmark}'s option \xoption{numbered} an alias -% for \xpackage{hyperref}'s \xoption{bookmarksnumbered}. -% \begin{macrocode} -\DeclareBoolOption[% - \ifHy@bookmarksnumbered true\else false\fi -]{numbered} -\g@addto@macro\BKM@numberedtrue{% - \let\ifHy@bookmarksnumbered\iftrue -} -\g@addto@macro\BKM@numberedfalse{% - \let\ifHy@bookmarksnumbered\iffalse -} -\g@addto@macro\Hy@bookmarksnumberedtrue{% - \let\ifBKM@numbered\iftrue -} -\g@addto@macro\Hy@bookmarksnumberedfalse{% - \let\ifBKM@numbered\iffalse -} -% \end{macrocode} -% \begin{macro}{\bookmark@numbered} -% \begin{macrocode} -\def\bookmark@numbered{% - \ifBKM@numbered\ltx@one\else\ltx@zero\fi -} -% \end{macrocode} -% \end{macro} -% -% \paragraph{Redefinitions \xpackage{hyperref}'s options} -% -% \begin{macro}{\BKM@PatchHyperrefOption} -% \begin{macrocode} -\def\BKM@PatchHyperrefOption#1{% - \expandafter\BKM@@PatchHyperrefOption\csname KV@Hyp@#1\endcsname% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@@PatchHyperrefOption} -% \begin{macrocode} -\def\BKM@@PatchHyperrefOption#1{% - \expandafter\BKM@@@PatchHyperrefOption#1{##1}\BKM@nil#1% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@@@PatchHyperrefOption} -% \begin{macrocode} -\def\BKM@@@PatchHyperrefOption#1\BKM@nil#2#3{% - \def#2##1{% - #1% - \bookmarksetup{#3={##1}}% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\BKM@PatchHyperrefOption{bookmarksopen}{open} -\BKM@PatchHyperrefOption{bookmarksopenlevel}{openlevel} -\BKM@PatchHyperrefOption{bookmarksdepth}{depth} -% \end{macrocode} -% -% \paragraph{Font style options.} -% -% Caution: Package \xpackage{bitset} is zero-based, the -% PDF specifications starts with one. -% \begin{macrocode} -\bitsetReset{BKM@FontStyle}% -\define@key{BKM}{italic}[true]{% - \expandafter\ifx\csname if#1\endcsname\iftrue - \bitsetSet{BKM@FontStyle}{0}% - \else - \bitsetClear{BKM@FontStyle}{0}% - \fi -}% -\define@key{BKM}{bold}[true]{% - \expandafter\ifx\csname if#1\endcsname\iftrue - \bitsetSet{BKM@FontStyle}{1}% - \else - \bitsetClear{BKM@FontStyle}{1}% - \fi -}% -% \end{macrocode} -% \begin{macro}{\bookmark@italic} -% \begin{macrocode} -\def\bookmark@italic{% - \ifnum\bitsetGet{BKM@FontStyle}{0}=1 \ltx@one\else\ltx@zero\fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\bookmark@bold} -% \begin{macrocode} -\def\bookmark@bold{% - \ifnum\bitsetGet{BKM@FontStyle}{1}=1 \ltx@one\else\ltx@zero\fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@PrintStyle} -% \begin{macrocode} -\def\BKM@PrintStyle{% - \bitsetGetDec{BKM@FontStyle}% -}% -% \end{macrocode} -% \end{macro} -% -% \paragraph{Options for color.} -% -% \begin{macrocode} -\define@key{BKM}{color}{% - \HyColor@BookmarkColor{#1}\BKM@color{bookmark}{color}% -} -% \end{macrocode} -% \begin{macro}{\BKM@color} -% \begin{macrocode} -\let\BKM@color\@empty -% \end{macrocode} -% \end{macro} -% \begin{macro}{\bookmark@color} -% \begin{macrocode} -\def\bookmark@color{\BKM@color} -% \end{macrocode} -% \end{macro} -% -% \subsubsection{Action options} -% -% \begin{macrocode} -\def\BKM@temp#1{% - \DeclareStringOption{#1}% - \expandafter\edef\csname bookmark@#1\endcsname{% - \expandafter\noexpand\csname BKM@#1\endcsname - }% -} -% \end{macrocode} -% \begin{macro}{\bookmark@dest} -% \begin{macrocode} -\BKM@temp{dest} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\bookmark@named} -% \begin{macrocode} -\BKM@temp{named} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\bookmark@uri} -% \begin{macrocode} -\BKM@temp{uri} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\bookmark@gotor} -% \begin{macrocode} -\BKM@temp{gotor} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\bookmark@rawaction} -% \begin{macrocode} -\BKM@temp{rawaction} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\define@key{BKM}{page}{% - \def\BKM@page{#1}% - \ifx\BKM@page\@empty - \else - \edef\BKM@page{\number\BKM@page}% - \ifnum\BKM@page>\z@ - \else - \PackageError{bookmark}{Page must be positive}\@ehc - \def\BKM@page{1}% - \fi - \fi -} -% \end{macrocode} -% \begin{macro}{\BKM@page} -% \begin{macrocode} -\let\BKM@page\@empty -% \end{macrocode} -% \end{macro} -% \begin{macro}{\bookmark@page} -% \begin{macrocode} -\def\bookmark@page{\BKM@@page} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -\define@key{BKM}{view}{% - \BKM@CheckView{#1}% -} -% \end{macrocode} -% \begin{macro}{\BKM@view} -% \begin{macrocode} -\let\BKM@view\@empty -% \end{macrocode} -% \end{macro} -% \begin{macro}{\bookmark@view} -% \begin{macrocode} -\def\bookmark@view{\BKM@view} -% \end{macrocode} -% \end{macro} -% \begin{macro}{BKM@CheckView} -% \begin{macrocode} -\def\BKM@CheckView#1{% - \BKM@CheckViewType#1 \@nil -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@CheckViewType} -% \begin{macrocode} -\def\BKM@CheckViewType#1 #2\@nil{% - \def\BKM@type{#1}% - \@onelevel@sanitize\BKM@type - \BKM@TestViewType{Fit}{}% - \BKM@TestViewType{FitB}{}% - \BKM@TestViewType{FitH}{% - \BKM@CheckParam#2 \@nil{top}% - }% - \BKM@TestViewType{FitBH}{% - \BKM@CheckParam#2 \@nil{top}% - }% - \BKM@TestViewType{FitV}{% - \BKM@CheckParam#2 \@nil{bottom}% - }% - \BKM@TestViewType{FitBV}{% - \BKM@CheckParam#2 \@nil{bottom}% - }% - \BKM@TestViewType{FitR}{% - \BKM@CheckRect{#2}{ }% - }% - \BKM@TestViewType{XYZ}{% - \BKM@CheckXYZ{#2}{ }% - }% - \@car{% - \PackageError{bookmark}{% - Unknown view type `\BKM@type',\MessageBreak - using `FitH' instead% - }\@ehc - \def\BKM@view{FitH}% - }% - \@nil -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@TestViewType} -% \begin{macrocode} -\def\BKM@TestViewType#1{% - \def\BKM@temp{#1}% - \@onelevel@sanitize\BKM@temp - \ifx\BKM@type\BKM@temp - \let\BKM@view\BKM@temp - \expandafter\@car - \else - \expandafter\@gobble - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{BKM@CheckParam} -% \begin{macrocode} -\def\BKM@CheckParam#1 #2\@nil#3{% - \def\BKM@param{#1}% - \ifx\BKM@param\@empty - \PackageWarning{bookmark}{% - Missing parameter (#3) for `\BKM@type',\MessageBreak - using 0% - }% - \def\BKM@param{0}% - \else - \BKM@CalcParam - \fi - \edef\BKM@view{\BKM@view\space\BKM@param}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{BKM@CheckRect} -% \begin{macrocode} -\def\BKM@CheckRect#1#2{% - \BKM@@CheckRect#1#2#2#2#2\@nil -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@@CheckRect} -% \begin{macrocode} -\def\BKM@@CheckRect#1 #2 #3 #4 #5\@nil{% - \def\BKM@temp{0}% - \def\BKM@param{#1}% - \ifx\BKM@param\@empty - \def\BKM@param{0}% - \def\BKM@temp{1}% - \else - \BKM@CalcParam - \fi - \edef\BKM@view{\BKM@view\space\BKM@param}% - \def\BKM@param{#2}% - \ifx\BKM@param\@empty - \def\BKM@param{0}% - \def\BKM@temp{1}% - \else - \BKM@CalcParam - \fi - \edef\BKM@view{\BKM@view\space\BKM@param}% - \def\BKM@param{#3}% - \ifx\BKM@param\@empty - \def\BKM@param{0}% - \def\BKM@temp{1}% - \else - \BKM@CalcParam - \fi - \edef\BKM@view{\BKM@view\space\BKM@param}% - \def\BKM@param{#4}% - \ifx\BKM@param\@empty - \def\BKM@param{0}% - \def\BKM@temp{1}% - \else - \BKM@CalcParam - \fi - \edef\BKM@view{\BKM@view\space\BKM@param}% - \ifnum\BKM@temp>\z@ - \PackageWarning{bookmark}{Missing parameters for `\BKM@type'}% - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@CheckXYZ} -% \begin{macrocode} -\def\BKM@CheckXYZ#1#2{% - \BKM@@CheckXYZ#1#2#2#2\@nil -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@@CheckXYZ} -% \begin{macrocode} -\def\BKM@@CheckXYZ#1 #2 #3 #4\@nil{% - \def\BKM@param{#1}% - \let\BKM@temp\BKM@param - \@onelevel@sanitize\BKM@temp - \ifx\BKM@param\@empty - \let\BKM@param\BKM@null - \else - \ifx\BKM@temp\BKM@null - \else - \BKM@CalcParam - \fi - \fi - \edef\BKM@view{\BKM@view\space\BKM@param}% - \def\BKM@param{#2}% - \let\BKM@temp\BKM@param - \@onelevel@sanitize\BKM@temp - \ifx\BKM@param\@empty - \let\BKM@param\BKM@null - \else - \ifx\BKM@temp\BKM@null - \else - \BKM@CalcParam - \fi - \fi - \edef\BKM@view{\BKM@view\space\BKM@param}% - \def\BKM@param{#3}% - \ifx\BKM@param\@empty - \let\BKM@param\BKM@null - \fi - \edef\BKM@view{\BKM@view\space\BKM@param}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@null} -% \begin{macrocode} -\def\BKM@null{null} -\@onelevel@sanitize\BKM@null -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\BKM@CalcParam} -% \begin{macrocode} -\def\BKM@CalcParam{% - \begingroup - \let\calc\@firstofone - \expandafter\BKM@@CalcParam\BKM@param\@empty\@empty\@nil -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@@CalcParam} -% \begin{macrocode} -\def\BKM@@CalcParam#1#2#3\@nil{% - \ifx\calc#1% - \@ifundefined{calc@assign@dimen}{% - \@ifundefined{dimexpr}{% - \setlength{\dimen@}{#2}% - }{% - \setlength{\dimen@}{\dimexpr#2\relax}% - }% - }{% - \setlength{\dimen@}{#2}% - }% - \dimen@.99626\dimen@ - \edef\BKM@param{\strip@pt\dimen@}% - \expandafter\endgroup - \expandafter\def\expandafter\BKM@param\expandafter{\BKM@param}% - \else - \endgroup - \fi -} -% \end{macrocode} -% \end{macro} -% -% \subsubsection{Option \xoption{atend}} -% -% \begin{macrocode} -\DeclareBoolOption{atend} -\g@addto@macro\BKM@DisableOptions{% - \DisableKeyvalOption[action=warning,package=bookmark]% - {BKM}{atend}% -} -% \end{macrocode} -% -% \subsubsection{Option \xoption{style}} -% -% \begin{macro}{\bookmarkdefinestyle} -% \begin{macrocode} -\newcommand*{\bookmarkdefinestyle}[2]{% - \@ifundefined{BKM@style@#1}{% - }{% - \PackageInfo{bookmark}{Redefining style `#1'}% - }% - \@namedef{BKM@style@#1}{#2}% -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\define@key{BKM}{style}{% - \BKM@StyleCall{#1}% -} -\newif\ifBKM@ok -% \end{macrocode} -% \begin{macro}{\BKM@StyleCall} -% \begin{macrocode} -\def\BKM@StyleCall#1{% - \@ifundefined{BKM@style@#1}{% - \PackageWarning{bookmark}{% - Ignoring unknown style `#1'% - }% - }{% -% \end{macrocode} -% Check style stack. -% \begin{macrocode} - \BKM@oktrue - \edef\BKM@StyleCurrent{#1}% - \@onelevel@sanitize\BKM@StyleCurrent - \let\BKM@StyleEntry\BKM@StyleEntryCheck - \BKM@StyleStack - \ifBKM@ok - \expandafter\@firstofone - \else - \PackageError{bookmark}{% - Ignoring recursive call of style `\BKM@StyleCurrent'% - }\@ehc - \expandafter\@gobble - \fi - {% -% \end{macrocode} -% Push current style on stack. -% \begin{macrocode} - \let\BKM@StyleEntry\relax - \edef\BKM@StyleStack{% - \BKM@StyleEntry{\BKM@StyleCurrent}% - \BKM@StyleStack - }% -% \end{macrocode} -% Call style. -% \begin{macrocode} - \expandafter\expandafter\expandafter\bookmarksetup - \expandafter\expandafter\expandafter{% - \csname BKM@style@\BKM@StyleCurrent\endcsname - }% -% \end{macrocode} -% Pop current style from stack. -% \begin{macrocode} - \BKM@StyleStackPop - }% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@StyleStackPop} -% \begin{macrocode} -\def\BKM@StyleStackPop{% - \let\BKM@StyleEntry\relax - \edef\BKM@StyleStack{% - \expandafter\@gobbletwo\BKM@StyleStack - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@StyleEntryCheck} -% \begin{macrocode} -\def\BKM@StyleEntryCheck#1{% - \def\BKM@temp{#1}% - \ifx\BKM@temp\BKM@StyleCurrent - \BKM@okfalse - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@StyleStack} -% \begin{macrocode} -\def\BKM@StyleStack{} -% \end{macrocode} -% \end{macro} -% -% \subsubsection{Options for source file location} -% -% \begin{macrocode} -\DeclareStringOption{srcline} -\DeclareStringOption{srcfile} -% \end{macrocode} -% -% \subsubsection{Hook support} -% -% \begin{macro}{\BKM@hook} -% \begin{macrocode} -\def\BKM@hook{} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\define@key{BKM}{addtohook}{% - \ltx@LocalAppendToMacro\BKM@hook{#1}% -} -% \end{macrocode} -% -% \begin{macro}{bookmarkget} -% \begin{macrocode} -\newcommand*{\bookmarkget}[1]{% - \romannumeral0% - \ltx@ifundefined{bookmark@#1}{% - \ltx@space - }{% - \expandafter\expandafter\expandafter\ltx@space - \csname bookmark@#1\endcsname - }% -} -% \end{macrocode} -% \end{macro} -% -% \subsubsection{Driver setup and loading} -% -% \paragraph{Driver detection.} -% -% \begin{macro}{\BKM@DefineDriverKey} -% \begin{macrocode} -\def\BKM@DefineDriverKey#1{% - \define@key{BKM}{#1}[]{% - \def\BKM@driver{#1}% - }% - \g@addto@macro\BKM@DisableOptions{% - \DisableKeyvalOption[action=warning,package=bookmark]% - {BKM}{#1}% - }% -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\BKM@DefineDriverKey{pdftex} -\BKM@DefineDriverKey{dvips} -\BKM@DefineDriverKey{dvipsone} -\BKM@DefineDriverKey{textures} -\BKM@DefineDriverKey{dvipdfm} -\BKM@DefineDriverKey{dvipdfmx} -\BKM@DefineDriverKey{xetex} -\BKM@DefineDriverKey{vtex} -\define@key{BKM}{dvipdfmx-outline-open}[true]{% - \expandafter\ifx\csname if#1\expandafter\endcsname - \csname iftrue\endcsname - \chardef\SpecialDvipdfmxOutlineOpen\@ne - \else - \chardef\SpecialDvipdfmxOutlineOpen\z@ - \fi -} -\g@addto@macro\BKM@DisableOptions{% - \DisableKeyvalOption{BKM}{dvipdfmx-outline-open}% -} -% \end{macrocode} -% \begin{macro}{\bookmark@driver} -% \begin{macrocode} -\def\bookmark@driver{\BKM@driver} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\InputIfFileExists{bookmark.cfg}{}{} -% \end{macrocode} -% \begin{macro}{\BookmarkDriverDefault} -% \begin{macrocode} -\providecommand*{\BookmarkDriverDefault}{dvips} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@driver} -% Lua\TeX\ and pdf\TeX\ share driver. -% \begin{macrocode} -\ifpdf - \def\BKM@driver{pdftex}% - \ifx\pdfoutline\@undefined - \ifx\pdfextension\@undefined\else - \protected\def\pdfoutline{\pdfextension outline } - \fi - \fi -\else - \ifxetex - \def\BKM@driver{dvipdfm}% - \else - \ifvtex - \def\BKM@driver{vtex}% - \else - \edef\BKM@driver{\BookmarkDriverDefault}% - \fi - \fi -\fi -% \end{macrocode} -% \end{macro} -% -% \paragraph{Process options.} -% -% \begin{macrocode} -\ProcessKeyvalOptions* -\BKM@DisableOptions -% \end{macrocode} -% -% \paragraph{Option \xoption{draft}} -% -% \begin{macrocode} -\ifBKM@draft - \PackageWarningNoLine{bookmark}{Draft mode on}% - \let\bookmarksetup\ltx@gobble - \let\BookmarkAtEnd\ltx@gobble - \let\bookmarkdefinestyle\ltx@gobbletwo - \let\bookmarkget\ltx@gobble - \let\pdfbookmark\ltx@undefined - \newcommand*{\pdfbookmark}[3][]{}% - \let\currentpdfbookmark\ltx@gobbletwo - \let\subpdfbookmark\ltx@gobbletwo - \let\belowpdfbookmark\ltx@gobbletwo - \newcommand*{\bookmark}[2][]{}% - \renewcommand*{\Hy@writebookmark}[5]{}% - \let\ReadBookmarks\relax - \let\BKM@DefGotoNameAction\ltx@gobbletwo % package `hypdestopt' - \expandafter\endinput -\fi -% \end{macrocode} -% -% \paragraph{Driver validation and loading.} -% -% \begin{macrocode} -\newif\ifBKM@DvipdfmxOutlineOpen -\ltx@IfUndefined{SpecialDvipdfmxOutlineOpen}{% - \ifxetex - \ifdim\number\XeTeXversion\XeTeXrevision in<0.9995in % - \else - \chardef\SpecialDvipdfmxOutlineOpen\ltx@one - \BKM@DvipdfmxOutlineOpentrue - \fi - \fi -}{% - \ifnum\SpecialDvipdfmxOutlineOpen>\z@ - \BKM@DvipdfmxOutlineOpentrue - \fi -} -% \end{macrocode} -% \begin{macrocode} -\def\BKM@temp{dvipdfmx}% -\ifx\BKM@temp\BKM@driver - \def\BKM@driver{dvipdfm}% -\fi -\def\BKM@temp{pdftex}% -\ifpdf - \ifx\BKM@temp\BKM@driver - \else - \PackageWarningNoLine{bookmark}{% - Wrong driver `\BKM@driver', using `pdftex' instead% - }% - \let\BKM@driver\BKM@temp - \fi -\else - \ifx\BKM@temp\BKM@driver - \PackageError{bookmark}{% - Wrong driver, pdfTeX is not running in PDF mode.\MessageBreak - Package loading is aborted% - }\@ehc - \expandafter\expandafter\expandafter\endinput - \fi - \def\BKM@temp{dvipdfm}% - \ifxetex - \ifx\BKM@temp\BKM@driver - \else - \PackageWarningNoLine{bookmark}{% - Wrong driver `\BKM@driver',\MessageBreak - using `dvipdfm' for XeTeX instead% - }% - \let\BKM@driver\BKM@temp - \fi - \else - \def\BKM@temp{vtex}% - \ifvtex - \ifx\BKM@temp\BKM@driver - \else - \PackageWarningNoLine{bookmark}{% - Wrong driver `\BKM@driver',\MessageBreak - using `vtex' for VTeX instead% - }% - \let\BKM@driver\BKM@temp - \fi - \else - \ifx\BKM@temp\BKM@driver - \PackageError{bookmark}{% - Wrong driver, VTeX is not running in PDF mode.\MessageBreak - Package loading is aborted% - }\@ehc - \expandafter\expandafter\expandafter\endinput - \fi - \fi - \fi -\fi -\InputIfFileExists{bkm-\BKM@driver.def}{}{% - \PackageError{bookmark}{% - Unsupported driver `\BKM@driver'.\MessageBreak - Package loading is aborted% - }\@ehc - \endinput -} -% \end{macrocode} -% -% \subsubsection{Compatibility for \xpackage{hyperref}} -% -% \begin{macro}{\pdfbookmark} -% \begin{macrocode} -\let\pdfbookmark\ltx@undefined -\newcommand*{\pdfbookmark}[3][0]{% - \bookmark[level=#1,dest={#3.#1}]{#2}% - \hyper@anchorstart{#3.#1}\hyper@anchorend -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\currentpdfbookmark} -% \begin{macrocode} -\def\currentpdfbookmark{% - \pdfbookmark[\BKM@currentlevel]% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\subpdfbookmark} -% \begin{macrocode} -\def\subpdfbookmark{% - \BKM@CalcExpr\BKM@CalcResult\BKM@currentlevel+1% - \expandafter\pdfbookmark\expandafter[\BKM@CalcResult]% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\belowpdfbookmark} -% \begin{macrocode} -\def\belowpdfbookmark#1#2{% - \xdef\BKM@gtemp{\number\BKM@currentlevel}% - \subpdfbookmark{#1}{#2}% - \global\let\BKM@currentlevel\BKM@gtemp -} -% \end{macrocode} -% \end{macro} -% -% Section number, text, label, level, file -% \begin{macro}{\Hy@writebookmark} -% \begin{macrocode} -\def\Hy@writebookmark#1#2#3#4#5{% - \ifnum#4>\BKM@depth\relax - \else - \def\BKM@type{#5}% - \ifx\BKM@type\Hy@bookmarkstype - \begingroup - \ifBKM@numbered - \let\numberline\Hy@numberline - \let\booknumberline\Hy@numberline - \let\partnumberline\Hy@numberline - \let\chapternumberline\Hy@numberline - \else - \let\numberline\@gobble - \let\booknumberline\@gobble - \let\partnumberline\@gobble - \let\chapternumberline\@gobble - \fi - \bookmark[level=#4,dest={#3}]{#2}% - \endgroup - \fi - \fi -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\ReadBookmarks} -% \begin{macrocode} -\let\ReadBookmarks\relax -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -% -% \end{macrocode} -% -% \subsection{Driver for dvipdfm} -% -% \begin{macrocode} -%<*dvipdfm> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{bkm-dvipdfm.def}% - [2019/06/04 v1.27 bookmark driver for dvipdfm (HO)]% -% \end{macrocode} -% -% \begin{macro}{\BKM@id} -% \begin{macrocode} -\newcount\BKM@id -\BKM@id=\z@ -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\BKM@0} -% \begin{macrocode} -\@namedef{BKM@0}{000} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\ifBKM@sw} -% \begin{macrocode} -\newif\ifBKM@sw -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\bookmark} -% \begin{macrocode} -\newcommand*{\bookmark}[2][]{% - \if@filesw - \begingroup - \def\bookmark@text{#2}% - \BKM@setup{#1}% - \edef\BKM@prev{\the\BKM@id}% - \global\advance\BKM@id\@ne - \BKM@swtrue - \@whilesw\ifBKM@sw\fi{% - \def\BKM@abslevel{1}% - \ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@ - \BKM@startatrootfalse - \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% - 0{\BKM@level}\BKM@abslevel - }% - \BKM@swfalse - \else - \expandafter\expandafter\expandafter\BKM@getx - \csname BKM@\BKM@prev\endcsname - \ifnum\BKM@level>\BKM@x@level\relax - \BKM@CalcExpr\BKM@abslevel\BKM@x@abslevel+1% - \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% - {\BKM@prev}{\BKM@level}\BKM@abslevel - }% - \BKM@swfalse - \else - \let\BKM@prev\BKM@x@parent - \fi - \fi - }% - \csname HyPsd@XeTeXBigCharstrue\endcsname - \pdfstringdef\BKM@title{\bookmark@text}% - \edef\BKM@FLAGS{\BKM@PrintStyle}% - \let\BKM@action\@empty - \ifx\BKM@gotor\@empty - \ifx\BKM@dest\@empty - \ifx\BKM@named\@empty - \ifx\BKM@rawaction\@empty - \ifx\BKM@uri\@empty - \ifx\BKM@page\@empty - \PackageError{bookmark}{Missing action}\@ehc - \edef\BKM@action{/Dest[@page1/Fit]}% - \else - \ifx\BKM@view\@empty - \def\BKM@view{Fit}% - \fi - \edef\BKM@action{/Dest[@page\BKM@page/\BKM@view]}% - \fi - \else - \BKM@EscapeString\BKM@uri - \edef\BKM@action{% - /A<<% - /S/URI% - /URI(\BKM@uri)% - >>% - }% - \fi - \else - \edef\BKM@action{/A<<\BKM@rawaction>>}% - \fi - \else - \BKM@EscapeName\BKM@named - \edef\BKM@action{% - /A<>% - }% - \fi - \else - \BKM@EscapeString\BKM@dest - \edef\BKM@action{% - /A<<% - /S/GoTo% - /D(\BKM@dest)% - >>% - }% - \fi - \else - \ifx\BKM@dest\@empty - \ifx\BKM@page\@empty - \def\BKM@page{0}% - \else - \BKM@CalcExpr\BKM@page\BKM@page-1% - \fi - \ifx\BKM@view\@empty - \def\BKM@view{Fit}% - \fi - \edef\BKM@action{/D[\BKM@page/\BKM@view]}% - \else - \BKM@EscapeString\BKM@dest - \edef\BKM@action{/D(\BKM@dest)}% - \fi - \BKM@EscapeString\BKM@gotor - \edef\BKM@action{% - /A<<% - /S/GoToR% - /F(\BKM@gotor)% - \BKM@action - >>% - }% - \fi - \special{pdf:% - out \ifBKM@DvipdfmxOutlineOpen - [% - \ifBKM@open - \ifnum\BKM@level<% - \expandafter\ltx@firstofone\expandafter - {\number\BKM@openlevel} % - \else - -% - \fi - \else - -% - \fi - ] % - \fi - \BKM@abslevel - <<% - /Title(\BKM@title)% - \ifx\BKM@color\@empty - \else - /C[\BKM@color]% - \fi - \ifnum\BKM@FLAGS>\z@ - /F \BKM@FLAGS - \fi - \BKM@action - >>% - }% - \endgroup - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@getx} -% \begin{macrocode} -\def\BKM@getx#1#2#3{% - \def\BKM@x@parent{#1}% - \def\BKM@x@level{#2}% - \def\BKM@x@abslevel{#3}% -} -% \end{macrocode} -% \end{macro} -% -% \begin{macrocode} -% -% \end{macrocode} -% -% \subsection{Driver for \hologo{VTeX}} -% -% \begin{macrocode} -%<*vtex> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{bkm-vtex.def}% - [2019/06/04 v1.27 bookmark driver for VTeX (HO)]% -% \end{macrocode} -% -% \begin{macrocode} -\ifvtexpdf -\else - \PackageWarningNoLine{bookmark}{% - The VTeX driver only supports PDF mode% - }% -\fi -% \end{macrocode} -% -% \begin{macro}{\BKM@id} -% \begin{macrocode} -\newcount\BKM@id -\BKM@id=\z@ -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\BKM@0} -% \begin{macrocode} -\@namedef{BKM@0}{00} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\ifBKM@sw} -% \begin{macrocode} -\newif\ifBKM@sw -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\bookmark} -% \begin{macrocode} -\newcommand*{\bookmark}[2][]{% - \if@filesw - \begingroup - \def\bookmark@text{#2}% - \BKM@setup{#1}% - \edef\BKM@prev{\the\BKM@id}% - \global\advance\BKM@id\@ne - \BKM@swtrue - \@whilesw\ifBKM@sw\fi{% - \ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@ - \BKM@startatrootfalse - \def\BKM@parent{0}% - \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% - 0{\BKM@level}% - }% - \BKM@swfalse - \else - \expandafter\expandafter\expandafter\BKM@getx - \csname BKM@\BKM@prev\endcsname - \ifnum\BKM@level>\BKM@x@level\relax - \let\BKM@parent\BKM@prev - \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% - {\BKM@prev}{\BKM@level}% - }% - \BKM@swfalse - \else - \let\BKM@prev\BKM@x@parent - \fi - \fi - }% - \pdfstringdef\BKM@title{\bookmark@text}% - \BKM@vtex@title - \edef\BKM@FLAGS{\BKM@PrintStyle}% - \let\BKM@action\@empty - \ifx\BKM@gotor\@empty - \ifx\BKM@dest\@empty - \ifx\BKM@named\@empty - \ifx\BKM@rawaction\@empty - \ifx\BKM@uri\@empty - \ifx\BKM@page\@empty - \PackageError{bookmark}{Missing action}\@ehc - \def\BKM@action{!1}% - \else - \edef\BKM@action{!\BKM@page}% - \fi - \else - \BKM@EscapeString\BKM@uri - \edef\BKM@action{% - % - }% - \fi - \else - \edef\BKM@action{}% - \fi - \else - \BKM@EscapeName\BKM@named - \edef\BKM@action{% - % - }% - \fi - \else - \BKM@EscapeString\BKM@dest - \edef\BKM@action{\BKM@dest}% - \fi - \else - \ifx\BKM@dest\@empty - \ifx\BKM@page\@empty - \def\BKM@page{1}% - \fi - \ifx\BKM@view\@empty - \def\BKM@view{Fit}% - \fi - \edef\BKM@action{/D[\BKM@page/\BKM@view]}% - \else - \BKM@EscapeString\BKM@dest - \edef\BKM@action{/D(\BKM@dest)}% - \fi - \BKM@EscapeString\BKM@gotor - \edef\BKM@action{% - >% - }% - \fi - \ifx\BKM@color\@empty - \let\BKM@RGBcolor\@empty - \else - \expandafter\BKM@toRGB\BKM@color\@nil - \fi - \special{% - !outline \BKM@action;% - p=\BKM@parent,% - i=\number\BKM@id,% - s=% - \ifBKM@open - \ifnum\BKM@level<\BKM@openlevel - o% - \else - c% - \fi - \else - c% - \fi,% - \ifx\BKM@RGBcolor\@empty - \else - c=\BKM@RGBcolor,% - \fi - \ifnum\BKM@FLAGS>\z@ - f=\BKM@FLAGS,% - \fi - t=\BKM@title - }% - \endgroup - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@getx} -% \begin{macrocode} -\def\BKM@getx#1#2{% - \def\BKM@x@parent{#1}% - \def\BKM@x@level{#2}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@toRGB} -% \begin{macrocode} -\def\BKM@toRGB#1 #2 #3\@nil{% - \let\BKM@RGBcolor\@empty - \BKM@toRGBComponent{#1}% - \BKM@toRGBComponent{#2}% - \BKM@toRGBComponent{#3}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@toRGBComponent} -% \begin{macrocode} -\def\BKM@toRGBComponent#1{% - \dimen@=#1pt\relax - \ifdim\dimen@>\z@ - \ifdim\dimen@<\p@ - \dimen@=255\dimen@ - \advance\dimen@ by 32768sp\relax - \divide\dimen@ by 65536\relax - \dimen@ii=\dimen@ - \divide\dimen@ii by 16\relax - \edef\BKM@RGBcolor{% - \BKM@RGBcolor - \BKM@toHexDigit\dimen@ii - }% - \dimen@ii=16\dimen@ii - \advance\dimen@-\dimen@ii - \edef\BKM@RGBcolor{% - \BKM@RGBcolor - \BKM@toHexDigit\dimen@ - }% - \else - \edef\BKM@RGBcolor{\BKM@RGBcolor FF}% - \fi - \else - \edef\BKM@RGBcolor{\BKM@RGBcolor00}% - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@toHexDigit} -% \begin{macrocode} -\def\BKM@toHexDigit#1{% - \ifcase\expandafter\@firstofone\expandafter{\number#1} % - 0\or 1\or 2\or 3\or 4\or 5\or 6\or 7\or - 8\or 9\or A\or B\or C\or D\or E\or F% - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\begingroup - \catcode`\|=0 % - \catcode`\\=12 % -% \end{macrocode} -% \begin{macro}{\BKM@vtex@title} -% \begin{macrocode} - |gdef|BKM@vtex@title{% - |@onelevel@sanitize|BKM@title - |edef|BKM@title{|expandafter|BKM@vtex@leftparen|BKM@title\(|@nil}% - |edef|BKM@title{|expandafter|BKM@vtex@rightparen|BKM@title\)|@nil}% - |edef|BKM@title{|expandafter|BKM@vtex@zero|BKM@title\0|@nil}% - |edef|BKM@title{|expandafter|BKM@vtex@one|BKM@title\1|@nil}% - |edef|BKM@title{|expandafter|BKM@vtex@two|BKM@title\2|@nil}% - |edef|BKM@title{|expandafter|BKM@vtex@three|BKM@title\3|@nil}% - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@vtex@leftparen} -% \begin{macrocode} - |gdef|BKM@vtex@leftparen#1\(#2|@nil{% - #1% - |ifx||#2||% - |else - (% - |ltx@ReturnAfterFi{% - |BKM@vtex@leftparen#2|@nil - }% - |fi - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@vtex@rightparen} -% \begin{macrocode} - |gdef|BKM@vtex@rightparen#1\)#2|@nil{% - #1% - |ifx||#2||% - |else - )% - |ltx@ReturnAfterFi{% - |BKM@vtex@rightparen#2|@nil - }% - |fi - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@vtex@zero} -% \begin{macrocode} - |gdef|BKM@vtex@zero#1\0#2|@nil{% - #1% - |ifx||#2||% - |else - |noexpand|hv@pdf@char0% - |ltx@ReturnAfterFi{% - |BKM@vtex@zero#2|@nil - }% - |fi - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@vtex@one} -% \begin{macrocode} - |gdef|BKM@vtex@one#1\1#2|@nil{% - #1% - |ifx||#2||% - |else - |noexpand|hv@pdf@char1% - |ltx@ReturnAfterFi{% - |BKM@vtex@one#2|@nil - }% - |fi - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@vtex@two} -% \begin{macrocode} - |gdef|BKM@vtex@two#1\2#2|@nil{% - #1% - |ifx||#2||% - |else - |noexpand|hv@pdf@char2% - |ltx@ReturnAfterFi{% - |BKM@vtex@two#2|@nil - }% - |fi - }% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@vtex@three} -% \begin{macrocode} - |gdef|BKM@vtex@three#1\3#2|@nil{% - #1% - |ifx||#2||% - |else - |noexpand|hv@pdf@char3% - |ltx@ReturnAfterFi{% - |BKM@vtex@three#2|@nil - }% - |fi - }% -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -|endgroup -% \end{macrocode} -% -% \begin{macrocode} -% -% \end{macrocode} -% -% \subsection{Driver for \hologo{pdfTeX}} -% -% \begin{macrocode} -%<*pdftex> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{bkm-pdftex.def}% - [2019/06/04 v1.27 bookmark driver for pdfTeX (HO)]% -% \end{macrocode} -% -% \begin{macro}{\BKM@DO@entry} -% \begin{macrocode} -\def\BKM@DO@entry#1#2{% - \begingroup - \kvsetkeys{BKM@DO}{#1}% - \def\BKM@DO@title{#2}% - \ifx\BKM@DO@srcfile\@empty - \else - \BKM@UnescapeHex\BKM@DO@srcfile - \fi - \BKM@UnescapeHex\BKM@DO@title - \expandafter\expandafter\expandafter\BKM@getx - \csname BKM@\BKM@DO@id\endcsname\@empty\@empty - \let\BKM@attr\@empty - \ifx\BKM@DO@flags\@empty - \else - \edef\BKM@attr{\BKM@attr/F \BKM@DO@flags}% - \fi - \ifx\BKM@DO@color\@empty - \else - \edef\BKM@attr{\BKM@attr/C[\BKM@DO@color]}% - \fi - \ifx\BKM@attr\@empty - \else - \edef\BKM@attr{attr{\BKM@attr}}% - \fi - \let\BKM@action\@empty - \ifx\BKM@DO@gotor\@empty - \ifx\BKM@DO@dest\@empty - \ifx\BKM@DO@named\@empty - \ifx\BKM@DO@rawaction\@empty - \ifx\BKM@DO@uri\@empty - \ifx\BKM@DO@page\@empty - \PackageError{bookmark}{% - Missing action\BKM@SourceLocation - }\@ehc - \edef\BKM@action{goto page1{/Fit}}% - \else - \ifx\BKM@DO@view\@empty - \def\BKM@DO@view{Fit}% - \fi - \edef\BKM@action{goto page\BKM@DO@page{/\BKM@DO@view}}% - \fi - \else - \BKM@UnescapeHex\BKM@DO@uri - \BKM@EscapeString\BKM@DO@uri - \edef\BKM@action{user{<>}}% - \fi - \else - \BKM@UnescapeHex\BKM@DO@rawaction - \edef\BKM@action{% - user{% - <<% - \BKM@DO@rawaction - >>% - }% - }% - \fi - \else - \BKM@EscapeName\BKM@DO@named - \edef\BKM@action{% - user{<>}% - }% - \fi - \else - \BKM@UnescapeHex\BKM@DO@dest - \BKM@DefGotoNameAction\BKM@action\BKM@DO@dest - \fi - \else - \ifx\BKM@DO@dest\@empty - \ifx\BKM@DO@page\@empty - \def\BKM@DO@page{0}% - \else - \BKM@CalcExpr\BKM@DO@page\BKM@DO@page-1% - \fi - \ifx\BKM@DO@view\@empty - \def\BKM@DO@view{Fit}% - \fi - \edef\BKM@action{/D[\BKM@DO@page/\BKM@DO@view]}% - \else - \BKM@UnescapeHex\BKM@DO@dest - \BKM@EscapeString\BKM@DO@dest - \edef\BKM@action{/D(\BKM@DO@dest)}% - \fi - \BKM@UnescapeHex\BKM@DO@gotor - \BKM@EscapeString\BKM@DO@gotor - \edef\BKM@action{% - user{% - <<% - /S/GoToR% - /F(\BKM@DO@gotor)% - \BKM@action - >>% - }% - }% - \fi - \pdfoutline\BKM@attr\BKM@action - count\ifBKM@DO@open\else-\fi\BKM@x@childs - {\BKM@DO@title}% - \endgroup -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@DefGotoNameAction} -% Macro \cs{BKM@DefGotoNameAction} is a hook for -% package \xpackage{hypdestopt}. -% \begin{macrocode} -\def\BKM@DefGotoNameAction#1#2{% - \BKM@EscapeString\BKM@DO@dest - \edef#1{goto name{#2}}% -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -% -% \end{macrocode} -% -% \begin{macrocode} -%<*pdftex|pdfmark> -% \end{macrocode} -% \begin{macro}{\BKM@SourceLocation} -% \begin{macrocode} -\def\BKM@SourceLocation{% - \ifx\BKM@DO@srcfile\@empty - \ifx\BKM@DO@srcline\@empty - \else - .\MessageBreak - Source: line \BKM@DO@srcline - \fi - \else - \ifx\BKM@DO@srcline\@empty - .\MessageBreak - Source: file `\BKM@DO@srcfile'% - \else - .\MessageBreak - Source: file `\BKM@DO@srcfile', line \BKM@DO@srcline - \fi - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -% -% \end{macrocode} -% -% \subsection{Drivers with pdfmark specials} -% -% \subsubsection{Driver dvips} -% -% \begin{macrocode} -%<*dvips> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{bkm-dvips.def}% - [2019/06/04 v1.27 bookmark driver for dvips (HO)]% -% \end{macrocode} -% \begin{macro}{\BKM@PSHeaderFile} -% \begin{macrocode} -\def\BKM@PSHeaderFile#1{% - \special{header=#1}% -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -% -% \end{macrocode} -% -% \subsubsection{Driver dvipsone} -% -% \begin{macrocode} -%<*dvipsone> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{bkm-dvipsone.def}% - [2019/06/04 v1.27 bookmark driver for dvipsone (HO)]% -% \end{macrocode} -% \begin{macro}{\BKM@PSHeaderFile} -% \begin{macrocode} -\def\BKM@PSHeaderFile#1{% - \special{header=#1}% -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -% -% \end{macrocode} -% -% \subsubsection{Driver textures} -% -% \begin{macrocode} -%<*textures> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{bkm-textures.def}% - [2019/06/04 v1.27 bookmark driver for textures (HO)]% -% \end{macrocode} -% \begin{macro}{\BKM@PSHeaderFile} -% \begin{macrocode} -\def\BKM@PSHeaderFile#1{% - \special{prePostScriptfile #1}% -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -% -% \end{macrocode} -% -% \subsubsection{Common part} -% -% \begin{macrocode} -%<*pdfmark> -% \end{macrocode} -% \begin{macro}{\BKM@filename} -% \begin{macrocode} -\def\BKM@filename{\jobname.out.ps} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\BKM@PSHeaderFile\BKM@filename -% \end{macrocode} -% -% \begin{macrocode} -\RequirePackage{atveryend}[2009/12/07] -\AfterLastShipout{\BKM@pdfmark@out} -% \end{macrocode} -% -% \begin{macro}{\BKM@pdfmark@out} -% Do not use package \xpackage{rerunfilecheck} here, because -% the file \cs{BKM@filename} is not read during the \hologo{TeX} run. -% \begin{macrocode} -\def\BKM@pdfmark@out{% - \if@filesw - \newwrite\BKM@file - \immediate\openout\BKM@file=\BKM@filename\relax - \BKM@write{\@percentchar!}% - \BKM@write{/pdfmark where{pop}}% - \BKM@write{% - {% - /globaldict where{pop globaldict}{userdict}ifelse% - /pdfmark/cleartomark load put% - }% - }% - \BKM@write{ifelse}% - \else - \let\BKM@write\@gobble - \let\BKM@DO@entry\@gobbletwo - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@write} -% \begin{macrocode} -\def\BKM@write#{% - \immediate\write\BKM@file -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\BKM@DO@entry} -% The specification for pdfmark says that |/Color| is the -% name of the key for color, however ghostscript only passes -% the key into the PDF file, thus the key name must be |/C|. -% \begin{macrocode} -\def\BKM@DO@entry#1#2{% - \begingroup - \kvsetkeys{BKM@DO}{#1}% - \ifx\BKM@DO@srcfile\@empty - \else - \BKM@UnescapeHex\BKM@DO@srcfile - \fi - \def\BKM@DO@title{#2}% - \BKM@UnescapeHex\BKM@DO@title - \expandafter\expandafter\expandafter\BKM@getx - \csname BKM@\BKM@DO@id\endcsname\@empty\@empty - \let\BKM@attr\@empty - \ifx\BKM@DO@flags\@empty - \else - \edef\BKM@attr{\BKM@attr/F \BKM@DO@flags}% - \fi - \ifx\BKM@DO@color\@empty - \else - \edef\BKM@attr{\BKM@attr/C[\BKM@DO@color]}% - \fi - \let\BKM@action\@empty - \ifx\BKM@DO@gotor\@empty - \ifx\BKM@DO@dest\@empty - \ifx\BKM@DO@named\@empty - \ifx\BKM@DO@rawaction\@empty - \ifx\BKM@DO@uri\@empty - \ifx\BKM@DO@page\@empty - \PackageError{bookmark}{% - Missing action\BKM@SourceLocation - }\@ehc - \edef\BKM@action{% - /Action/GoTo% - /Page 1% - /View[/Fit]% - }% - \else - \ifx\BKM@DO@view\@empty - \def\BKM@DO@view{Fit}% - \fi - \edef\BKM@action{% - /Action/GoTo% - /Page \BKM@DO@page - /View[/\BKM@DO@view]% - }% - \fi - \else - \BKM@UnescapeHex\BKM@DO@uri - \BKM@EscapeString\BKM@DO@uri - \edef\BKM@action{% - /Action<<% - /Subtype/URI% - /URI(\BKM@DO@uri)% - >>% - }% - \fi - \else - \BKM@UnescapeHex\BKM@DO@rawaction - \edef\BKM@action{% - /Action<<% - \BKM@DO@rawaction - >>% - }% - \fi - \else - \BKM@EscapeName\BKM@DO@named - \edef\BKM@action{% - /Action<<% - /Subtype/Named% - /N/\BKM@DO@named - >>% - }% - \fi - \else - \BKM@UnescapeHex\BKM@DO@dest - \BKM@EscapeString\BKM@DO@dest - \edef\BKM@action{% - /Action/GoTo% - /Dest(\BKM@DO@dest)cvn% - }% - \fi - \else - \ifx\BKM@DO@dest\@empty - \ifx\BKM@DO@page\@empty - \def\BKM@DO@page{1}% - \fi - \ifx\BKM@DO@view\@empty - \def\BKM@DO@view{Fit}% - \fi - \edef\BKM@action{% - /Page \BKM@DO@page - /View[/\BKM@DO@view]% - }% - \else - \BKM@UnescapeHex\BKM@DO@dest - \BKM@EscapeString\BKM@DO@dest - \edef\BKM@action{% - /Dest(\BKM@DO@dest)cvn% - }% - \fi - \BKM@UnescapeHex\BKM@DO@gotor - \BKM@EscapeString\BKM@DO@gotor - \edef\BKM@action{% - /Action/GoToR% - /File(\BKM@DO@gotor)% - \BKM@action - }% - \fi - \BKM@write{[}% - \BKM@write{/Title(\BKM@DO@title)}% - \ifnum\BKM@x@childs>\z@ - \BKM@write{/Count \ifBKM@DO@open\else-\fi\BKM@x@childs}% - \fi - \ifx\BKM@attr\@empty - \else - \BKM@write{\BKM@attr}% - \fi - \BKM@write{\BKM@action}% - \BKM@write{/OUT pdfmark}% - \endgroup -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -% -% \end{macrocode} -% -% \subsection{Common part for \xoption{pdftex} and \xoption{pdfmark}} -% -% \begin{macrocode} -%<*pdftex|pdfmark> -% \end{macrocode} -% -% \subsubsection{Write auxiliary file} -% -% \begin{macrocode} -\RequirePackage{auxhook} -% \end{macrocode} -% \begin{macrocode} -\AddLineBeginMainAux{% - \string\providecommand\string\BKM@entry[2]{}% -} -% \end{macrocode} -% -% \begin{macro}{\BKM@id} -% \begin{macrocode} -\newcount\BKM@id -\BKM@id=\z@ -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\BKM@0} -% \begin{macrocode} -\@namedef{BKM@0}{000} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\ifBKM@sw} -% \begin{macrocode} -\newif\ifBKM@sw -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\bookmark} -% \begin{macrocode} -\newcommand*{\bookmark}[2][]{% - \if@filesw - \begingroup - \BKM@InitSourceLocation - \def\bookmark@text{#2}% - \BKM@setup{#1}% - \ifx\BKM@srcfile\@empty - \else - \BKM@EscapeHex\BKM@srcfile - \fi - \edef\BKM@prev{\the\BKM@id}% - \global\advance\BKM@id\@ne - \BKM@swtrue - \@whilesw\ifBKM@sw\fi{% - \ifnum\ifBKM@startatroot\z@\else\BKM@prev\fi=\z@ - \BKM@startatrootfalse - \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% - 0{\BKM@level}0% - }% - \BKM@swfalse - \else - \expandafter\expandafter\expandafter\BKM@getx - \csname BKM@\BKM@prev\endcsname - \ifnum\BKM@level>\BKM@x@level\relax - \expandafter\xdef\csname BKM@\the\BKM@id\endcsname{% - {\BKM@prev}{\BKM@level}0% - }% - \ifnum\BKM@prev>\z@ - \BKM@CalcExpr\BKM@CalcResult\BKM@x@childs+1% - \expandafter\xdef\csname BKM@\BKM@prev\endcsname{% - {\BKM@x@parent}{\BKM@x@level}{\BKM@CalcResult}% - }% - \fi - \BKM@swfalse - \else - \let\BKM@prev\BKM@x@parent - \fi - \fi - }% - \pdfstringdef\BKM@title{\bookmark@text}% - \edef\BKM@FLAGS{\BKM@PrintStyle}% - \csname BKM@HypDestOptHook\endcsname - \BKM@EscapeHex\BKM@dest - \BKM@EscapeHex\BKM@uri - \BKM@EscapeHex\BKM@gotor - \BKM@EscapeHex\BKM@rawaction - \BKM@EscapeHex\BKM@title - \immediate\write\@mainaux{% - \string\BKM@entry{% - id=\number\BKM@id - \ifBKM@open - \ifnum\BKM@level<\BKM@openlevel - ,open% - \fi - \fi - \BKM@auxentry{dest}% - \BKM@auxentry{named}% - \BKM@auxentry{uri}% - \BKM@auxentry{gotor}% - \BKM@auxentry{page}% - \BKM@auxentry{view}% - \BKM@auxentry{rawaction}% - \BKM@auxentry{color}% - \ifnum\BKM@FLAGS>\z@ - ,flags=\BKM@FLAGS - \fi - \BKM@auxentry{srcline}% - \BKM@auxentry{srcfile}% - }{\BKM@title}% - }% - \endgroup - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@getx} -% \begin{macrocode} -\def\BKM@getx#1#2#3{% - \def\BKM@x@parent{#1}% - \def\BKM@x@level{#2}% - \def\BKM@x@childs{#3}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@auxentry} -% \begin{macrocode} -\def\BKM@auxentry#1{% - \expandafter\ifx\csname BKM@#1\endcsname\@empty - \else - ,#1={\csname BKM@#1\endcsname}% - \fi -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\BKM@InitSourceLocation} -% \begin{macrocode} -\def\BKM@InitSourceLocation{% - \edef\BKM@srcline{\the\inputlineno}% - \BKM@LuaTeX@InitFile - \ifx\BKM@srcfile\@empty - \ltx@IfUndefined{currfilepath}{}{% - \edef\BKM@srcfile{\currfilepath}% - }% - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\BKM@LuaTeX@InitFile} -% \begin{macrocode} -\ifluatex - \ifnum\luatexversion>36 % - \def\BKM@LuaTeX@InitFile{% - \begingroup - \ltx@LocToksA={}% - \edef\x{\endgroup - \def\noexpand\BKM@srcfile{% - \the\expandafter\ltx@LocToksA - \directlua{% - if status and status.filename then % - tex.settoks('ltx@LocToksA', status.filename)% - end% - }% - }% - }\x - }% - \else - \let\BKM@LuaTeX@InitFile\relax - \fi -\else - \let\BKM@LuaTeX@InitFile\relax -\fi -% \end{macrocode} -% \end{macro} -% -% \subsubsection{Read auxiliary data} -% -% \begin{macrocode} -\SetupKeyvalOptions{family=BKM@DO,prefix=BKM@DO@} -\DeclareStringOption[0]{id} -\DeclareBoolOption{open} -\DeclareStringOption{flags} -\DeclareStringOption{color} -\DeclareStringOption{dest} -\DeclareStringOption{named} -\DeclareStringOption{uri} -\DeclareStringOption{gotor} -\DeclareStringOption{page} -\DeclareStringOption{view} -\DeclareStringOption{rawaction} -\DeclareStringOption{srcline} -\DeclareStringOption{srcfile} -% \end{macrocode} -% -% \begin{macrocode} -\AtBeginDocument{% - \let\BKM@entry\BKM@DO@entry -} -% \end{macrocode} -% -% \begin{macrocode} -% -% \end{macrocode} -% -% \subsection{Option \xoption{atend}} -% -% \subsubsection{Hook} -% -% \begin{macrocode} -%<*package> -% \end{macrocode} -% \begin{macrocode} -\ifBKM@atend -\else -% \end{macrocode} -% \begin{macro}{\BookmarkAtEnd} -% This is a dummy definition that generates a warning -% if option \xoption{atend} has not been given. -% \begin{macrocode} - \newcommand{\BookmarkAtEnd}[1]{% - \PackageWarning{bookmark}{% - Ignored, because option `atend' is missing% - }% - }% -% \end{macrocode} -% \end{macro} -% \begin{macrocode} - \expandafter\endinput -\fi -% \end{macrocode} -% \begin{macro}{\BookmarkAtEnd} -% \begin{macrocode} -\newcommand*{\BookmarkAtEnd}{% - \g@addto@macro\BKM@EndHook -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\let\BKM@EndHook\@empty -% \end{macrocode} -% \begin{macrocode} -% -% \end{macrocode} -% -% \subsubsection{Drivers using hooks at end of document} -% -% The following drivers use package \xpackage{atveryend}'s -% \cs{AfterLastShipout}, because they still need the -% \xext{aux} file. -% \begin{itemize} -% \item -% Driver \xoption{pdftex} uses \cs{pdfoutline} that can -% be used after the last page. -% \item -% PostScript drivers such as -% \xoption{dvips} use an external PostScript header file -% for the bookmarks. File writing can be done after -% the last shipout page, but before the \xext{aux} file is closed. -% \end{itemize} -% \begin{macrocode} -%<*pdftex|pdfmark> -\ifBKM@atend - \AfterLastShipout{% - \BKM@EndHook - }% -\fi -% -% \end{macrocode} -% -% \subsubsection{Drivers using \cs{AtEndDvi}} -% -% The other drivers implement \cs{bookmark} using \cs{special} -% commands. Thus the last bookmarks must be put on the last page, -% not afterwards. -% \cs{AtEndDocument} cannot be used, because it is too late, the -% last page can already be output. Therefore we use package -% \xpackage{atenddvi} that uses the help of packages \xpackage{atbegshi} -% and \xpackage{zref}. The argument of \cs{AtEndDvi} is put -% at the end of the last page. At least two \hologo{LaTeX} runs are necessary. -% \begin{macrocode} -%<*dvipdfm|vtex> -\ifBKM@atend - \RequirePackage{atenddvi}% - \AtEndDvi{\BKM@EndHook}% -\fi -% -% \end{macrocode} -% -% \section{Installation} -% -% \subsection{Download} -% -% \paragraph{Package.} This package is available on -% CTAN\footnote{\CTANpkg{bookmark}}: -% \begin{description} -% \item[\CTAN{macros/latex/contrib/oberdiek/bookmark.dtx}] The source file. -% \item[\CTAN{macros/latex/contrib/oberdiek/bookmark.pdf}] Documentation. -% \end{description} -% -% -% \paragraph{Bundle.} All the packages of the bundle `oberdiek' -% are also available in a TDS compliant ZIP archive. There -% the packages are already unpacked and the documentation files -% are generated. The files and directories obey the TDS standard. -% \begin{description} -% \item[\CTANinstall{install/macros/latex/contrib/oberdiek.tds.zip}] -% \end{description} -% \emph{TDS} refers to the standard ``A Directory Structure -% for \TeX\ Files'' (\CTANpkg{tds}). Directories -% with \xfile{texmf} in their name are usually organized this way. -% -% \subsection{Bundle installation} -% -% \paragraph{Unpacking.} Unpack the \xfile{oberdiek.tds.zip} in the -% TDS tree (also known as \xfile{texmf} tree) of your choice. -% Example (linux): -% \begin{quote} -% |unzip oberdiek.tds.zip -d ~/texmf| -% \end{quote} -% -% \subsection{Package installation} -% -% \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting -% \docstrip\ archive. The files are extracted by running the -% \xfile{.dtx} through \plainTeX: -% \begin{quote} -% \verb|tex bookmark.dtx| -% \end{quote} -% -% \paragraph{TDS.} Now the different files must be moved into -% the different directories in your installation TDS tree -% (also known as \xfile{texmf} tree): -% \begin{quote} -% \def\t{^^A -% \begin{tabular}{@{}>{\ttfamily}l@{ $\rightarrow$ }>{\ttfamily}l@{}} -% bookmark.sty & tex/latex/oberdiek/bookmark.sty\\ -% bkm-dvipdfm.def & tex/latex/oberdiek/bkm-dvipdfm.def\\ -% bkm-dvips.def & tex/latex/oberdiek/bkm-dvips.def\\ -% bkm-dvipsone.def & tex/latex/oberdiek/bkm-dvipsone.def\\ -% bkm-textures.def & tex/latex/oberdiek/bkm-textures.def\\ -% bkm-pdftex.def & tex/latex/oberdiek/bkm-pdftex.def\\ -% bkm-vtex.def & tex/latex/oberdiek/bkm-vtex.def\\ -% bookmark.pdf & doc/latex/oberdiek/bookmark.pdf\\ -% bookmark-example.tex & doc/latex/oberdiek/bookmark-example.tex\\ -% bookmark.dtx & source/latex/oberdiek/bookmark.dtx\\ -% \end{tabular}^^A -% }^^A -% \sbox0{\t}^^A -% \ifdim\wd0>\linewidth -% \begingroup -% \advance\linewidth by\leftmargin -% \advance\linewidth by\rightmargin -% \edef\x{\endgroup -% \def\noexpand\lw{\the\linewidth}^^A -% }\x -% \def\lwbox{^^A -% \leavevmode -% \hbox to \linewidth{^^A -% \kern-\leftmargin\relax -% \hss -% \usebox0 -% \hss -% \kern-\rightmargin\relax -% }^^A -% }^^A -% \ifdim\wd0>\lw -% \sbox0{\small\t}^^A -% \ifdim\wd0>\linewidth -% \ifdim\wd0>\lw -% \sbox0{\footnotesize\t}^^A -% \ifdim\wd0>\linewidth -% \ifdim\wd0>\lw -% \sbox0{\scriptsize\t}^^A -% \ifdim\wd0>\linewidth -% \ifdim\wd0>\lw -% \sbox0{\tiny\t}^^A -% \ifdim\wd0>\linewidth -% \lwbox -% \else -% \usebox0 -% \fi -% \else -% \lwbox -% \fi -% \else -% \usebox0 -% \fi -% \else -% \lwbox -% \fi -% \else -% \usebox0 -% \fi -% \else -% \lwbox -% \fi -% \else -% \usebox0 -% \fi -% \else -% \lwbox -% \fi -% \else -% \usebox0 -% \fi -% \end{quote} -% If you have a \xfile{docstrip.cfg} that configures and enables \docstrip's -% TDS installing feature, then some files can already be in the right -% place, see the documentation of \docstrip. -% -% \subsection{Refresh file name databases} -% -% If your \TeX~distribution -% (\TeX\,Live, \mikTeX, \dots) relies on file name databases, you must refresh -% these. For example, \TeX\,Live\ users run \verb|texhash| or -% \verb|mktexlsr|. -% -% \subsection{Some details for the interested} -% -% \paragraph{Unpacking with \LaTeX.} -% The \xfile{.dtx} chooses its action depending on the format: -% \begin{description} -% \item[\plainTeX:] Run \docstrip\ and extract the files. -% \item[\LaTeX:] Generate the documentation. -% \end{description} -% If you insist on using \LaTeX\ for \docstrip\ (really, -% \docstrip\ does not need \LaTeX), then inform the autodetect routine -% about your intention: -% \begin{quote} -% \verb|latex \let\install=y\input{bookmark.dtx}| -% \end{quote} -% Do not forget to quote the argument according to the demands -% of your shell. -% -% \paragraph{Generating the documentation.} -% You can use both the \xfile{.dtx} or the \xfile{.drv} to generate -% the documentation. The process can be configured by the -% configuration file \xfile{ltxdoc.cfg}. For instance, put this -% line into this file, if you want to have A4 as paper format: -% \begin{quote} -% \verb|\PassOptionsToClass{a4paper}{article}| -% \end{quote} -% An example follows how to generate the -% documentation with pdf\LaTeX: -% \begin{quote} -%\begin{verbatim} -%pdflatex bookmark.dtx -%makeindex -s gind.ist bookmark.idx -%pdflatex bookmark.dtx -%makeindex -s gind.ist bookmark.idx -%pdflatex bookmark.dtx -%\end{verbatim} -% \end{quote} -% -% \begin{thebibliography}{9} -% -% \bibitem{hyperref} -% Sebastian Rahtz, Heiko Oberdiek: -% \textit{The \xpackage{hyperref} package}; -% 2011/04/17 v6.82g; -% \CTANpkg{hyperref} -% -% \bibitem{currfile} -% Martin Scharrer: -% \textit{The \xpackage{currfile} package}; -% 2011/01/09 v0.4. -% \CTANpkg{currfile} -% -% \end{thebibliography} -% -% \begin{History} -% \begin{Version}{2007/02/19 v0.1} -% \item -% First experimental version. -% \end{Version} -% \begin{Version}{2007/02/20 v0.2} -% \item -% Option \xoption{startatroot} added. -% \item -% Dummies for \cs{pdf(un)escape...} commands added to get -% the package basically work for non-\hologo{pdfTeX} users. -% \end{Version} -% \begin{Version}{2007/02/21 v0.3} -% \item -% Dependency from \hologo{pdfTeX} 1.30 removed by using package -% \xpackage{pdfescape}. -% \end{Version} -% \begin{Version}{2007/02/22 v0.4} -% \item -% \xpackage{hyperref}'s \xoption{bookmarkstype} respected. -% \end{Version} -% \begin{Version}{2007/03/02 v0.5} -% \item -% Driver options \xoption{vtex} (PDF mode), \xoption{dvipsone}, -% and \xoption{textures} added. -% \item -% Implementation of option \xoption{depth} completed. Division names -% are supported, see \xpackage{hyperref}'s -% option \xoption{bookmarksdepth}. -% \item -% \xpackage{hyperref}'s options \xoption{bookmarksopen}, -% \xoption{bookmarksopenlevel}, and \xoption{bookmarksdepth} respected. -% \end{Version} -% \begin{Version}{2007/03/03 v0.6} -% \item -% Option \xoption{numbered} as alias for \xpackage{hyperref}'s -% \xoption{bookmarksnumbered}. -% \end{Version} -% \begin{Version}{2007/03/07 v0.7} -% \item -% Dependency from \hologo{eTeX} removed. -% \end{Version} -% \begin{Version}{2007/04/09 v0.8} -% \item -% Option \xoption{atend} added. -% \item -% Option \xoption{rgbcolor} removed. -% \verb|rgbcolor= | can be replaced by -% \verb|color=[rgb]{,,}|. -% \item -% Support of recent cvs version (2007-03-29) of dvipdfmx -% that extends the \cs{special} for bookmarks to specify -% open outline entries. Option \xoption{dvipdfmx-outline-open} -% or \cs{SpecialDvipdfmxOutlineOpen} notify the package. -% \end{Version} -% \begin{Version}{2007/04/25 v0.9} -% \item -% The syntax of \cs{special} of dvipdfmx, if feature -% \xoption{dvipdfmx-outline-open} is enabled, has changed. -% Now cvs version 2007-04-25 is needed. -% \end{Version} -% \begin{Version}{2007/05/29 v1.0} -% \item -% Bug fix in code for second parameter of XYZ. -% \end{Version} -% \begin{Version}{2007/07/13 v1.1} -% \item -% Fix for pdfmark with GoToR action. -% \end{Version} -% \begin{Version}{2007/09/25 v1.2} -% \item -% pdfmark driver respects \cs{nofiles}. -% \end{Version} -% \begin{Version}{2008/08/08 v1.3} -% \item -% Package \xpackage{flags} replaced by package \xpackage{bitset}. -% Now flags are also supported without \hologo{eTeX}. -% \item -% Hook for package \xpackage{hypdestopt} added. -% \end{Version} -% \begin{Version}{2008/09/13 v1.4} -% \item -% Fix for bug introduced in v1.3, package \xpackage{flags} is one-based, -% but package \xpackage{bitset} is zero-based. Thus options \xoption{bold} -% and \xoption{italic} are wrong in v1.3. (Daniel M\"ullner) -% \end{Version} -% \begin{Version}{2009/08/13 v1.5} -% \item -% Except for driver options the other options are now local options. -% This resolves a problem with KOMA-Script v3.00 and its option \xoption{open}. -% \end{Version} -% \begin{Version}{2009/12/06 v1.6} -% \item -% Use of package \xpackage{atveryend} for drivers \xoption{pdftex} -% and \xoption{pdfmark}. -% \end{Version} -% \begin{Version}{2009/12/07 v1.7} -% \item -% Use of package \xpackage{atveryend} fixed. -% \end{Version} -% \begin{Version}{2009/12/17 v1.8} -% \item -% Support of \xpackage{hyperref} 2009/12/17 v6.79v for \hologo{XeTeX}. -% \end{Version} -% \begin{Version}{2010/03/30 v1.9} -% \item -% Package name in an error message fixed. -% \end{Version} -% \begin{Version}{2010/04/03 v1.10} -% \item -% Option \xoption{style} and macro \cs{bookmarkdefinestyle} added. -% \item -% Hook support with option \xoption{addtohook} added. -% \item -% \cs{bookmarkget} added. -% \end{Version} -% \begin{Version}{2010/04/04 v1.11} -% \item -% Bug fix (introduced in v1.10). -% \end{Version} -% \begin{Version}{2010/04/08 v1.12} -% \item -% Requires \xpackage{ltxcmds} 2010/04/08. -% \end{Version} -% \begin{Version}{2010/07/23 v1.13} -% \item -% Support for \xclass{memoir}'s \cs{booknumberline} added. -% \end{Version} -% \begin{Version}{2010/09/02 v1.14} -% \item -% (Local) options \xoption{draft} and \xoption{final} added. -% \end{Version} -% \begin{Version}{2010/09/25 v1.15} -% \item -% Fix for option \xoption{dvipdfmx-outline-open}. -% \item -% Option \xoption{dvipdfmx-outline-open} is set automatically, -% if XeTeX $\geq$ 0.9995 is detected. -% \end{Version} -% \begin{Version}{2010/10/19 v1.16} -% \item -% Option `startatroot' now acts globally. -% \item -% Option `level' also accepts names the same way as option `depth'. -% \end{Version} -% \begin{Version}{2010/10/25 v1.17} -% \item -% \cs{bookmarksetupnext} added. -% \item -% Using \cs{kvsetkeys} of package \xpackage{kvsetkeys}, because -% \cs{setkeys} of package \xpackage{keyval} is not reentrant. -% This can cause problems (unknown keys) with older versions of -% hyperref that also uses \cs{setkeys} (found by GL). -% \end{Version} -% \begin{Version}{2010/11/05 v1.18} -% \item -% Use of \cs{pdf@ifdraftmode} of package \xpackage{pdftexcmds} for -% the default of option \xoption{draft}. -% \end{Version} -% \begin{Version}{2011/03/20 v1.19} -% \item -% Use of \cs{dimexpr} fixed, if \hologo{eTeX} is not used. -% (Bug found by Martin M\"unch.) -% \item -% Fix in documentation. Also layout options work without \hologo{eTeX}. -% \end{Version} -% \begin{Version}{2011/04/13 v1.20} -% \item -% Bug fix: \cs{BKM@SetDepth} renamed to \cs{BKM@SetDepthOrLevel}. -% \end{Version} -% \begin{Version}{2011/04/21 v1.21} -% \item -% Some support for file name and line number in error messages -% at end of document (pdfTeX and pdfmark based drivers). -% \end{Version} -% \begin{Version}{2011/05/13 v1.22} -% \item -% Change of version 2010/11/05 v1.18 reverted, because otherwise -% draftmode disables some \xext{aux} file entries. -% \end{Version} -% \begin{Version}{2011/09/19 v1.23} -% \item -% Some \cs{renewcommand}s changed to \cs{def} to avoid trouble -% if the commands are not defined, because hyperref stopped early. -% \end{Version} -% \begin{Version}{2011/12/02 v1.24} -% \item -% Small optimization in \cs{BKM@toHexDigit}. -% \end{Version} -% \begin{Version}{2016/05/16 v1.25} -% \item -% Documentation updates. -% \end{Version} -% \begin{Version}{2016/05/17 v1.26} -% \item -% define \cs{pdfbookmark} to allow pdftex driver to be used with Lua\TeX. -% \end{Version} -% \begin{Version}{2019/06/04 v1.27} -% \item -% unknown style options are ignored (issue 67) -% \end{Version} - -% \end{History} -% -% \PrintIndex -% -% \Finale -\endinput diff --git a/macros/latex/contrib/oberdiek/bookmark.pdf b/macros/latex/contrib/oberdiek/bookmark.pdf deleted file mode 100644 index d465c8285b..0000000000 Binary files a/macros/latex/contrib/oberdiek/bookmark.pdf and /dev/null differ diff --git a/macros/latex/contrib/oberdiek/embedfile.dtx b/macros/latex/contrib/oberdiek/embedfile.dtx deleted file mode 100644 index f88e4bf2ae..0000000000 --- a/macros/latex/contrib/oberdiek/embedfile.dtx +++ /dev/null @@ -1,2141 +0,0 @@ -% \iffalse meta-comment -% -% File: embedfile.dtx -% Version: 2018/11/01 v2.8 -% Info: Embed files into PDF -% -% Copyright (C) -% 2006-2011 Heiko Oberdiek -% 2016-2019 Oberdiek Package Support Group -% https://github.com/ho-tex/oberdiek/issues -% -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either -% version 1.3c of this license or (at your option) any later -% version. This version of this license is in -% https://www.latex-project.org/lppl/lppl-1-3c.txt -% and the latest version of this license is in -% https://www.latex-project.org/lppl.txt -% and version 1.3 or later is part of all distributions of -% LaTeX version 2005/12/01 or later. -% -% This work has the LPPL maintenance status "maintained". -% -% The Current Maintainers of this work are -% Heiko Oberdiek and the Oberdiek Package Support Group -% https://github.com/ho-tex/oberdiek/issues -% -% The Base Interpreter refers to any `TeX-Format', -% because some files are installed in TDS:tex/generic//. -% -% This work consists of the main source file embedfile.dtx -% and the derived files -% embedfile.sty, embedfile.pdf, embedfile.ins, embedfile.drv, -% dtx-attach.sty, embedfile-example-plain.tex, -% embedfile-example-collection.tex, embedfile-test1.tex, -% embedfile-test2.tex, embedfile-test3.tex, -% embedfile-test4.tex. -% -% Distribution: -% CTAN:macros/latex/contrib/oberdiek/embedfile.dtx -% CTAN:macros/latex/contrib/oberdiek/embedfile.pdf -% -% Unpacking: -% (a) If embedfile.ins is present: -% tex embedfile.ins -% (b) Without embedfile.ins: -% tex embedfile.dtx -% (c) If you insist on using LaTeX -% latex \let\install=y\input{embedfile.dtx} -% (quote the arguments according to the demands of your shell) -% -% Documentation: -% (a) If embedfile.drv is present: -% latex embedfile.drv -% (b) Without embedfile.drv: -% latex embedfile.dtx; ... -% The class ltxdoc loads the configuration file ltxdoc.cfg -% if available. Here you can specify further options, e.g. -% use A4 as paper format: -% \PassOptionsToClass{a4paper}{article} -% -% Programm calls to get the documentation (example): -% pdflatex embedfile.dtx -% makeindex -s gind.ist embedfile.idx -% pdflatex embedfile.dtx -% makeindex -s gind.ist embedfile.idx -% pdflatex embedfile.dtx -% -% Installation: -% TDS:tex/generic/oberdiek/embedfile.sty -% TDS:tex/generic/oberdiek/dtx-attach.sty -% TDS:doc/latex/oberdiek/embedfile.pdf -% TDS:doc/latex/oberdiek/embedfile-example-plain.tex -% TDS:doc/latex/oberdiek/embedfile-example-collection.tex -% TDS:doc/latex/oberdiek/test/embedfile-test1.tex -% TDS:doc/latex/oberdiek/test/embedfile-test2.tex -% TDS:doc/latex/oberdiek/test/embedfile-test3.tex -% TDS:doc/latex/oberdiek/test/embedfile-test4.tex -% TDS:source/latex/oberdiek/embedfile.dtx -% -%<*ignore> -\begingroup - \catcode123=1 % - \catcode125=2 % - \def\x{LaTeX2e}% -\expandafter\endgroup -\ifcase 0\ifx\install y1\fi\expandafter - \ifx\csname processbatchFile\endcsname\relax\else1\fi - \ifx\fmtname\x\else 1\fi\relax -\else\csname fi\endcsname -% -%<*install> -\input docstrip.tex -\Msg{************************************************************************} -\Msg{* Installation} -\Msg{* Package: embedfile 2018/11/01 v2.8 Embed files into PDF (HO)} -\Msg{************************************************************************} - -\keepsilent -\askforoverwritefalse - -\let\MetaPrefix\relax -\preamble - -This is a generated file. - -Project: embedfile -Version: 2018/11/01 v2.8 - -Copyright (C) - 2006-2011 Heiko Oberdiek - 2016-2019 Oberdiek Package Support Group - -This work may be distributed and/or modified under the -conditions of the LaTeX Project Public License, either -version 1.3c of this license or (at your option) any later -version. This version of this license is in - https://www.latex-project.org/lppl/lppl-1-3c.txt -and the latest version of this license is in - https://www.latex-project.org/lppl.txt -and version 1.3 or later is part of all distributions of -LaTeX version 2005/12/01 or later. - -This work has the LPPL maintenance status "maintained". - -The Current Maintainers of this work are -Heiko Oberdiek and the Oberdiek Package Support Group -https://github.com/ho-tex/oberdiek/issues - - -The Base Interpreter refers to any `TeX-Format', -because some files are installed in TDS:tex/generic//. - -This work consists of the main source file embedfile.dtx -and the derived files - embedfile.sty, embedfile.pdf, embedfile.ins, embedfile.drv, - dtx-attach.sty, embedfile-example-plain.tex, - embedfile-example-collection.tex, embedfile-test1.tex, - embedfile-test2.tex, embedfile-test3.tex, - embedfile-test4.tex. - -\endpreamble -\let\MetaPrefix\DoubleperCent - -\generate{% - \file{embedfile.ins}{\from{embedfile.dtx}{install}}% - \file{embedfile.drv}{\from{embedfile.dtx}{driver}}% - \usedir{tex/generic/oberdiek}% - \file{embedfile.sty}{\from{embedfile.dtx}{package}}% - \usedir{tex/latex/oberdiek}% - \file{dtx-attach.sty}{\from{embedfile.dtx}{dtxattach}}% - \usedir{doc/latex/oberdiek}% - \file{embedfile-example-plain.tex}{\from{embedfile.dtx}{exampleplain}}% - \file{embedfile-example-collection.tex}{\from{embedfile.dtx}{examplecollection}}% -% \usedir{doc/latex/oberdiek/test}% -% \file{embedfile-test1.tex}{\from{embedfile.dtx}{test1}}% -% \file{embedfile-test2.tex}{\from{embedfile.dtx}{test2}}% -% \file{embedfile-test3.tex}{\from{embedfile.dtx}{test3}}% -% \file{embedfile-test4.tex}{\from{embedfile.dtx}{test4}}% - \nopreamble - \nopostamble -% \usedir{source/latex/oberdiek/catalogue}% -% \file{embedfile.xml}{\from{embedfile.dtx}{catalogue}}% -} - -\catcode32=13\relax% active space -\let =\space% -\Msg{************************************************************************} -\Msg{*} -\Msg{* To finish the installation you have to move the following} -\Msg{* files into a directory searched by TeX:} -\Msg{*} -\Msg{* embedfile.sty, dtx-attach.sty} -\Msg{*} -\Msg{* To produce the documentation run the file `embedfile.drv'} -\Msg{* through LaTeX.} -\Msg{*} -\Msg{* Happy TeXing!} -\Msg{*} -\Msg{************************************************************************} - -\endbatchfile -% -%<*ignore> -\fi -% -%<*driver> -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{embedfile.drv}% - [2018/11/01 v2.8 Embed files into PDF (HO)]% -\documentclass{ltxdoc} -\usepackage{holtxdoc}[2011/11/22] -\begin{document} - \DocInput{embedfile.dtx}% -\end{document} -% -% \fi -% -% -% \CharacterTable -% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -% Digits \0\1\2\3\4\5\6\7\8\9 -% Exclamation \! Double quote \" Hash (number) \# -% Dollar \$ Percent \% Ampersand \& -% Acute accent \' Left paren \( Right paren \) -% Asterisk \* Plus \+ Comma \, -% Minus \- Point \. Solidus \/ -% Colon \: Semicolon \; Less than \< -% Equals \= Greater than \> Question mark \? -% Commercial at \@ Left bracket \[ Backslash \\ -% Right bracket \] Circumflex \^ Underscore \_ -% Grave accent \` Left brace \{ Vertical bar \| -% Right brace \} Tilde \~} -% -% \GetFileInfo{embedfile.drv} -% -% \title{The \xpackage{embedfile} package} -% \date{2018/11/01 v2.8} -% \author{Heiko Oberdiek\thanks -% {Please report any issues at \url{https://github.com/ho-tex/oberdiek/issues}}} -% -% \maketitle -% -% \begin{abstract} -% This package embeds files to a PDF document. -% Currently the only supported driver is \pdfTeX\ $>=$ 1.30 in PDF mode. -% \end{abstract} -% -% \tableofcontents -% -% \section{Documentation} -% -% \subsection{Introduction} -% -% The PDF format (\cite{pdfspec}) allows the inclusion of files -% inside the PDF document. The included files can be bound to an -% annotation on a page. Or they can be recorded in a sorted -% list of embedded files. The packages \xpackage{attachfile} -% or \xpackage{attachfile2} follow the first approach, this -% package uses the latter method. -% -% \subsubsection{Future development} -% -% My dream is a large package that merges the features of -% all these packages meantioned before: -% \begin{itemize} -% \item Files can be attached to a page. -% \item Files can be attached to the document. -% \item An easy user interface for simple, common tasks and -% beginners. -% \item An interface for the advanced users that want to setup -% every detail. -% \item Support of many drivers (pdftex, dvips, dvipdfm, \dots). -% \item \dots -% \end{itemize} -% However, I have not managed to take the time for this project. -% Instead: -% \begin{itemize} -% \item First I experimented with package \xpackage{attachfile}, -% adding driver support, fixing bugs, \dots. The result is -% currently named as \xpackage{attachfile2}. It uses an external -% script to get file properties (size, date, checksum, \dots). -% \item In order to avoid an external program for getting basic -% file properties I provided a patch ``EscapeAndOther'' for -% pdfTeX that was accepted for version 1.30. -% \item This package closes a gap left by the packages for attaching -% files and allows the embedding of files to the document. -% Also it makes use of the new primitives of \pdfTeX. -% \end{itemize} -% -% \subsection{User interface} -% -% This package \xpackage{embedfile} can be used with both -% \LaTeX\ and \plainTeX. See \autoref{sec:plain} that -% explains the use with \plainTeX\ by an example. -% In \LaTeX\ the package is loaded as usually. There are no options. -% \begin{quote} -% \verb|\usepackage{embedfile}| -% \end{quote} -% -% \begin{declcs}{embedfile} -% |[|\meta{options}|]| \M{file} -% \end{declcs} -% The macro \cs{embedfile} includes file \meta{file} and -% attaches it to the PDF document. At the end of the document -% the sorted list of embedded files are written. Thus you can -% safely use \cs{embedfile} before \verb|\end{document}|. -% Embedding files using \cs{AtEndDocument} will only work, -% if \cs{AtEndDocument} is called before loading the package -% \xpackage{embedfile}. -% -% The \meta{options} are give as key value pairs. The following -% keys are supported: -% \begin{description} -% \item[\xoption{filespec}] -% This allows to override the file name -% that appears in the PDF file. If you are using other than -% simple file names (8-bit, path separators, \dots), look into -% the PDF specification (\cite{pdfspec}). -% There are rules how these file names must be written/encoded. -% Avoid 8-bit characters -% and other special characters, the behaviour is currently undefined. -% Use option \xoption{ucfilespec} for more funny file names. -% The string method, see below, is |escape| since version 2.4. -% -% This name is also used as entry in a name tree -% (see PDF specification: |/EmbeddedFiles|). Therefore the -% value for \xoption{filespec} must be unique among all -% embedded files. Also key \xoption{initialfiles} refers -% to this name, if the file name and the value of \xoption{filespec} -% are different. -% \item[\xoption{ucfilespec}] -% Since PDF 1.7 the file name may be provided in Unicode. -% The conversion of the option value into a PDF string -% is controlled by option \xoption{stringmethod}. -% \item[\xoption{filesystem}] -% This sets the entry \verb|/FS| in -% the file specification dictionary, see PDF specification -% (\cite{pdfspec}). -% Example: \verb|filesystem=URL|. -% \item[\xoption{mimetype}] -% This sets the mime type (\cite{mime}) of the file, -% see \autoref{sec:plain} for examples and \cite{types} -% for a list of officially registered types. -% \item[\xoption{desc}] -% The description for the file. -% \item[\xoption{stringmethod}] -% The package must convert the values of the keys \xoption{ucfilespec} -% and \xoption{desc} into a PDF string (before version 2.4: \xoption{filespec} -% and \xoption{desc}). If \xpackage{hyperref} -% is found, then its \cs{pdfstringdef} will be used, otherwise -% \pdfTeX's \cs{pdfescapestring} is used. Value \verb|psd| -% forces the use of \cs{pdfstringdef}, value \verb|escape| -% the use of \cs{pdfescapestring}. -% \item[\xoption{\meta{key}.value}] Sets the value of a collection -% item property, see section \ref{sec:collection}. -% \item[\xoption{\meta{key}.prefix}] -% Sets the prefix of a collection item property, -% see section \ref{sec:collection}. -% \item[\xoption{id}] -% The value must be an unique name. Macros -% \cs{embedfileifobjectexists} and \cs{embedfilegetobject} -% are using this name later. -% \end{description} -% -% \begin{declcs}{embedfilefinish} -% \end{declcs} -% The list of all embedded files must be added as data structure -% in the PDF file. In case of \LaTeX\ this is automatically done. -% The package uses \cs{AtEndDocument}. Then the list of all -% files should be known. However, \plainTeX\ does not know -% about \cs{AtEndDocument}. Thus the user must call -% \cs{embedfilefinish} at the end of the document -% after the last file is embedded. -% -% \begin{declcs}{embedfilesetup} \M{options} -% \end{declcs} -% Options for \cs{embedfile} and collection support -% can be set in \cs{embedfilesetup}. -% -% \subsection{Collection support (PDF 1.7)} -% \label{sec:collection} -% -% Since PDF 1.7 the embedded files can form a \emph{collection} -% (sometimes referred as \emph{package}), the main document -% is called \emph{cover sheet}. See PDF specification -% 8.2.4 ``Collections'' and 3.10.5 ``Collection items'' \cite{pdfspec}. -% -% Usually Acrobat Reader 7 or 8 shows the -% embedded files in a table at the bottom with the following columns: -% \begin{quote} -% \begin{tabular}{@{}l|l|l|l@{}} -% Name & Description & Modified & Size\\ -% \hline -% \dots & \dots & \dots & \dots\\ -% \end{tabular} -% \end{quote} -% Acrobat Reader 10 shows the embeded files in the left panel -% and adds a new column for the compressed size. -% -% If the files form a collection, then they are displayed -% in a table left or top (depending on option \xoption{view}, -% see \cs{embedfilesetup}). -% -% -% Collection support is enabled automatically, if -% it is used. -% -% \begin{declcs}{embedfilesetup} \M{options} -% \end{declcs} -% The following options are supported in addition -% to options for \cs{embedfile}: -% \begin{description} -% \item[\xoption{view}] -% If the PDF file contains a collection, then Acrobat Reader 8 -% shows a line at the top below the menu bar and the toolbar. -% It shows the current selected file, icons for changing the -% view mode, an options menu. -% The initial mode how the collection is presented is -% set by this option \xoption{view}. -% The following modes/values are supported, the default is |details|: -% \begin{description} -% \item[\texttt{details}] The full collection table is displayed -% at the top below the collection bar. -% \item[\texttt{tile}] The files of the collection are shown -% in tile mode on the left. -% \item[\texttt{hidden}] The collection table is not shown. -% \end{description} -% \item[\xoption{initialfile}] -% Selects the file that is initially presented. Especially -% useful for an embedded PDF file that is then shown instead -% of the cover document. There must be an \cs{embedfile} command -% somewhere whose value for key \xoption{filespec} is used here. -% The \cs{embedfile} command can drop option \xoption{filespec} -% if the file name is not different. -% \end{description} -% -% \begin{declcs}{embedfilefield} \M{key} \M{options} -% \end{declcs} -% Macro \cs{embedfilefield} defines a column/field in the collection table. -% The name of the field is \meta{key}. -% \begin{description} -% \item[\xoption{type}] -% sets the type of the field. The supported values are: -% \begin{description} -% \item[\texttt{text}] A text field. Its value is set in -% \cs{embedfile} by option \xoption{\meta{key}.value}. -% \item[\texttt{date}] A date field. Its value is set in -% \cs{embedfile} by option \xoption{\meta{key}.value}. -% A special format is required, see ``3.8.3 Dates'' \cite{pdfspec}. -% \item[\texttt{number}] A field with an integer or float number. -% Its value is set in \cs{embedfile} by option -% \xoption{\meta{key}.value}. -% \item[\texttt{file}] The file name of the embedded file. -% \item[\texttt{desc}] The description text of the embedded file. It is -% set in \cs{embedfile} by option \xoption{desc}. -% \item[\texttt{moddate}] The modification date of the embedded file. -% \item[\texttt{size}] The size of the embedded file. -% \end{description} -% All types allow the use of a prefix that is disregarded by -% sorting. The prefix for this field is set in \cs{embedfile} by -% option \xoption{\meta{key}.prefix}. -% \item[\xoption{title}] sets the column title. -% \item[\xoption{visible}] controls whether the column is presented: -% \begin{description} -% \item[\texttt{true}] shows the column. -% \item[\texttt{false}] hides the column. -% \end{description} -% Default: \texttt{true} -% \item[\xoption{edit}] -% Allows the editing of field values. Does not seem to have an -% effect for Acrobat Reader. -% \begin{description} -% \item[\texttt{true}] enables the feature, if available (depends -% on the PDF viewer). -% \item[\texttt{false}] disables the feature. -% \end{description} -% Default: \texttt{false} -% \end{description} -% The order of \cs{embedfilefield} statements defines the order -% of the columns. -% -% \begin{declcs}{embedfilesort} \M{key-sort-list} -% \end{declcs} -% The sort order of the embedded files are controlled by -% macro \cs{embedfilesort}. \meta{key-sort-list} defines -% the sort order. The key is a field name defined by \cs{embedfilefield}. -% Its value is either \texttt{ascending} or \texttt{descending}. -% The default is \texttt{ascending}. -% -% \subsection{Export of object references} -% -% Caution: This feature is still experimental. It may be even removed -% in future versions. Therefore feedback would be nice, if someone -% has a useful application for this feature. -% -% Object numbers are saved, if \xoption{id} is given in \cs{embedfile}. -% The following objects are supported: -% \begin{itemize} -% \item \texttt{EmbeddedFile} -% \item \texttt{Filespec} -% \end{itemize} -% -% \begin{declcs}{embedfileifobjectexists} \M{id} \M{type} -% \M{then} \M{else} -% \end{declcs} -% Macro \cs{embedfileifobjectexists} tests whether object of \meta{type} -% is available for the embedded file identified by \meta{id}. -% -% \begin{declcs}{embedfilegetobject} \M{id} \M{type} -% \end{declcs} -% Macro \cs{embedfilegetobject} expands to the full object reference -% object of \meta{type} for the embedded file identified by \meta{id}. -% -% \subsubsection{Example} -% -%\begin{quote} -%\begin{verbatim} -%\embedfile[id={foo}]{foo.pdf} -%\embedfileifobjectexists{foo}{Filespec}{% -% \typeout{% -% FileSpec object for `foo': % -% \embedfilegetobject{foo}{Filespec}% -% }% -%}{% -% \typeout{No Filespec object for `foo'}% -%} -%\end{verbatim} -%\end{quote} -% -% \subsection{Examples} -% \label{sec:examples} -% -% \subsubsection{\plainTeX} -% \label{sec:plain} -% -% The package can be used with \plainTeX. It can be used -% with or without help from \xfile{miniltx.tex}. -% -% If additionally package \xpackage{keyval} (\xpackage{graphicx}) -% is needed, load it first. Then package \xpackage{embedfile} avoids -% a duplicate loading of package \xpackage{keyval}. -% -% Because \plainTeX\ does not provide a hook at end of the document, -% you have to call \cs{embedfilefinish} manually at the end -% after the last embedded file. -% \begin{macrocode} -%<*exampleplain> -%< -% \end{macrocode} -% -% \subsubsection{Collection example} -% -% \begin{macrocode} -%<*examplecollection> -%< -% \end{macrocode} -% -% \subsection{Package \xpackage{dtx-attach}} -% -% Package \xpackage{dtx-attach} is just a small application of -% package \xpackage{embedfile}. I am using it for the CTAN -% documentation of my packages in \CTANpkg{oberdiek}. -% It also serves as small example for the use of the package with \LaTeX. -% -% \begin{macrocode} -%<*dtxattach> -\NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{dtx-attach} - [2018/11/01 v2.8 Embed \string\jobname.dtx (HO)]% -\RequirePackage{embedfile}[2018/11/01] -\embedfile[% - stringmethod=escape,% - mimetype=plain/text,% - desc={LaTeX docstrip source archive for package `\jobname'}% -]{\jobname.dtx} -% -% \end{macrocode} -% -% \StopEventually{ -% } -% -% \section{Implementation} -% -% \begin{macrocode} -%<*package> -% \end{macrocode} -% -% \subsection{Reload check and package identification} -% Reload check, especially if the package is not used with \LaTeX. -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode35=6 % # - \catcode39=12 % ' - \catcode44=12 % , - \catcode45=12 % - - \catcode46=12 % . - \catcode58=12 % : - \catcode64=11 % @ - \catcode123=1 % { - \catcode125=2 % } - \expandafter\let\expandafter\x\csname ver@embedfile.sty\endcsname - \ifx\x\relax % plain-TeX, first loading - \else - \def\empty{}% - \ifx\x\empty % LaTeX, first loading, - % variable is initialized, but \ProvidesPackage not yet seen - \else - \expandafter\ifx\csname PackageInfo\endcsname\relax - \def\x#1#2{% - \immediate\write-1{Package #1 Info: #2.}% - }% - \else - \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% - \fi - \x{embedfile}{The package is already loaded}% - \aftergroup\endinput - \fi - \fi -\endgroup% -% \end{macrocode} -% Package identification: -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode35=6 % # - \catcode39=12 % ' - \catcode40=12 % ( - \catcode41=12 % ) - \catcode44=12 % , - \catcode45=12 % - - \catcode46=12 % . - \catcode47=12 % / - \catcode58=12 % : - \catcode64=11 % @ - \catcode91=12 % [ - \catcode93=12 % ] - \catcode123=1 % { - \catcode125=2 % } - \expandafter\ifx\csname ProvidesPackage\endcsname\relax - \def\x#1#2#3[#4]{\endgroup - \immediate\write-1{Package: #3 #4}% - \xdef#1{#4}% - }% - \else - \def\x#1#2[#3]{\endgroup - #2[{#3}]% - \ifx#1\@undefined - \xdef#1{#3}% - \fi - \ifx#1\relax - \xdef#1{#3}% - \fi - }% - \fi -\expandafter\x\csname ver@embedfile.sty\endcsname -\ProvidesPackage{embedfile}% - [2018/11/01 v2.8 Embed files into PDF (HO)]% -% \end{macrocode} -% -% \subsection{Catcodes} -% -% \begin{macrocode} -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode123=1 % { - \catcode125=2 % } - \catcode64=11 % @ - \def\x{\endgroup - \expandafter\edef\csname EmFi@AtEnd\endcsname{% - \endlinechar=\the\endlinechar\relax - \catcode13=\the\catcode13\relax - \catcode32=\the\catcode32\relax - \catcode35=\the\catcode35\relax - \catcode61=\the\catcode61\relax - \catcode64=\the\catcode64\relax - \catcode123=\the\catcode123\relax - \catcode125=\the\catcode125\relax - }% - }% -\x\catcode61\catcode48\catcode32=10\relax% -\catcode13=5 % ^^M -\endlinechar=13 % -\catcode35=6 % # -\catcode64=11 % @ -\catcode123=1 % { -\catcode125=2 % } -\def\TMP@EnsureCode#1#2{% - \edef\EmFi@AtEnd{% - \EmFi@AtEnd - \catcode#1=\the\catcode#1\relax - }% - \catcode#1=#2\relax -} -\TMP@EnsureCode{39}{12}% ' -\TMP@EnsureCode{40}{12}% ( -\TMP@EnsureCode{41}{12}% ) -\TMP@EnsureCode{44}{12}% , -\TMP@EnsureCode{46}{12}% . -\TMP@EnsureCode{47}{12}% / -\TMP@EnsureCode{58}{12}% : -\TMP@EnsureCode{60}{12}% < -\TMP@EnsureCode{62}{12}% > -\TMP@EnsureCode{91}{12}% [ -\TMP@EnsureCode{93}{12}% ] -\TMP@EnsureCode{96}{12}% ` -\edef\EmFi@AtEnd{\EmFi@AtEnd\noexpand\endinput} -% \end{macrocode} -% -% \subsection{Tools} -% -% \begin{macro}{\EmFi@RequirePackage} -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname RequirePackage\endcsname\relax - \def\EmFi@RequirePackage#1[#2]{% - \input #1.sty\relax - }% -\else - \let\EmFi@RequirePackage\RequirePackage -\fi -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\EmFi@Error} -% \begin{macrocode} -\EmFi@RequirePackage{infwarerr}[2007/09/09]% -\def\EmFi@Error{% - \@PackageError{embedfile}% -} -% \end{macrocode} -% \end{macro} -% -% Luatex compat -% \begin{macrocode} -\ifx\pdfextension\@undefined\else - \protected\def\pdflastobj {\numexpr\pdffeedback lastobj\relax} - \protected\def\pdfnames {\pdfextension names } - \protected\def\pdfobj {\pdfextension obj } - \let\pdfoutput \outputmode -\fi -% \end{macrocode} -% -% \subsection{Check for recent \pdfTeX\ in PDF mode} -% -% Load package \xpackage{ifpdf} and check mode. -% \begin{macrocode} -\EmFi@RequirePackage{ifpdf}[2007/09/09] -\ifpdf -\else - \EmFi@Error{% - Missing pdfTeX in PDF mode% - }{% - Currently other drivers are not supported. % - Package loading is aborted.% - }% - \expandafter\EmFi@AtEnd -\fi% -% \end{macrocode} -% \begin{macrocode} -\EmFi@RequirePackage{pdftexcmds}[2007/11/11] -\EmFi@RequirePackage{ltxcmds}[2010/03/01] -\EmFi@RequirePackage{kvsetkeys}[2010/03/01] -\EmFi@RequirePackage{kvdefinekeys}[2010/03/01] -% \end{macrocode} -% Check version. -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname pdf@filesize\endcsname\relax - \EmFi@Error{% - Unsupported pdfTeX version% - }{% - At least version 1.30 is necessary. Package loading is aborted.% - }% - \expandafter\EmFi@AtEnd -\fi% -% \end{macrocode} -% -% \subsection{Strings} -% -% Minimal version of package \xpackage{pdfescape} is 2007/08/27 v1.5 -% because of \cs{EdefSanitize}. -% \begin{macrocode} -\EmFi@RequirePackage{pdfescape}[2007/11/11] -% \end{macrocode} -% -% \begin{macrocode} -\def\EmFi@temp#1{% - \expandafter\EdefSanitize\csname EmFi@S@#1\endcsname{#1}% -} -% \end{macrocode} -% \begin{macro}{\EmFi@details} -% \begin{macrocode} -\EmFi@temp{details}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@tile} -% \begin{macrocode} -\EmFi@temp{tile}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@hidden} -% \begin{macrocode} -\EmFi@temp{hidden}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@text} -% \begin{macrocode} -\EmFi@temp{text} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@date} -% \begin{macrocode} -\EmFi@temp{date} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@number} -% \begin{macrocode} -\EmFi@temp{number} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@file} -% \begin{macrocode} -\EmFi@temp{file} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@desc} -% \begin{macrocode} -\EmFi@temp{desc} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@moddate} -% \begin{macrocode} -\EmFi@temp{moddate} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@creationdate} -% \begin{macrocode} -\EmFi@temp{creationdate} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@size} -% \begin{macrocode} -\EmFi@temp{size} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@ascending} -% \begin{macrocode} -\EmFi@temp{ascending} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@descending} -% \begin{macrocode} -\EmFi@temp{descending} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@true} -% \begin{macrocode} -\EmFi@temp{true} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@S@false} -% \begin{macrocode} -\EmFi@temp{false} -% \end{macrocode} -% \end{macro} -% -% \subsection{Switches} -% -% \begin{macro}{\ifEmFi@collection} -% \begin{macrocode} -\ltx@newif\ifEmFi@collection -% \end{macrocode} -% \end{macro} -% \begin{macro}{\ifEmFi@sort} -% \begin{macrocode} -\ltx@newif\ifEmFi@sort -% \end{macrocode} -% \end{macro} -% \begin{macro}{\ifEmFi@visible} -% \begin{macrocode} -\ltx@newif\ifEmFi@visible -% \end{macrocode} -% \end{macro} -% \begin{macro}{\ifEmFi@edit} -% \begin{macrocode} -\ltx@newif\ifEmFi@edit -% \end{macrocode} -% \end{macro} -% \begin{macro}{\ifEmFi@item} -% \begin{macrocode} -\ltx@newif\ifEmFi@item -% \end{macrocode} -% \end{macro} -% \begin{macro}{\ifEmFi@finished} -% \begin{macrocode} -\ltx@newif\ifEmFi@finished -% \end{macrocode} -% \end{macro} -% \begin{macro}{\ifEmFi@id} -% \begin{macrocode} -\ltx@newif\ifEmFi@id -% \end{macrocode} -% \end{macro} -% -% \subsection{Key value definitions} -% -% \begin{macro}{\EmFi@GlobalKey} -% \begin{macrocode} -\def\EmFi@GlobalKey#1#2{% - \global\expandafter\let\csname KV@#1@#2\expandafter\endcsname - \csname KV@#1@#2\endcsname -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@GlobalDefaultKey} -% \begin{macrocode} -\def\EmFi@GlobalDefaultKey#1#2{% - \EmFi@GlobalKey{#1}{#2}% - \global\expandafter\let - \csname KV@#1@#2@default\expandafter\endcsname - \csname KV@#1@#2@default\endcsname -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\EmFi@DefineKey} -% \begin{macrocode} -\def\EmFi@DefineKey#1#2{% - \kv@define@key{EmFi}{#1}{% - \expandafter\def\csname EmFi@#1\endcsname{##1}% - }% - \expandafter\def\csname EmFi@#1\endcsname{#2}% -} -% \end{macrocode} -% \end{macro} -% Subtype of the embedded file (optional). -% \begin{macrocode} -\EmFi@DefineKey{mimetype}{} -% \end{macrocode} -% File specification string. -% \begin{macrocode} -\EmFi@DefineKey{filespec}{\EmFi@file} -% \end{macrocode} -% File specification string in Unicode. -% \begin{macrocode} -\EmFi@DefineKey{ucfilespec}{} -% \end{macrocode} -% File system (optional). -% \begin{macrocode} -\EmFi@DefineKey{filesystem}{} -% \end{macrocode} -% Description (optional). -% \begin{macrocode} -\EmFi@DefineKey{desc}{} -% \end{macrocode} -% Method for converting text to PDF strings. -% \begin{macrocode} -\EmFi@DefineKey{stringmethod}{% - \ifx\pdfstringdef\@undefined - escape% - \else - \ifx\pdfstringdef\relax - escape% - \else - psd% - \fi - \fi -} -% \end{macrocode} -% -% Option \xoption{id} as key for object numbers. -% \begin{macrocode} -\kv@define@key{EmFi}{id}{% - \def\EmFi@id{#1}% - \EmFi@idtrue -} -% \end{macrocode} -% \begin{macro}{\EmFi@defobj} -% \begin{macrocode} -\def\EmFi@defobj#1{% - \ifEmFi@id - \expandafter\xdef\csname EmFi@#1@\EmFi@id\endcsname{% - \the\pdflastobj\ltx@space 0 R% - }% - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\embedfileifobjectexists} -% \begin{macrocode} -\def\embedfileifobjectexists#1#2{% - \expandafter\ifx\csname EmFi@#2@#1\endcsname\relax - \expandafter\ltx@secondoftwo - \else - \expandafter\ltx@firstoftwo - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\embedfilegetobject} -% \begin{macrocode} -\def\embedfilegetobject#1#2{% - \embedfileifobjectexists{#1}{#2}{% - \csname EmFi@#2@#1\endcsname - }{% - 0 0 R% - }% -} -% \end{macrocode} -% \end{macro} -% -% Initial view of the collection. -% \begin{macrocode} -\kv@define@key{EmFi}{view}[]{% - \EdefSanitize\EmFi@temp{#1}% - \def\EmFi@next{% - \global\EmFi@collectiontrue - }% - \ifx\EmFi@temp\ltx@empty - \let\EmFi@view\EmFi@S@details - \else\ifx\EmFi@temp\EmFi@S@details - \let\EmFi@view\EmFi@S@details - \else\ifx\EmFi@temp\EmFi@S@tile - \let\EmFi@view\EmFi@S@tile - \else\ifx\EmFi@temp\EmFi@S@hidden - \let\EmFi@view\EmFi@S@hidden - \else - \let\EmFi@next\relax - \EmFi@Error{% - Unknown value `\EmFi@temp' for key `view'.\MessageBreak - Supported values: `details', `tile', `hidden'.% - }\@ehc - \fi\fi\fi\fi - \EmFi@next -} -% \end{macrocode} -% \begin{macrocode} -\EmFi@DefineKey{initialfile}{} -% \end{macrocode} -% -% \begin{macro}{\embedfilesetup} -% \begin{macrocode} -\def\embedfilesetup{% - \ifEmFi@finished - \def\EmFi@next##1{}% - \EmFi@Error{% - \string\embedfilefield\ltx@space after \string\embedfilefinish - }{% - The list of embedded files is already written.% - }% - \else - \def\EmFi@next{% - \kvsetkeys{EmFi}% - }% - \fi - \EmFi@next -} -% \end{macrocode} -% \end{macro} -% -% \begin{macro}{\EmFi@schema} -% \begin{macrocode} -\def\EmFi@schema{} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@order} -% \begin{macrocode} -\gdef\EmFi@order{0} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@@order} -% \begin{macrocode} -\let\EmFi@@order\relax -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@fieldlist} -% \begin{macrocode} -\def\EmFi@fieldlist{} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@sortcase} -% \begin{macrocode} -\def\EmFi@sortcase{0}% -% \end{macrocode} -% \end{macro} -% \begin{macro}{\embedfilefield} -% \begin{macrocode} -\def\embedfilefield#1#2{% - \ifEmFi@finished - \EmFi@Error{% - \string\embedfilefield\ltx@space after \string\embedfilefinish - }{% - The list of embedded files is already written.% - }% - \else - \global\EmFi@collectiontrue - \EdefSanitize\EmFi@key{#1}% - \expandafter\ifx\csname KV@EmFi@\EmFi@key.prefix\endcsname\relax - \begingroup - \count@=\EmFi@order - \advance\count@ 1 % - \xdef\EmFi@order{\the\count@}% - \let\EmFi@title\EmFi@key - \let\EmFi@type\EmFi@S@text - \EmFi@visibletrue - \EmFi@editfalse - \kvsetkeys{EmFiFi}{#2}% - \EmFi@convert\EmFi@title\EmFi@title - \xdef\EmFi@schema{% - \EmFi@schema - /\pdf@escapename{\EmFi@key}<<% - /Subtype/% - \ifx\EmFi@type\EmFi@S@date D% - \else\ifx\EmFi@type\EmFi@S@number N% - \else\ifx\EmFi@type\EmFi@S@file F% - \else\ifx\EmFi@type\EmFi@S@desc Desc% - \else\ifx\EmFi@type\EmFi@S@moddate ModDate% - \else\ifx\EmFi@type\EmFi@S@creationdate CreationDate% - \else\ifx\EmFi@type\EmFi@S@size Size% - \else S% - \fi\fi\fi\fi\fi\fi\fi - /N(\EmFi@title)% - \EmFi@@order{\EmFi@order}% - \ifEmFi@visible - \else - /V false% - \fi - \ifEmFi@edit - /E true% - \fi - >>% - }% - \let\do\relax - \xdef\EmFi@fieldlist{% - \EmFi@fieldlist - \do{\EmFi@key}% - }% - \ifx\EmFi@type\EmFi@S@text - \kv@define@key{EmFi}{\EmFi@key.value}{% - \EmFi@itemtrue - \def\EmFi@temp{##1}% - \EmFi@convert\EmFi@temp\EmFi@temp - \expandafter\def\csname EmFi@V@#1% - \expandafter\endcsname\expandafter{% - \expandafter(\EmFi@temp)% - }% - }% - \EmFi@GlobalKey{EmFi}{\EmFi@key.value}% - \else\ifx\EmFi@type\EmFi@S@date - \kv@define@key{EmFi}{\EmFi@key.value}{% - \EmFi@itemtrue - \def\EmFi@temp{##1}% - \EmFi@convert\EmFi@temp\EmFi@temp - \expandafter\def\csname EmFi@V@#1% - \expandafter\endcsname\expandafter{% - \expandafter(\EmFi@temp)% - }% - }% - \EmFi@GlobalKey{EmFi}{\EmFi@key.value}% - \else\ifx\EmFi@type\EmFi@S@number - \kv@define@key{EmFi}{\EmFi@key.value}{% - \EmFi@itemtrue - \expandafter\EdefSanitize\csname EmFi@V@#1\endcsname{ ##1}% - }% - \EmFi@GlobalKey{EmFi}{\EmFi@key.value}% - \fi\fi\fi - \kv@define@key{EmFi}{\EmFi@key.prefix}{% - \EmFi@itemtrue - \expandafter\def\csname EmFi@P@#1\endcsname{##1}% - }% - \EmFi@GlobalKey{EmFi}{\EmFi@key.prefix}% - \kv@define@key{EmFiSo}{\EmFi@key}[ascending]{% - \EdefSanitize\EmFi@temp{##1}% - \ifx\EmFi@temp\EmFi@S@ascending - \def\EmFi@temp{true}% - \else\ifx\EmFi@temp\EmFi@S@descending - \def\EmFi@temp{false}% - \else - \def\EmFi@temp{}% - \EmFi@Error{% - Unknown sort order `\EmFi@temp'.\MessageBreak - Supported values: `\EmFi@S@ascending', % - `\EmFi@S@descending - }\@ehc - \fi\fi - \ifx\EmFi@temp\ltx@empty - \else - \xdef\EmFi@sortkeys{% - \EmFi@sortkeys - /\pdf@escapename{#1}% - }% - \ifx\EmFi@sortorders\ltx@empty - \global\let\EmFi@sortorders\EmFi@temp - \gdef\EmFi@sortcase{1}% - \else - \xdef\EmFi@sortorders{% - \EmFi@sortorders - \ltx@space - \EmFi@temp - }% - \xdef\EmFi@sortcase{2}% - \fi - \fi - }% - \EmFi@GlobalDefaultKey{EmFiSo}\EmFi@key - \endgroup - \else - \EmFi@Error{% - Field `\EmFi@key' is already defined% - }\@ehc - \fi - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\kv@define@key{EmFiFi}{type}{% - \EdefSanitize\EmFi@temp{#1}% - \ifx\EmFi@temp\EmFi@S@text - \let\EmFi@type\EmFi@temp - \else\ifx\EmFi@temp\EmFi@S@date - \let\EmFi@type\EmFi@temp - \else\ifx\EmFi@temp\EmFi@S@number - \let\EmFi@type\EmFi@temp - \else\ifx\EmFi@temp\EmFi@S@file - \let\EmFi@type\EmFi@temp - \else\ifx\EmFi@temp\EmFi@S@desc - \let\EmFi@type\EmFi@temp - \else\ifx\EmFi@temp\EmFi@S@moddate - \let\EmFi@type\EmFi@temp - \else\ifx\EmFi@temp\EmFi@S@creationdate - \let\EmFi@type\EmFi@temp - \else\ifx\EmFi@temp\EmFi@S@size - \let\EmFi@type\EmFi@temp - \else - \EmFi@Error{% - Unknown type `\EmFi@temp'.\MessageBreak - Supported types: `text', `date', `number', `file',\MessageBreak - `desc', `moddate', `creationdate', `size'% - }% - \fi\fi\fi\fi\fi\fi\fi\fi -} -% \end{macrocode} -% \begin{macrocode} -\kv@define@key{EmFiFi}{title}{% - \def\EmFi@title{#1}% -} -% \end{macrocode} -% \begin{macro}{\EmFi@setboolean} -% \begin{macrocode} -\def\EmFi@setboolean#1#2{% - \EdefSanitize\EmFi@temp{#2}% - \ifx\EmFi@temp\EmFi@S@true - \csname EmFi@#1true\endcsname - \else - \ifx\EmFi@temp\EmFi@S@false - \csname EmFi@#1false\endcsname - \else - \EmFi@Error{% - Unknown value `\EmFi@temp' for key `#1'.\MessageBreak - Supported values: `true', `false'% - }\@ehc - \fi - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\kv@define@key{EmFiFi}{visible}[true]{% - \EmFi@setboolean{visible}{#1}% -} -% \end{macrocode} -% \begin{macrocode} -\kv@define@key{EmFiFi}{edit}[true]{% - \EmFi@setboolean{edit}{#1}% -} -% \end{macrocode} -% -% \begin{macro}{\EmFi@sortkeys} -% \begin{macrocode} -\def\EmFi@sortkeys{} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@sortorders} -% \begin{macrocode} -\def\EmFi@sortorders{} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\embedfilesort} -% \begin{macrocode} -\def\embedfilesort{% - \kvsetkeys{EmFiSo}% -} -% \end{macrocode} -% \end{macro} -% -% \subsection{Embed the file} -% -% \begin{macro}{\embedfile} -% \begin{macrocode} -\def\embedfile{% - \ltx@ifnextchar[\EmFi@embedfile{\EmFi@embedfile[]}% -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@embedfile} -% \begin{macrocode} -\def\EmFi@embedfile[#1]#2{% - \ifEmFi@finished - \EmFi@Error{% - \string\embedfile\ltx@space after \string\embedfilefinish - }{% - The list of embedded files is already written.% - }% - \else - \begingroup - \def\EmFi@file{#2}% - \kvsetkeys{EmFi}{#1}% - \expandafter\expandafter\expandafter - \ifx\expandafter\expandafter\expandafter - \\\pdf@filesize{\EmFi@file}\\% - \EmFi@Error{% - File `\EmFi@file' not found% - }{% - The unknown file is not embedded.% - }% - \else - \edef\EmFi@@filespec{% - \pdf@escapestring{\EmFi@filespec}% - }% - \ifx\EmFi@ucfilespec\ltx@empty - \let\EmFi@@ucfilespec\ltx@empty - \else - \EmFi@convert\EmFi@ucfilespec\EmFi@@ucfilespec - \fi - \ifx\EmFi@desc\ltx@empty - \let\EmFi@@desc\ltx@empty - \else - \EmFi@convert\EmFi@desc\EmFi@@desc - \fi - \ifEmFi@item - \let\do\EmFi@do - \immediate\pdfobj{% - <<% - \EmFi@fieldlist - >>% - }% - \edef\EmFi@ci{\the\pdflastobj}% - \fi - \immediate\pdfobj stream attr{% - /Type/EmbeddedFile% - \ifx\EmFi@mimetype\ltx@empty - \else - /Subtype/\pdf@escapename{\EmFi@mimetype}% - \fi - /Params<<% - /ModDate(\pdf@filemoddate{\EmFi@file})% - /Size \pdf@filesize{\EmFi@file}% - /CheckSum<\pdf@filemdfivesum{\EmFi@file}>% - >>% - }file{\EmFi@file}\relax - \EmFi@defobj{EmbeddedFile}% - \immediate\pdfobj{% - <<% - /Type/Filespec% - \ifx\EmFi@filesystem\ltx@empty - \else - /FS/\pdf@escapename{\EmFi@filesystem}% - \fi - /F(\EmFi@@filespec)% - \ifx\EmFi@@ucfilespec\ltx@empty - \else - /UF(\EmFi@@ucfilespec)% - \fi - \ifx\EmFi@@desc\ltx@empty - \else - /Desc(\EmFi@@desc)% - \fi - /EF<<% - /F \the\pdflastobj\ltx@space 0 R% - >>% - \ifEmFi@item - /CI \EmFi@ci\ltx@space 0 R% - \fi - >>% - }% - \EmFi@defobj{Filespec}% - \EmFi@add{% - \EmFi@@filespec - }{\the\pdflastobj\ltx@space 0 R}% - \fi - \endgroup - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@do} -% \begin{macrocode} -\def\EmFi@do#1{% - \expandafter\ifx\csname EmFi@P@#1\endcsname\relax - \expandafter\ifx\csname EmFi@V@#1\endcsname\relax - \else - /\pdf@escapename{#1}\csname EmFi@V@#1\endcsname - \fi - \else - /\pdf@escapename{#1}<<% - \expandafter\ifx\csname EmFi@V@#1\endcsname\relax - \else - /D\csname EmFi@V@#1\endcsname - \fi - /P(\csname EmFi@P@#1\endcsname)% - >>% - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\EmFi@convert} -% \begin{macrocode} -\def\EmFi@convert#1#2{% - \ifnum\pdf@strcmp{\EmFi@stringmethod}{psd}=0 % - \pdfstringdef\EmFi@temp{#1}% - \let#2\EmFi@temp - \else - \edef#2{\pdf@escapestring{#1}}% - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\global\let\EmFi@list\ltx@empty -% \end{macrocode} -% \begin{macro}{\EmFi@add} -% Sorting is done by the insertion sort algorithm. -% Probably the sorting could be done more reliable. -% However, the PDF specification is not too clear to me -% regarding precise sorting rules (how to deal with -% different encodings, escaped characters, \dots). -% \begin{macrocode} -\def\EmFi@add#1#2{% - \begingroup - \ifx\EmFi@list\ltx@empty - \xdef\EmFi@list{\noexpand\do{#1}{#2}}% - \else - \def\do##1##2{% - \ifnum\pdf@strcmp{##1}{#1}>0 % - \edef\x{% - \toks@{% - \the\toks@% - \noexpand\do{#1}{#2}% - \noexpand\do{##1}{##2}% - }% - }% - \x - \def\do####1####2{% - \toks@\expandafter{\the\toks@\do{####1}{####2}}% - }% - \def\stop{% - \xdef\EmFi@list{\the\toks@}% - }% - \else - \toks@\expandafter{\the\toks@\do{##1}{##2}}% - \fi - }% - \def\stop{% - \xdef\EmFi@list{\the\toks@\noexpand\do{#1}{#2}}% - }% - \toks@{}% - \EmFi@list\stop - \fi - \endgroup -} -% \end{macrocode} -% \end{macro} -% \begin{macro}{\embedfilefinish} -% \begin{macrocode} -\def\embedfilefinish{% - \ifEmFi@finished - \EmFi@Error{% - Too many invocations of \string\embedfilefinish - }{% - The list of embedded files is already written.% - }% - \else - \ifx\EmFi@list\ltx@empty - \else -% \end{macrocode} -% Write |/EmbeddedFiles| entry. -% \begin{macrocode} - \global\EmFi@finishedtrue - \begingroup - \def\do##1##2{% - (##1)##2% - }% - \immediate\pdfobj{% - <<% - /Names[\EmFi@list]% - >>% - }% - \pdfnames{% - /EmbeddedFiles \the\pdflastobj\ltx@space 0 R% - }% - \endgroup -% \end{macrocode} -% Write collection objects. -% \begin{macrocode} - \ifx\EmFi@initialfile\ltx@empty - \else - \EmFi@collectiontrue - \fi - \ifEmFi@collection - \ifx\EmFi@initialfile\ltx@empty - \let\EmFi@@initialfile\ltx@empty - \else - \edef\EmFi@@initialfile{% - \pdf@escapestring{\EmFi@initialfile}% - }% - \fi -% \end{macrocode} -% Look for initial file among the embedded files. -% \begin{macrocode} - \begingroup - \let\f=N% - \def\do##1##2{% - \def\x{##1}% - \ifx\x\EmFi@@initialfile - \let\f=Y% - \let\do\ltx@gobbletwo - \fi - }% - \EmFi@list - \expandafter\endgroup - \ifx\f Y% - \else - \@PackageWarningNoLine{embedfile}{% - Missing initial file `\EmFi@initialfile'\MessageBreak - among the embedded files% - }% - \let\EmFi@initialfile\ltx@empty - \let\EmFi@@initialfile\ltx@empty - \fi - \ifcase\EmFi@sortcase - \def\EmFi@temp{}% - \or - \def\EmFi@temp{% - /S\EmFi@sortkeys - /A \EmFi@sortorders - }% - \else - \def\EmFi@temp{% - /S[\EmFi@sortkeys]% - /A[\EmFi@sortorders]% - }% - \fi - \def\EmFi@@order##1{% - \ifnum\EmFi@order>1 % - /O ##1% - \fi - }% - \immediate\pdfobj{% - <<% - \ifx\EmFi@schema\ltx@empty - \else - /Schema<<\EmFi@schema>>% - \fi - \ifx\EmFi@@initialfile\ltx@empty - \else - /D(\EmFi@@initialfile)% - \fi - \ifx\EmFi@view\EmFi@S@tile - /View/T% - \else\ifx\EmFi@view\EmFi@S@hidden - /View/H% - \fi\fi - \ifx\EmFi@temp\ltx@empty - \EmFi@temp - \else - /Sort<<\EmFi@temp>>% - \fi - >>% - }% - \pdfcatalog{% - /Collection \the\pdflastobj\ltx@space0 R% - }% - \fi - \fi - \fi -} -% \end{macrocode} -% \end{macro} -% \begin{macrocode} -\begingroup\expandafter\expandafter\expandafter\endgroup -\expandafter\ifx\csname AtEndDocument\endcsname\relax -\else - \AtEndDocument{\embedfilefinish}% -\fi -% \end{macrocode} -% -% \begin{macrocode} -\EmFi@AtEnd% -% -% \end{macrocode} -% -% \section{Test} -% -% \subsection{Catcode checks for loading} -% -% \begin{macrocode} -%<*test1> -% \end{macrocode} -% \begin{macrocode} -\catcode`\{=1 % -\catcode`\}=2 % -\catcode`\#=6 % -\catcode`\@=11 % -\expandafter\ifx\csname count@\endcsname\relax - \countdef\count@=255 % -\fi -\expandafter\ifx\csname @gobble\endcsname\relax - \long\def\@gobble#1{}% -\fi -\expandafter\ifx\csname @firstofone\endcsname\relax - \long\def\@firstofone#1{#1}% -\fi -\expandafter\ifx\csname loop\endcsname\relax - \expandafter\@firstofone -\else - \expandafter\@gobble -\fi -{% - \def\loop#1\repeat{% - \def\body{#1}% - \iterate - }% - \def\iterate{% - \body - \let\next\iterate - \else - \let\next\relax - \fi - \next - }% - \let\repeat=\fi -}% -\def\RestoreCatcodes{} -\count@=0 % -\loop - \edef\RestoreCatcodes{% - \RestoreCatcodes - \catcode\the\count@=\the\catcode\count@\relax - }% -\ifnum\count@<255 % - \advance\count@ 1 % -\repeat - -\def\RangeCatcodeInvalid#1#2{% - \count@=#1\relax - \loop - \catcode\count@=15 % - \ifnum\count@<#2\relax - \advance\count@ 1 % - \repeat -} -\def\RangeCatcodeCheck#1#2#3{% - \count@=#1\relax - \loop - \ifnum#3=\catcode\count@ - \else - \errmessage{% - Character \the\count@\space - with wrong catcode \the\catcode\count@\space - instead of \number#3% - }% - \fi - \ifnum\count@<#2\relax - \advance\count@ 1 % - \repeat -} -\def\space{ } -\expandafter\ifx\csname LoadCommand\endcsname\relax - \def\LoadCommand{\input embedfile.sty\relax}% -\fi -\def\Test{% - \RangeCatcodeInvalid{0}{47}% - \RangeCatcodeInvalid{58}{64}% - \RangeCatcodeInvalid{91}{96}% - \RangeCatcodeInvalid{123}{255}% - \catcode`\@=12 % - \catcode`\\=0 % - \catcode`\%=14 % - \LoadCommand - \RangeCatcodeCheck{0}{36}{15}% - \RangeCatcodeCheck{37}{37}{14}% - \RangeCatcodeCheck{38}{47}{15}% - \RangeCatcodeCheck{48}{57}{12}% - \RangeCatcodeCheck{58}{63}{15}% - \RangeCatcodeCheck{64}{64}{12}% - \RangeCatcodeCheck{65}{90}{11}% - \RangeCatcodeCheck{91}{91}{15}% - \RangeCatcodeCheck{92}{92}{0}% - \RangeCatcodeCheck{93}{96}{15}% - \RangeCatcodeCheck{97}{122}{11}% - \RangeCatcodeCheck{123}{255}{15}% - \RestoreCatcodes -} -\Test -\csname @@end\endcsname -\end -% \end{macrocode} -% \begin{macrocode} -% -% \end{macrocode} -% -% \subsection{Simple test} -% -% \begin{macrocode} -%<*test2> -\input embedfile.sty\relax -\embedfile[% - stringmethod=escape,% - mimetype=plain/text,% - desc={LaTeX docstrip source archive for package `embedfile'},% - id={embedfile.dtx}% -]{embedfile.dtx} -\nopagenumbers -Test (plain-\TeX): {\tt embedfile.dtx} should be embedded.% - -\def\Test#1{% - \par - \embedfileifobjectexists{embedfile.dtx}{#1}{% - Object #1 (embedfile.dtx): % - \embedfilegetobject{embedfile.dtx}{#1}% - }{% - \errmessage{Missing object #1 (embedfile.dtx)}% - }% -} -\Test{EmbeddedFile} -\Test{Filespec} -\embedfilefinish -\bye -% -% \end{macrocode} -% \begin{macrocode} -%<*test3> -\NeedsTeXFormat{LaTeX2e} -\let\SavedJobname\jobname -\def\jobname{embedfile} -\RequirePackage{dtx-attach}[2018/11/01] -\let\jobname\SavedJobname -\documentclass{minimal} -\begin{document} - Test (\LaTeX): \texttt{embedfile.dtx} should be embedded.% -\end{document} -% -% \end{macrocode} -% -% \subsection{Test for \iniTeX} -% -% \begin{macrocode} -%<*test4> -\catcode`\{=1 % -\catcode`\}=2 % -\input ifluatex.sty % -\ifluatex - \directlua{% - tex.enableprimitives('', {% - 'pdflastobj',% - 'pdfnames',% - 'pdfobj',% - 'pdfoutput'% - })% - }% - \ifx\pdfextension\undefined\else - \protected\def\pdflastobj {\numexpr\pdffeedback lastobj\relax} - \protected\def\pdfnames {\pdfextension names } - \protected\def\pdfobj {\pdfextension obj } - \let\pdfoutput \outputmode - \fi -\fi -\pdfoutput=1 % -\input embedfile.sty % -\shipout\hbox{} -\embedfile[% - stringmethod=escape,% - mimetype=plain/text,% - desc={iniTeX source},% -]{\jobname.tex} -\embedfilefinish -\end -% -% \end{macrocode} -% -% \section{Installation} -% -% \subsection{Download} -% -% \paragraph{Package.} This package is available on -% CTAN\footnote{\CTANpkg{embedfile}}: -% \begin{description} -% \item[\CTAN{macros/latex/contrib/oberdiek/embedfile.dtx}] The source file. -% \item[\CTAN{macros/latex/contrib/oberdiek/embedfile.pdf}] Documentation. -% \end{description} -% -% -% \paragraph{Bundle.} All the packages of the bundle `oberdiek' -% are also available in a TDS compliant ZIP archive. There -% the packages are already unpacked and the documentation files -% are generated. The files and directories obey the TDS standard. -% \begin{description} -% \item[\CTANinstall{install/macros/latex/contrib/oberdiek.tds.zip}] -% \end{description} -% \emph{TDS} refers to the standard ``A Directory Structure -% for \TeX\ Files'' (\CTANpkg{tds}). Directories -% with \xfile{texmf} in their name are usually organized this way. -% -% \subsection{Bundle installation} -% -% \paragraph{Unpacking.} Unpack the \xfile{oberdiek.tds.zip} in the -% TDS tree (also known as \xfile{texmf} tree) of your choice. -% Example (linux): -% \begin{quote} -% |unzip oberdiek.tds.zip -d ~/texmf| -% \end{quote} -% -% \subsection{Package installation} -% -% \paragraph{Unpacking.} The \xfile{.dtx} file is a self-extracting -% \docstrip\ archive. The files are extracted by running the -% \xfile{.dtx} through \plainTeX: -% \begin{quote} -% \verb|tex embedfile.dtx| -% \end{quote} -% -% \paragraph{TDS.} Now the different files must be moved into -% the different directories in your installation TDS tree -% (also known as \xfile{texmf} tree): -% \begin{quote} -% \def\t{^^A -% \begin{tabular}{@{}>{\ttfamily}l@{ $\rightarrow$ }>{\ttfamily}l@{}} -% embedfile.sty & tex/generic/oberdiek/embedfile.sty\\ -% dtx-attach.sty & tex/generic/oberdiek/dtx-attach.sty\\ -% embedfile.pdf & doc/latex/oberdiek/embedfile.pdf\\ -% embedfile-example-plain.tex & doc/latex/oberdiek/embedfile-example-plain.tex\\ -% embedfile-example-collection.tex & doc/latex/oberdiek/embedfile-example-collection.tex\\ -% test/embedfile-test1.tex & doc/latex/oberdiek/test/embedfile-test1.tex\\ -% test/embedfile-test2.tex & doc/latex/oberdiek/test/embedfile-test2.tex\\ -% test/embedfile-test3.tex & doc/latex/oberdiek/test/embedfile-test3.tex\\ -% test/embedfile-test4.tex & doc/latex/oberdiek/test/embedfile-test4.tex\\ -% embedfile.dtx & source/latex/oberdiek/embedfile.dtx\\ -% \end{tabular}^^A -% }^^A -% \sbox0{\t}^^A -% \ifdim\wd0>\linewidth -% \begingroup -% \advance\linewidth by\leftmargin -% \advance\linewidth by\rightmargin -% \edef\x{\endgroup -% \def\noexpand\lw{\the\linewidth}^^A -% }\x -% \def\lwbox{^^A -% \leavevmode -% \hbox to \linewidth{^^A -% \kern-\leftmargin\relax -% \hss -% \usebox0 -% \hss -% \kern-\rightmargin\relax -% }^^A -% }^^A -% \ifdim\wd0>\lw -% \sbox0{\small\t}^^A -% \ifdim\wd0>\linewidth -% \ifdim\wd0>\lw -% \sbox0{\footnotesize\t}^^A -% \ifdim\wd0>\linewidth -% \ifdim\wd0>\lw -% \sbox0{\scriptsize\t}^^A -% \ifdim\wd0>\linewidth -% \ifdim\wd0>\lw -% \sbox0{\tiny\t}^^A -% \ifdim\wd0>\linewidth -% \lwbox -% \else -% \usebox0 -% \fi -% \else -% \lwbox -% \fi -% \else -% \usebox0 -% \fi -% \else -% \lwbox -% \fi -% \else -% \usebox0 -% \fi -% \else -% \lwbox -% \fi -% \else -% \usebox0 -% \fi -% \else -% \lwbox -% \fi -% \else -% \usebox0 -% \fi -% \end{quote} -% If you have a \xfile{docstrip.cfg} that configures and enables \docstrip's -% TDS installing feature, then some files can already be in the right -% place, see the documentation of \docstrip. -% -% \subsection{Refresh file name databases} -% -% If your \TeX~distribution -% (\TeX\,Live, \mikTeX, \dots) relies on file name databases, you must refresh -% these. For example, \TeX\,Live\ users run \verb|texhash| or -% \verb|mktexlsr|. -% -% \subsection{Some details for the interested} -% -% \paragraph{Unpacking with \LaTeX.} -% The \xfile{.dtx} chooses its action depending on the format: -% \begin{description} -% \item[\plainTeX:] Run \docstrip\ and extract the files. -% \item[\LaTeX:] Generate the documentation. -% \end{description} -% If you insist on using \LaTeX\ for \docstrip\ (really, -% \docstrip\ does not need \LaTeX), then inform the autodetect routine -% about your intention: -% \begin{quote} -% \verb|latex \let\install=y\input{embedfile.dtx}| -% \end{quote} -% Do not forget to quote the argument according to the demands -% of your shell. -% -% \paragraph{Generating the documentation.} -% You can use both the \xfile{.dtx} or the \xfile{.drv} to generate -% the documentation. The process can be configured by the -% configuration file \xfile{ltxdoc.cfg}. For instance, put this -% line into this file, if you want to have A4 as paper format: -% \begin{quote} -% \verb|\PassOptionsToClass{a4paper}{article}| -% \end{quote} -% An example follows how to generate the -% documentation with pdf\LaTeX: -% \begin{quote} -%\begin{verbatim} -%pdflatex embedfile.dtx -%makeindex -s gind.ist embedfile.idx -%pdflatex embedfile.dtx -%makeindex -s gind.ist embedfile.idx -%pdflatex embedfile.dtx -%\end{verbatim} -% \end{quote} -% -% \begin{thebibliography}{9} -% \bibitem{attachfile} -% Scott Pakin: \textit{The \xpackage{attachfile} package}; -% 2005/02/20 v1.2; -% \CTANpkg{attachfile}. -% -% \bibitem{attachfile2} -% Heiko Oberdiek: \textit{The \xpackage{attachfile2} package}; -% 2006/08/16 v2.2; -% \CTAN{macros/latex/contrib/attachfile2/attachfile2.pdf}. -% -% \bibitem{pdfspec} -% Adobe Systems Incorporated: -% \href{http://www.adobe.com/devnet/acrobat/pdfs/pdf_reference.pdf}% -% {\textit{PDF Reference, Sixth Edition, Version 1.7}},% -% Oktober 2006; -% \url{http://www.adobe.com/devnet/pdf/pdf_reference.html}. -% -% \bibitem{mime} -% Network Working Group: RFC 2046, \textit{Multipurpose Internet Mail Extensions (MIME) Part Two: -% Media Types}, November 1996; \url{http://www.rfc-editor.org/}. -% -% \bibitem{types} -% IANA (Internet Assigned Numbers Authority): -% \textit{MIME Media Types}, May 2006; -% \url{http://www.iana.org/assignments/media-types/}. -% -% \end{thebibliography} -% -% \begin{History} -% \begin{Version}{2006/08/16 v1.0} -% \item -% First public version. -% \end{Version} -% \begin{Version}{2007/04/11 v1.1} -% \item -% Line ends sanitized. -% \end{Version} -% \begin{Version}{2007/09/09 v1.2} -% \item -% Fixes for plain-TeX, wrapper for package \xpackage{keyval} added. -% \item -% Catcode section rewritten. -% \end{Version} -% \begin{Version}{2007/10/28 v2.0} -% \item -% Collection support added (PDF 1.7). -% \end{Version} -% \begin{Version}{2007/10/29 v2.1} -% \item -% Export of object references by adding new option \xoption{id} and -% new macros \cs{embedfileifobjectexists} and \cs{embedfilegetobject}. -% \end{Version} -% \begin{Version}{2007/11/11 v2.2} -% \item -% Use of package \xpackage{pdftexcmds} for \LuaTeX\ support. -% \end{Version} -% \begin{Version}{2007/11/25 v2.3} -% \item -% Fix in use of \cs{pdf@filesize}, bug introduced in previous version. -% \end{Version} -% \begin{Version}{2009/09/25 v2.4} -% \item -% Bug fix: If \xpackage{hyperref} is used with option \xoption{unicode}, -% the Unicode encoded file name causes trouble. Therefore \cs{pdfstringdef} -% is now never used for option \xoption{filespec}, always method -% \texttt{escape} is applied (Peter Cibulka). -% \item -% Bug fix for \xoption{initialfile}. -% \item -% Bug fix for file names in \texttt{/EmbeddedFiles}. -% \item -% New option \xoption{ucfilespec} for file name support in Unicode -% (since PDF 1.7). -% \end{Version} -% \begin{Version}{2010/03/01 v2.5} -% \item -% Compatibility for \iniTeX. -% \item -% Package \xpackage{keyval} replaced by packages \xpackage{kvsetkeys} -% and \xpackage{kvdefinekeys} because of compatibility for \iniTeX. -% \item -% TDS location moved from TDS:tex/latex/oberdiek/embedfile.sty to -% TDS:tex/generic/oberdiek/embedfile.sty. -% \end{Version} -% \begin{Version}{2011/04/13 v2.6} -% \item -% Docu fixes (thanks Hans-Martin M\"unch). -% \end{Version} -% \begin{Version}{2016/05/15 v2.7} -% \item -% LuaTeX compatibility -% \end{Version} -% \begin{Version}{2018/11/01 v2.8} -% \item -% Remove luatex85 package depenency. -% \end{Version} -% \end{History} -% -% \PrintIndex -% -% \Finale -\endinput diff --git a/macros/latex/contrib/oberdiek/embedfile.pdf b/macros/latex/contrib/oberdiek/embedfile.pdf deleted file mode 100644 index d7ccbeb198..0000000000 Binary files a/macros/latex/contrib/oberdiek/embedfile.pdf and /dev/null differ diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl index 9dca9bbeae..f5f4f114eb 100644 --- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl @@ -3,9 +3,6 @@ $mirrors = { 'Algeria' => { 'http://ctan.epst-tlemcen.dz/tex-archive/' => 1 }, - 'Morocco' => { - 'https://mirror.marwan.ma/ctan/' => 1 - }, 'South Africa' => { 'http://ftp.leg.uct.ac.za/pub/packages/ctan/' => 1, 'http://ftp.sun.ac.za/ftp/CTAN/' => 1, @@ -48,9 +45,6 @@ $mirrors = { 'http://mirror.navercorp.com/CTAN/' => 1, 'http://mirror.yongbok.net/ctan/' => 1 }, - 'Philippines' => { - 'http://mirror.pregi.net/tex-archive/' => 1 - }, 'Singapore' => { 'https://download.nus.edu.sg/mirror/ctan/' => 1 }, @@ -132,7 +126,6 @@ $mirrors = { 'http://mirrors.nxthost.com/ctan/' => 1 }, 'Russia' => { - 'http://ctan.altspu.ru/' => 1, 'http://mirror.macomnet.net/pub/CTAN/' => 1, 'http://mirrors.mi.ras.ru/CTAN/' => 1 }, diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb index 8966bcad6f..58a9d7c13b 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb @@ -26,11 +26,11 @@ depend container_split_src_files/1 depend frozen/0 depend minrelease/2016 depend release/2019 -depend revision/52994 +depend revision/53004 name 00texlive.image category TLCore -revision 52994 +revision 53004 shortdesc TeX Live files only in the source repository longdesc The files here are not copied by the installer and containers longdesc are not built for them; they exist only in the source @@ -40,7 +40,7 @@ longdesc IgnorePatterns in the check_files routine in tlmgr.pl augment longdesc this list. Those are not included in the source/ tarball. For longdesc information on the 00texlive prefix see longdesc 00texlive.installation(.tlpsrc) -runfiles size=4977 +runfiles size=4980 .mkisofsrc autorun.inf texmf-dist/README @@ -1487,6 +1487,7 @@ runfiles size=4977 tlpkg/tlpsrc/eqnnumwarn.tlpsrc tlpkg/tlpsrc/eqparbox.tlpsrc tlpkg/tlpsrc/erdc.tlpsrc + tlpkg/tlpsrc/erewhon-math.tlpsrc tlpkg/tlpsrc/erewhon.tlpsrc tlpkg/tlpsrc/errata.tlpsrc tlpkg/tlpsrc/erw-l3.tlpsrc @@ -4086,7 +4087,7 @@ depend opt_w32_multi_user:1 name 00texlive.installer category TLCore -revision 52974 +revision 52996 shortdesc TeX Live standalone installer package longdesc This package defines the files to go into the installer longdesc archives (install-tl-unx.tar.gz, install-tl.zip) built by the @@ -33018,7 +33019,7 @@ catalogue-version 2.0.2 name biblatex category Package -revision 52004 +revision 53003 shortdesc Sophisticated Bibliographies in LaTeX relocated 1 longdesc BibLaTeX is a complete reimplementation of the bibliographic @@ -33052,10 +33053,15 @@ longdesc splitbib. The package strictly requires e-TeX BibTeX, bibtex8, longdesc or Biber etoolbox 2.1 or later logreq 1.0 or later keyval longdesc ifthen url Biber, babel / polyglossia, and csquotes 4.4 or longdesc later are strongly recommended. -containersize 215444 -containerchecksum 4858e37ba14539bee844d887df8339667a6fa9b4f763235d3bdb468897806ffec4718c3f47eefa0fd74b9fc6b658e17eb0229d739a785df0cc510257ee2a9b03 +depend pdftexcmds +depend etoolbox +depend kvoptions +depend logreq +depend url +containersize 215468 +containerchecksum 06010f87b5ee8bb07df5d576923b6272301e9c9f17aab9567f466c96feceb566ddf50fd113286f43486afaebeee47755536ea6216936b4daa464abf3225e5be5 doccontainersize 7172764 -doccontainerchecksum 95c6c9d4e7a5a392278c328ca2098008fb68c296067c4e4bc8cb7e283b584b4ce28aa17899f1ba502e0ffefc5101de0cc92fd915161d04896e78585ae256d106 +doccontainerchecksum 440ab30e74d65a8ceb63c323a9c5e90214de5a11815a89aad3b8345d91535a54a40ec85daeb732b261955cb7e61fce119e4db6aacf63c754d72bf37ebe71d670 docfiles size=4863 RELOC/doc/latex/biblatex/CHANGES.md details="Release notes for current version" language="en" RELOC/doc/latex/biblatex/README details="Readme" language="en" @@ -33485,7 +33491,7 @@ catalogue-version 9.2 name biblatex-apa6 category Package -revision 52992 +revision 53000 shortdesc BibLaTeX citation and reference style for APA 6th Edition relocated 1 longdesc This is a fairly complete BibLaTeX style (citations and @@ -33497,10 +33503,10 @@ longdesc which typesets every citation and reference example in the APA longdesc 6th edition style guide. This is a legacy style for 6th Edition longdesc documents. Please use the BibLaTeX-apa style package for the longdesc latest APA edition conformance. -containersize 21004 -containerchecksum 22541e964e0d2aa0ffbcfeb86230bb048c81eed1d5f5856472a98bfed5b2f00ea312d2e44706d992ecdba43132f7acd4ad489f28249e3bf609105afef5e3cab4 -doccontainersize 226436 -doccontainerchecksum 8bb1ce4e597f639bd0c417f728981a22cabe7e07c1e42aa0345a0b65a5d1ec28c6f5ba662213a9496acd87d564948972b30883403669a428b2ac7e3909ca53c9 +containersize 20988 +containerchecksum 83a7456021e207fb8616f4dc1010979e4e37097f05914fdb6bd631c02a75f28e5892cc028e0d05981841a419e74e4d02923b2b58be883855574acbef5973fa26 +doccontainersize 226776 +doccontainerchecksum 963ff8ca4c6e7c81e410af7d476936def4b19867b38f6740952581f36e87b52872dc3b90b731b8445ecd13696f9b383a48cd5d473754f6324f4bf13eed1d4d7d docfiles size=78 RELOC/doc/latex/biblatex-apa6/README details="Readme" RELOC/doc/latex/biblatex-apa6/biblatex-apa6-test-citations.bib @@ -33542,10 +33548,10 @@ catalogue-contact-bugs https://github.com/plk/biblatex-apa/issues catalogue-contact-home https://github.com/plk/biblatex-apa catalogue-contact-repository https://github.com/plk/biblatex-apa.git catalogue-ctan /macros/latex/contrib/biblatex-contrib/biblatex-apa6 -catalogue-date 2019-12-01 17:06:19 +0100 +catalogue-date 2019-12-02 19:29:35 +0100 catalogue-license lppl1.3c catalogue-topics apa biblatex psychology journalpub -catalogue-version 8.2 +catalogue-version 8.3 name biblatex-archaeology category Package @@ -61673,7 +61679,7 @@ containerchecksum 21aa181d7a3e8c16dbb30e12e30822d18db1386e088103a0987dc2a0a4d611 name collection-fontsextra category Collection -revision 52877 +revision 52997 shortdesc Additional fonts relocated 1 depend collection-basic @@ -61787,6 +61793,7 @@ depend elvish depend epigrafica depend epsdice depend erewhon +depend erewhon-math depend esrelation depend esstix depend esvect @@ -61971,8 +61978,8 @@ depend yfonts depend yfonts-t1 depend yinit-otf depend zlmtt -containersize 1756 -containerchecksum 2a5ea38326dd6fbf54398af678548ad3160314971e530f4923e13bd6539eac541a2bf9c7dc0034f9329a06749e329b4543e3bf78b2345466481cf7a1d2144f45 +containersize 1760 +containerchecksum fabed1fe4bfa37831d0bd5b9fbd9541b4e11168f88ba0d5d4a77c0d93f58eb4da5674da45128ba4727ec47c960b10ff1581e746b88da49cdd811f16c6165d644 name collection-fontsrecommended category Collection @@ -62907,7 +62914,7 @@ containerchecksum ed816cee1ca88a971b621d4a91ea7e6beebf8aacb684f8f000da8c4ce58e36 name collection-latex category Collection -revision 52914 +revision 53004 shortdesc LaTeX fundamental packages relocated 1 longdesc These packages are either mandated by the core LaTeX team, or @@ -62928,6 +62935,7 @@ depend geometry depend graphics depend graphics-cfg depend hyperref +depend kvoptions depend latex depend latex-bin depend latex-fonts @@ -62942,12 +62950,12 @@ depend psnfss depend pspicture depend tools depend url -containersize 536 -containerchecksum 71c1f76ba5c1cc512a4a33944cfc0538227a14ba45ea3b0d25ee705090f0c8693f486bb99fc2efe055d289a694669ac5d71d8cd33794609596deaa2ade808534 +containersize 540 +containerchecksum 5f8380ea8010edc47f2dc2ac12507ce441e33c1fff68139d92e49c605e8f26926ec47155049ed787997ebd70b254a5f76789e184478ae617aa362a8d0b927326 name collection-latexextra category Collection -revision 52986 +revision 53003 shortdesc LaTeX additional packages relocated 1 longdesc A very large collection of add-on packages for LaTeX. @@ -63575,7 +63583,6 @@ depend koma-script-sfs depend komacv depend komacv-rg depend ktv-texdata -depend kvoptions depend l3build depend labbook depend labels @@ -64235,12 +64242,12 @@ depend ziffer depend zref depend zwgetfdate depend zwpagelayout -containersize 5980 -containerchecksum 27a4c3a9c6e4553dbf2cf08db9765365d857d341ad84308dff43333ad0d28c819c187951090478198c75b2135794e9013f6fa1d6ec958315162109ad863d5b49 +containersize 5976 +containerchecksum f32a55d9aa877dfc4b54d7b00bd751c83b44da8e89451a251836a227aabcb47fc1f072bb229893473ac0712c6d660aacf4c1cd27806a68c8fa37f431ed87927a name collection-latexrecommended category Collection -revision 52909 +revision 53004 shortdesc LaTeX recommended packages relocated 1 longdesc A collection of recommended add-on packages for LaTeX which @@ -64314,7 +64321,7 @@ depend xkeyval depend xltxtra depend xunicode containersize 732 -containerchecksum d2a1d518b5cc71bdc3a938abf28218b5c32af2e051d8620a8291ebb245fa41939a022b4dbb5c2dc3d39f0247acfdc297b2f596c0b6e0ea3121a97d38bc8e8dc7 +containerchecksum 914c3832cd34d5037017c9b7b3fa45c408993dc32be2e983bec88491ca7c275c53af254203288664a6fc7cfa983f56ce1700328cc00ae6ea72de88010984337f name collection-luatex category Collection @@ -103352,6 +103359,34 @@ catalogue-license ofllppl1.3 catalogue-topics font font-body font-multilingual font-cyrillic font-proportional font-serif font-otf font-type1 font-supp font-t1enc catalogue-version 1.102 +name erewhon-math +category Package +revision 52997 +shortdesc Utopia based OpenType Math font +relocated 1 +longdesc Erewhon Math is an OpenType math font meant to be used together +longdesc with Erewhon text fonts in LuaLaTeX or XeLaTeX documents. Like +longdesc Fourier-GUTenberg, it is Utopia based and has been designed as +longdesc a replacement of Fourier-GUTenberg for Unicode engines. +containersize 182368 +containerchecksum cda9bfd392e39fd2301f72a64584be027d250f297921f330c577c7711b33b2eecdc720e452dfeda44ca2dd3451cdef3a50ba0239bfc18b6e3967df1375109b11 +doccontainersize 1464048 +doccontainerchecksum 00d22bf97ad8d54afce7ab98856ca5e47caf9e56634fbfa23dc41e9c185bae6ad75a8ffedfcc04a8cb70203cb509b04d95d5dad75cd40a1feb186204e8fc5ab2 +docfiles size=378 + RELOC/doc/fonts/erewhon-math/Erewhon-Math.ltx + RELOC/doc/fonts/erewhon-math/Erewhon-Math.pdf details="Package documentation" + RELOC/doc/fonts/erewhon-math/README.md details="Readme" + RELOC/doc/fonts/erewhon-math/unimath-erewhon.ltx + RELOC/doc/fonts/erewhon-math/unimath-erewhon.pdf details="List of glyphs" +runfiles size=72 + RELOC/fonts/opentype/public/erewhon-math/Erewhon-Math.otf + RELOC/tex/latex/erewhon-math/fourier-otf.sty +catalogue-ctan /fonts/erewhon-math +catalogue-date 2019-12-02 22:06:01 +0100 +catalogue-license ofllppl1.3 +catalogue-topics font font-proportional font-otf font-supp font-maths +catalogue-version 0.40 + name errata category Package revision 42428 @@ -130271,7 +130306,7 @@ catalogue-version 1.0b name hyperref category Package -revision 52739 +revision 53004 shortdesc Extensive support for hypertext in LaTeX relocated 1 longdesc The hyperref package is used to handle cross-referencing @@ -130285,10 +130320,11 @@ longdesc distributed with the backref and nameref packages, which make longdesc use of the facilities of hyperref. The package depends on the longdesc author's kvoptions, ltxcmds and refcount packages. depend url -containersize 108780 -containerchecksum e8226d21f9bb71c262aa18b89c2aba252282fc0ce075197384f45583886c378ed4a7b5dd51f3ae21786f32ccb1e6b6eb94b24b4b642d914cd2e16bf3f7c9cf64 -doccontainersize 3213736 -doccontainerchecksum 75a2115808c0f71c5da27141accd498c6efabd52db2a7aeaae2057b74695c47e6cde4e8a8d63392582363bfddccd0d51555c717c6104f1859cd20ece285b315b +depend stringenc +containersize 108788 +containerchecksum fe21577aedd87184b459fae696234ea46cbb686c6a5f2d6cea5571b5ac77eff271c3c7f5f063e4ca4aa03ec3838a1b64e29a2b9d172b3feee37e88707df4211b +doccontainersize 3213732 +doccontainerchecksum 078981c76f882f6f97185127b9ef8304b536f71bf2d89e62a5d2fe86f298f3f3d0bc207facf9dd27c5a3b2be71d5dd42caacf9944ae4527236754f760c95907b docfiles size=1026 RELOC/doc/latex/hyperref/ChangeLog.txt RELOC/doc/latex/hyperref/README.md details="Readme" @@ -130309,8 +130345,8 @@ docfiles size=1026 RELOC/doc/latex/hyperref/options.pdf details="Summary of options" language="en" RELOC/doc/latex/hyperref/paper.pdf details="Paper on tagging and navigation" language="en" RELOC/doc/latex/hyperref/slides.pdf -srccontainersize 448452 -srccontainerchecksum c9c4e882ce7271aeaf1a718902d8c323895910e8595143bb0522fea30b7c4825672df4de6dd96eb3b499689d392f8f5b836e8e40c01aba967548688ef02b06e4 +srccontainersize 448456 +srccontainerchecksum 37c18dd02f154242f62e831adafebcce83318c803dae49ed6e126ba940b4790a2ca73afc3e1bac65bf97dfe8b36256e9764dcace17f74a073e83a721155652fb srcfiles size=350 RELOC/source/latex/hyperref/backref.dtx RELOC/source/latex/hyperref/bmhydoc.sty @@ -170940,7 +170976,7 @@ catalogue-version 0.6 name logreq category Package -revision 19640 +revision 53003 shortdesc Support for automation of the LaTeX workflow relocated 1 longdesc The package helps to automate a typical LaTeX workflow that @@ -170955,10 +170991,11 @@ longdesc parsing the main log file. In sum, the package will do two longdesc things: enable package authors to use LaTeX commands to issue longdesc requests, collect all requests from all packages and write them longdesc to an external XML file at the end of the document. -containersize 3204 -containerchecksum 4c9e5f42869e690768515d49f62aa5ef7ff2d9de2f42bd1b574f95b7903958a0506d334300f89b38955fce0c47bc65e4c3e17cfd04c5b6df95406e6b78ecaa2e +depend etoolbox +containersize 3212 +containerchecksum df61c0c6c0b8520f5ec38780d8eb69cfd5fccd21f5120e48eee71e02b004d3da4cc9cb9371a36766852e3ca09a3db86655f1a2639a49741f00134cff1246acd2 doccontainersize 3792 -doccontainerchecksum 5addb710e2948e67f6369763a74d31bd3cb20d847df6cccef739fad3b34abea8663d00e7304cf47309baa74086a5cfd581bf46610ed3d7123ff74c426fec0131 +doccontainerchecksum fa9277da81dfb3aa235bd795780e8d3e629558fede90fa9234528b50a11507e59e65e49a0ca787af037186890392dfd45bf6de7bd859cec369626fb7d57b543f docfiles size=12 RELOC/doc/latex/logreq/README details="Readme" RELOC/doc/latex/logreq/examples/01-basic.run.xml @@ -175375,7 +175412,7 @@ catalogue-version 20191118.0 name luatexko category Package -revision 51803 +revision 53001 shortdesc Typeset Korean with Lua(La)TeX relocated 1 longdesc This is a Lua(La)TeX macro package that supports typesetting @@ -175386,16 +175423,16 @@ longdesc package rather than other Hangul macros operating on other longdesc engines. LuaTeX version 1.10+ and luaotfload version 2.96+ are longdesc required for this package to run. This package also requires longdesc the cjk-ko package for its full functionality. -containersize 20556 -containerchecksum ad454d899cc34304231476cc5742ebff3a16565737a2e447b25afd97b07b1108ff4da6bf369b2aabfb038a472bb7eb706425a8501141e1dbc7427d2384fdf565 -doccontainersize 297212 -doccontainerchecksum 42f54deadca1308c413be4ef2ab65c52b5739b1526bf9f436b3576089bd2a72a1e6461c8b30ea2da12a58c5160ea0b82304668f7897d11d7fa06dc00df4e3b60 -docfiles size=82 +containersize 21760 +containerchecksum c2bcb40046bbc084474a113ae95cfaf5972fe2dd757befd8faa8849acee03493d495f57f46e046120f72ddf200078872ddcabe16f960f31c9c94466b79b6dbe0 +doccontainersize 300508 +doccontainerchecksum e746e10f4998b72e1999f1096797bc476b24b1ca82ddb7c460cbf83d65a8c0a2735b87b576189835bd02660450317cf66bbf175b335a7dd4c80b4ae165f23b22 +docfiles size=83 RELOC/doc/luatex/luatexko/ChangeLog RELOC/doc/luatex/luatexko/README details="Readme" RELOC/doc/luatex/luatexko/luatexko-doc.pdf details="Package documentation" RELOC/doc/luatex/luatexko/luatexko-doc.tex -runfiles size=28 +runfiles size=29 RELOC/tex/luatex/luatexko/luatexko-normalize.lua RELOC/tex/luatex/luatexko/luatexko-uhc2utf8.lua RELOC/tex/luatex/luatexko/luatexko.lua @@ -175403,10 +175440,10 @@ runfiles size=28 catalogue-contact-bugs https://github.com/dohyunkim/luatexko/issues catalogue-contact-repository https://github.com/dohyunkim/luatexko catalogue-ctan /macros/luatex/generic/luatexko -catalogue-date 2019-08-01 11:06:04 +0200 +catalogue-date 2019-12-02 18:02:18 +0100 catalogue-license lppl1.3c catalogue-topics luatex korean -catalogue-version 2.4 +catalogue-version 2.5 name luatextra category Package @@ -199469,7 +199506,7 @@ catalogue-version 1.0 name newtx category Package -revision 52889 +revision 52998 shortdesc Alternative uses of the TX fonts, with improved metrics relocated 1 longdesc The bundle splits txfonts.sty (from the TX fonts distribution) @@ -199484,11 +199521,11 @@ longdesc garamondx package, thus offering a garamond-alike longdesc text-with-maths combination. depend kastrup execute addMap newtx.map -containersize 4534008 -containerchecksum 117c2246385fecf80a76816364c29dd397035f6c53f5ffec841332c9f948c8e3c59590d3152b019250d7329f8f5655148fe9198d78da2819a55351eda4a91efd -doccontainersize 839640 -doccontainerchecksum a6a10a7b5b158cac3bddad1206b24b2b10f1bf45b0aed8a9257323d245962a5a17aa65b5888f1a166bf681b8d3dce14094b15b4201e072d8bc415f6102ad5c09 -docfiles size=387 +containersize 4533088 +containerchecksum 6610aaa0323188f69d58e6c834426e337790bb7e028ccedd9b5955b29cdbeb9e4309000bb251b5edb945a9230620dac827d1c37c0f04be8d5b835ce9f67c2d74 +doccontainersize 839584 +doccontainerchecksum 3333c52d73c1b5f90c74ae41a04e819ce73c2be3b704a7f33e0f5e416934fefa3decdf27c20e63131ddc6632fae4379fe75250e6fff38960edc12cb26db2d5b4 +docfiles size=388 RELOC/doc/fonts/newtx/MANIFEST-newtx.txt RELOC/doc/fonts/newtx/README details="Readme" RELOC/doc/fonts/newtx/implementation.pdf details="Implementation notes" @@ -200248,10 +200285,10 @@ runfiles size=2491 RELOC/tex/latex/newtx/uzmnmia.fd catalogue-also minion2newtx catalogue-ctan /fonts/newtx -catalogue-date 2019-11-22 09:02:03 +0100 +catalogue-date 2019-12-01 22:53:15 +0100 catalogue-license lppl1.3 catalogue-topics font font-body font-maths font-serif font-proportional font-type1 font-otf font-supp font-t1enc -catalogue-version 1.611 +catalogue-version 1.612 name newtxsf category Package @@ -215283,7 +215320,7 @@ catalogue-version 0.98f name oberdiek category Package -revision 52987 +revision 53004 shortdesc A bundle of packages submitted by Heiko Oberdiek relocated 1 longdesc The bundle comprises packages to provide: accsupp: better @@ -215365,10 +215402,11 @@ longdesc Each of the packages is represented by two files, a .dtx longdesc (documented source) and a PDF file; the .ins file necessary for longdesc installation is extracted by running the .dtx file with Plain longdesc TeX. -containersize 115296 -containerchecksum c39e5c79e4e83239f1f221e281dbe6314590d17f4073e66e110bdd7aa946e337fcb50b6677a0c45c0e8a41f82b6983158588381c7954d1210baafc0a0fc23994 +depend kvoptions +containersize 115304 +containerchecksum 0d7e6b04b137436247b34f2f720379bd058b828e0bca55494df9ad2786ef09dc2302c86d68ac96c2c4b6e76741879d327e6c91a70dd5d384d7cbb8bc70cede84 doccontainersize 10519844 -doccontainerchecksum a0770423ecf8849f690e7e28e9f28672bb9ca23d0012d5e2a0ca9ae3244c0f7993b3e248fc59f454d470e8551eda167b983b8eec45ad4cad39a99c14c0551334 +doccontainerchecksum 630a55e66b1e32f4dd00e007311dc27cfff772a6e85da7b89db3dbf20a35c5472d9a54d98102f33d0ca792c0a29d8b6acbe4136e3b4a1e19e3ca5e7b6e9e3009 docfiles size=3243 RELOC/doc/latex/oberdiek/accsupp-example1.tex RELOC/doc/latex/oberdiek/accsupp-example2.tex @@ -215474,7 +215512,7 @@ docfiles size=3243 RELOC/doc/latex/oberdiek/uniquecounter-example.tex RELOC/doc/latex/oberdiek/uniquecounter.pdf srccontainersize 325872 -srccontainerchecksum b63e7ad6d734b148b4ac3d40afbd8a92f8eb499a02b498d0011c8c76491c5d59ce84c9a6cd96fd3f34754980c8370fa8e8af36703d33e8ab09fcaf525eb07d5c +srccontainerchecksum ac86d06ffdaa9d74dd7a77f89e15534c244620839c8aac2b5b41d49307ef98dd520c0cca56ff59b6e5a414d6c76f193ec3161bb14018d4ffbdf9c4783539628d srcfiles size=776 RELOC/source/latex/oberdiek/README.txt RELOC/source/latex/oberdiek/accsupp.dtx @@ -228207,7 +228245,7 @@ catalogue-version 1.2 name pinoutikz category Package -revision 52946 +revision 52999 shortdesc Draw chip pinouts with TikZ relocated 1 longdesc The package provides a set of macros for typesetting electronic @@ -228215,10 +228253,10 @@ longdesc chip pinouts. It is designed as a tool that is easy to use, longdesc with a lean syntax, native to LaTeX, and directly supporting longdesc PDF output format. It has therefore been based on the very longdesc impressive TikZ package. -containersize 2436 -containerchecksum 7663a2f4bd2bfeda75cfbe8dc59b268345d67061886da6b3f5157bbc6cd336afc8b2cc463d51497544a757235b18fffb642b9fd60f9cff525617a409fda6fe76 -doccontainersize 69308 -doccontainerchecksum 55e191c8f24feb7f2b0e995848d042c3e499b48761f6f2e4e617c26a4c3218aa62302acea099dd1eac584090dfde60f53ded0f8add57fa64e899dfdd11aef827 +containersize 2500 +containerchecksum e59a8a5c1d40fe81ffefb91308adb73e270ea1f7fe6d6e3cccc5a950b5acec6ef2a50c20430365e24dee5fa6459dc78325c18cc3ff150fcfaf79538bae085f00 +doccontainersize 69492 +doccontainerchecksum ec0f726118a9a05aea49c498e60932492308d3f9fce70b2ef458b52a26465659175149da3a54a2e1ff76d4209f637a11cf8956c22ee9839a2540e1bcece023d9 docfiles size=21 RELOC/doc/latex/pinoutikz/README.md RELOC/doc/latex/pinoutikz/pinoutikz_doc_en.pdf details="Package documentation" @@ -228226,10 +228264,10 @@ docfiles size=21 runfiles size=2 RELOC/tex/latex/pinoutikz/pinoutikz.sty catalogue-ctan /graphics/pgf/contrib/pinoutikz -catalogue-date 2019-11-27 19:25:02 +0100 +catalogue-date 2019-12-02 19:59:55 +0100 catalogue-license lppl1.3c catalogue-topics graphics pgf-tikz electronic -catalogue-version 1.1.0 +catalogue-version 1.1.1 name pitex category Package @@ -283442,15 +283480,15 @@ docfiles size=572 name texlive-docindex category TLCore -revision 52989 +revision 52996 shortdesc top-level TeX Live doc.html, etc. longdesc These files are regenerated as needed, which is often, so we longdesc make them a separate package. See the tl-update-auto script longdesc for the process. containersize 109880 -containerchecksum 41e30bd7c38b675f29745ffd3f635dca26c30cea5577251e7067d88a1556dc98ac5eccfc3dab714ae585b2bbc801d0aee1dc1255fc7b647898c73476a659d4f3 -doccontainersize 156064 -doccontainerchecksum 1248bb1c3d7953749edcb234d23193f82beeecab5c8d42563f930c97b2f281b54c6a8cc91687e1740291c12ca8e92894caec3ece9d90e230373ab9bb67511a55 +containerchecksum 96aa5ea54e4a5b071bddd65585acd19a12b45f77a50f96716d75ea36c89eb6950523a716526e03786cef55857fadef2eaa5742114669b83c9194235ee9021ef3 +doccontainersize 156072 +doccontainerchecksum ec30b34c1766c59d0358c5aae528000f415300896a21e5c1c31376e62a5404aee6ff6c5ed43fa29ebb848327842559a2d4af3f2e609554e37b199a758ecb30b7 docfiles size=306 doc.html runfiles size=270 @@ -283667,17 +283705,17 @@ docfiles size=503 name texlive-scripts category TLCore -revision 52974 +revision 52996 shortdesc TeX Live infrastructure programs longdesc Includes install-tl, tl-portable, rungs, etc.; not needed for longdesc tlmgr to run but still ours. Not included in tlcritical. depend texlive.infra depend texlive-scripts.ARCH postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat -containersize 85456 -containerchecksum 02f2137e1469503f0efddc0f2012bbd04d33dc24dd00567cf4cdd81d383261aeff36ee1cf106f5b979c261dce66892bed6a3c08eacfc96a3c02d7f48af56241f +containersize 85432 +containerchecksum 9c08859ba1d84fb3db3ea2f6a3c8dcce4ff240b401043642404ca61d0521e069b4d308c12828381f358945d873c22c1edd01e4db93fb2eb9e8d446a3d5062a8f doccontainersize 51204 -doccontainerchecksum 5daee7d1ff4a49b3406a7dd7d3f9cad6ab015e5a070920491a29367d350567c8544a6759e788c9e153f497c8379f0aeb70b3d77711ee17ca4ec9255952b3e52d +doccontainerchecksum dce84183936545cb64f8a770b4a19d40d179d2f84cabf6d38a2dab5b49f7b40454ec90ed80795da2989b472a47b45d44c1006e781efe1a71014e3aec732d1cdd docfiles size=20 texmf-dist/doc/man/man1/install-tl.1 texmf-dist/doc/man/man1/install-tl.man1.pdf @@ -314935,22 +314973,22 @@ catalogue-topics font-supp xetex name xetexko category Package -revision 48378 +revision 53002 shortdesc Typeset Korean with Xe(La)TeX relocated 1 longdesc The package supports typesetting Korean documents (including longdesc old Hangul texts), using XeTeX. It enhances the existing longdesc support, in XeTeX, providing features that provide quality -longdesc typesetting. This package requires cjk-ko package for its full -longdesc functionality. -containersize 57240 -containerchecksum 20c52e861ec9f38df4a7ca0402ca6817e80ee3788f40fdf9ac24c61aca3d38b02d6f6d3cca1c8c547088c1ba9a6b55b5b5a75be5dc98e707b33cb2ed900f968a -doccontainersize 231052 -doccontainerchecksum 820c0de971caf668a9fbe01613a0b82ae1620e3199593a29bf2e7992607a27052083b33c1359019c8f026b4295bebf01ddcf840ab8f4eb3ac5878bff97b8e578 -docfiles size=65 +longdesc typesetting. This package requires the cjk-ko package for its +longdesc full functionality. +containersize 57320 +containerchecksum 3ae003d575d77e92b0de276865f654f9482101b6810342370e3b09020636b08a9fd02b2045fc290937f35b4d721b23924d602f74b7ea63834216f2102636fd92 +doccontainersize 236080 +doccontainerchecksum cb9ed010e314eff46a5f2edb7afd64c1629d85c6dc202a3cf9376fdc42bc85e9c22d7d38b66f07476e9de0b7ee7f4a605d8cb26e8bdf442db78161c9c592b673 +docfiles size=67 RELOC/doc/xetex/xetexko/ChangeLog RELOC/doc/xetex/xetexko/README details="Readme" - RELOC/doc/xetex/xetexko/xetexko-doc.pdf details="Package documentation" + RELOC/doc/xetex/xetexko/xetexko-doc.pdf details="Package documentation" language="ko" RELOC/doc/xetex/xetexko/xetexko-doc.tex runfiles size=78 RELOC/tex/xetex/xetexko/hanja_hangul.tab @@ -314964,10 +315002,10 @@ runfiles size=78 RELOC/tex/xetex/xetexko/xetexko.sty catalogue-contact-repository https://github.com/dohyunkim/xetexko catalogue-ctan /macros/xetex/generic/xetexko -catalogue-date 2018-08-08 09:37:17 +0200 -catalogue-license lppl1.3 +catalogue-date 2019-12-02 18:50:13 +0100 +catalogue-license lppl1.3c catalogue-topics korean xetex -catalogue-version 2.21 +catalogue-version 2.22 name xetexref category Package diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 index 63eb7d9945..bc1ebbb7a0 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 @@ -1 +1 @@ -f82483789f7eb0a44fcdd3a900b1ee4d texlive.tlpdb +86008dacf8cabb23be4fa8cbaad5b6ac texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 index 313d8c4dce..16471e83ae 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 @@ -1 +1 @@ -2eb8934cce589f1db7e0f62ed710e8ca2560659e61e780d7f5de01f264d15fa4244663f1d15297c8d855dade22a123b6f4be2d4feb2f5ade44284fa1e16534e5 texlive.tlpdb +2b44ada5c67a520ce8c7c07f7e1d96c750f3ca077344215c6d7eff34968acef9e64d4a707167d1eeefd9d614da98c02b47222cab237fc645f7d519753685b819 texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc index 05e6feaf0f..e677270b76 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc @@ -1,10 +1,10 @@ -----BEGIN PGP SIGNATURE----- -iQEcBAEBCgAGBQJd5GGvAAoJEEzhh34ZQ4xwnzMIAIxicmBxcR4/dVuuqsmWVbfB -Jq1kUCgFV7qyU0cyBXVhOIxLs1pGh9kLXkSoGRy2oQESjgIXB5G0jhLsJZBuf2CS -t+UDWcDOPMBs56xvbygCcPxVIB5RGBGGBb8VzIsdr/xxXt6aCHKyr1nZpfFBYoh9 -d84kEr404ybkUSXSQvnOZIV/88DYCMmTDLRww+J7t09SO5oinD5GwEuS0v0eNZth -rkxzYoSiBVBxQSM9sZD7sOigEBYCIlQjYyuwr9bP4ZlsvsHcQw77PKHqOfym2wIt -IMUCSgbnsl6piUFbzaPCbAF9k8WTAls6O7Y5RTsps+3Y7j4BVKZJOe8mmK1nZd0= -=6D5o +iQEcBAEBCgAGBQJd5bJ5AAoJEEzhh34ZQ4xwsUgIAJ4wWuK7hcwguNtkqdMoIxFZ +oK/LJsmEkooCRqDbow5t9xJ352aY8vh5DJGIc6OL4kwbtxjTm3zX2Xw9g6o9+abb +2r1SMw5qQZm8ddfa3Xx1hx0f1Fl7C25t1/JNPhLRkagD8q/wKq//oFvh8dixahD6 +KvOVXUzs9GhHbya0fVS+lBWv5jajZsKqLx6Oc0/qC924oceT4wqNIUppCXujxgur +BzN5byJIFZ9Av81D5GZ5RzJTpFaOqYtcaI6anMCbHhWwzg/8PA3yA8a8Nn2OfhWq +XhECAvifYipdF1M/Zuy3CmQVLct5bl1EbMdR03x3tqsWVyYSXFAnoPjBnGBWkV8= +=b4QF -----END PGP SIGNATURE----- diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz index 6cd1075ad2..c6be8d0290 100644 Binary files a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz and b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz differ diff --git a/systems/win32/miktex/tm/packages/files.csv.lzma b/systems/win32/miktex/tm/packages/files.csv.lzma index 09fb97fd47..64f3636656 100644 Binary files a/systems/win32/miktex/tm/packages/files.csv.lzma and b/systems/win32/miktex/tm/packages/files.csv.lzma differ diff --git a/systems/win32/miktex/tm/packages/next/files.csv.lzma b/systems/win32/miktex/tm/packages/next/files.csv.lzma index a7e7093812..a9482567ae 100644 Binary files a/systems/win32/miktex/tm/packages/next/files.csv.lzma and b/systems/win32/miktex/tm/packages/next/files.csv.lzma differ diff --git a/systems/win32/miktex/tm/packages/next/pr.ini b/systems/win32/miktex/tm/packages/next/pr.ini index 68136cef3c..db102f2cff 100644 --- a/systems/win32/miktex/tm/packages/next/pr.ini +++ b/systems/win32/miktex/tm/packages/next/pr.ini @@ -2,9 +2,9 @@ [repository] -date=1575321422 +date=1575407786 lastupd=miktex-arctrl-bin-2.9 miktex-arctrl-bin-x64-2.9 miktex-asymptote-bin-2.9 miktex-asymptote-bin-x64-2.9 miktex-autosp-bin-2.9 miktex-autosp-bin-x64-2.9 miktex-axohelp-bin-2.9 miktex-axohelp-bin-x64-2.9 miktex-bibarts-bin-2.9 miktex-bibarts-bin-x64-2.9 miktex-bibtex-bin-2.9 miktex-bibtex-bin-x64-2.9 miktex-bibtex8bit-bin-2.9 miktex-bibtex8bit-bin-x64-2.9 miktex-bzip2-bin-2.9 miktex-bzip2-bin-x64-2.9 miktex-cairo-bin-2.9 miktex-cairo-bin-x64-2.9 miktex-chktex-bin-2.9 miktex-chktex-bin-x64-2.9 -lstdigest=eb3130ed0bf0cc5a573fe74b7eaf9e22 +lstdigest=ba90e8f21f7fe488550a0c5262eb7e57 numpkg=3788 relstate=next -version=7275 +version=7276 diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini index 15ba635e4d..9f51a94838 100644 --- a/systems/win32/miktex/tm/packages/pr.ini +++ b/systems/win32/miktex/tm/packages/pr.ini @@ -2,9 +2,9 @@ [repository] -date=1575321109 -lastupd=barracuda biblatex-apa6 circuitikz erewhon-math fourier hvqrurl newtx tracklang biblatex-ext curve2e epstopdf-pkg kvoptions stringenc transparent biblatex-apa inputenx luacolor magicnum miktex-misc oberdiek -lstdigest=cad34b5880185bcaf745eedb87e31199 +date=1575407506 +lastupd=biblatex-apa6 csquotes graphicxsp luatexko pinoutikz xetexko barracuda circuitikz erewhon-math fourier hvqrurl newtx tracklang biblatex-ext curve2e epstopdf-pkg kvoptions stringenc transparent biblatex-apa +lstdigest=aeed444255aa0541bea413d74e38788f numpkg=3788 relstate=stable -version=7275 +version=7276 diff --git a/systems/win32/w32tex/ChangeLog b/systems/win32/w32tex/ChangeLog index d798d72eb6..cbd044e618 100644 --- a/systems/win32/w32tex/ChangeLog +++ b/systems/win32/w32tex/ChangeLog @@ -1,5 +1,13 @@ W32TeX (x86 & x64) ChangeLog +[2019/12/02] +(01) biblatex-biber.tar.xz + Update biblatex-apa6. +(02) newtxpx-boondoxfonts.tar.xz + Update newtx fonts. +(03) pgfcontrib.tar.xz + Update circuitikz. + [2019/12/01] (01) biblatex-biber.tar.xz Update biblatex-ext. diff --git a/timestamp b/timestamp index f47c6a611c..7dfadb6d52 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: -2019-12-03-02-02 +2019-12-04-02-02 -- cgit v1.2.3