From dff9a257a451ee8437fa2f02ebac9bddd6bb8301 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Thu, 21 May 2020 03:03:16 +0000 Subject: CTAN sync 202005210303 --- FILES.byname | 649 ++- FILES.byname.gz | Bin 2223017 -> 2222985 bytes FILES.last07days | 544 +- graphics/euflag/MANIFEST | 5 +- graphics/euflag/README.md | 218 +- graphics/euflag/VERSION | 2 +- graphics/euflag/classpack.sty | 112 - graphics/euflag/euflag.dtx | 581 ++- graphics/euflag/euflag.ins | 4 +- graphics/euflag/euflag.pdf | Bin 102108 -> 106973 bytes language/japanese/ptex2pdf/README.md | 24 +- language/japanese/ptex2pdf/ptex2pdf.lua | 50 +- macros/latex/contrib/toptesi/README.txt | 76 +- .../latex/contrib/toptesi/Toptesi-con-topfront.pdf | Bin 372649 -> 374469 bytes .../latex/contrib/toptesi/Toptesi-con-topfront.tex | 18 +- macros/latex/contrib/toptesi/logoguittondo.pdf | Bin 0 -> 23298 bytes macros/latex/contrib/toptesi/topfront-example.pdf | Bin 152325 -> 152318 bytes macros/latex/contrib/toptesi/topfront-example.tex | 2 +- .../toptesi/toptesi-example-con-frontespizio.pdf | Bin 373989 -> 373965 bytes .../contrib/toptesi/toptesi-example-dottorale.pdf | Bin 375589 -> 375622 bytes .../contrib/toptesi/toptesi-example-luatex.pdf | Bin 57134 -> 57145 bytes .../contrib/toptesi/toptesi-example-magistrale.pdf | Bin 400056 -> 400093 bytes .../latex/contrib/toptesi/toptesi-example-sss.pdf | Bin 192023 -> 252424 bytes .../latex/contrib/toptesi/toptesi-example-sss.tex | 6 +- .../contrib/toptesi/toptesi-example-triennale.pdf | Bin 375525 -> 375497 bytes .../contrib/toptesi/toptesi-example-xetex.pdf | Bin 45619 -> 48458 bytes .../contrib/toptesi/toptesi-example-xetex.tex | 56 +- macros/latex/contrib/toptesi/toptesi-example.pdf | Bin 355232 -> 354671 bytes macros/latex/contrib/toptesi/toptesi-example.tex | 22 +- macros/latex/contrib/toptesi/toptesi-it.pdf | Bin 1798820 -> 1814675 bytes macros/latex/contrib/toptesi/toptesi-it.tex | 662 +-- macros/latex/contrib/toptesi/toptesi.dtx | 1565 +++--- macros/latex/contrib/toptesi/toptesi.pdf | Bin 957031 -> 969446 bytes .../latex/contrib/toptesi/veraPDFnoconformance.pdf | Bin 0 -> 89699 bytes macros/luatex/latex/cloze/cloze.dtx | 853 +++- macros/luatex/latex/cloze/cloze.pdf | Bin 236534 -> 257712 bytes .../xetex/latex/xepersian-hm/xepersian-hm-doc.ltx | 6 +- .../xetex/latex/xepersian-hm/xepersian-hm-doc.pdf | Bin 264881 -> 264837 bytes macros/xetex/latex/xepersian-hm/xepersian-hm.dtx | 46 +- macros/xetex/latex/xepersian-hm/xepersian-hm.pdf | Bin 57525 -> 58016 bytes support/classpack/MANIFEST | 17 +- support/classpack/README | 129 - support/classpack/README.md | 206 + support/classpack/VERSION | 1 + support/classpack/classpack.dtx | 3589 ++++--------- support/classpack/classpack.ins | 36 +- support/classpack/classpack.pdf | Bin 310003 -> 148774 bytes support/classpack/classpack.sty | 46 - support/classpack/db2bibtex.xsl | 592 --- support/classpack/db2dtx.xsl | 5378 -------------------- support/classpack/db2plaintext.xsl | 513 -- support/classpack/decommentbbl.awk | 37 - support/classpack/doctexbook.dtd | 63 - support/classpack/lppl.xml | 541 -- support/classpack/prepost.xml | 648 --- support/classpack/readme.xml | 166 - systems/texlive/tlnet/tlpkg/texlive.tlpdb | 131 +- 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 2202288 -> 2202452 bytes systems/win32/miktex/tm/packages/files.csv.lzma | Bin 536395 -> 535403 bytes .../win32/miktex/tm/packages/next/files.csv.lzma | Bin 535958 -> 534816 bytes systems/win32/miktex/tm/packages/next/pr.ini | 10 +- systems/win32/miktex/tm/packages/pr.ini | 12 +- systems/win32/w32tex/ChangeLog | 16 + timestamp | 2 +- 67 files changed, 4513 insertions(+), 13139 deletions(-) delete mode 100644 graphics/euflag/classpack.sty create mode 100644 macros/latex/contrib/toptesi/logoguittondo.pdf create mode 100644 macros/latex/contrib/toptesi/veraPDFnoconformance.pdf delete mode 100644 support/classpack/README create mode 100644 support/classpack/README.md create mode 100644 support/classpack/VERSION delete mode 100644 support/classpack/classpack.sty delete mode 100644 support/classpack/db2bibtex.xsl delete mode 100644 support/classpack/db2dtx.xsl delete mode 100644 support/classpack/db2plaintext.xsl delete mode 100644 support/classpack/decommentbbl.awk delete mode 100644 support/classpack/doctexbook.dtd delete mode 100644 support/classpack/lppl.xml delete mode 100644 support/classpack/prepost.xml delete mode 100644 support/classpack/readme.xml diff --git a/FILES.byname b/FILES.byname index 92e8040557..a7341bc8c4 100644 --- a/FILES.byname +++ b/FILES.byname @@ -5001,7 +5001,7 @@ 1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp 1990/10/02 | 812 | dviware/vutex/vaxvms.ins 1990/10/02 | 127576 | dviware/vutex/vutex.web -2020/05/19 | 134972 | FILES.last07days +2020/05/20 | 130813 | 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 @@ -130776,14 +130776,13 @@ 2007/09/16 | 1747 | graphics/epix/verbatim.h 2007/10/03 | 6 | graphics/epix/VERSION 2007/10/05 | 1316882 | graphics/epix.zip -2019/02/03 | 3567 | graphics/euflag/classpack.sty -2019/02/03 | 56478 | graphics/euflag/euflag.dtx -2019/02/03 | 2179 | graphics/euflag/euflag.ins -2019/02/03 | 102108 | graphics/euflag/euflag.pdf -2019/02/03 | 52 | graphics/euflag/MANIFEST -2019/02/03 | 6337 | graphics/euflag/README.md -2019/02/03 | 58 | graphics/euflag/VERSION -2019/02/03 | 120168 | graphics/euflag.zip +2020/05/20 | 60334 | graphics/euflag/euflag.dtx +2020/05/20 | 2183 | graphics/euflag/euflag.ins +2020/05/20 | 106973 | graphics/euflag/euflag.pdf +2020/05/20 | 60 | graphics/euflag/MANIFEST +2020/05/20 | 7369 | graphics/euflag/README.md +2020/05/20 | 41 | graphics/euflag/VERSION +2020/05/20 | 124484 | graphics/euflag.zip 1994/06/26 | 29636 | graphics/fig2eng/fig2eng.c 1994/06/27 | 97 | graphics/fig2eng/Makefile 1994/06/27 | 1008 | graphics/fig2eng/README @@ -171899,10 +171898,10 @@ 2020/02/25 | 2459 | language/japanese/plautopatch/pxtextpos.sty 2020/02/25 | 3503 | language/japanese/plautopatch/README.md 2020/02/25 | 150225 | language/japanese/plautopatch.zip -2020/03/07 | 18092 | language/japanese/ptex2pdf/COPYING -2020/03/07 | 13460 | language/japanese/ptex2pdf/ptex2pdf.lua -2020/03/07 | 6588 | language/japanese/ptex2pdf/README.md -2020/03/07 | 14220 | language/japanese/ptex2pdf.zip +2020/05/20 | 18092 | language/japanese/ptex2pdf/COPYING +2020/05/20 | 14066 | language/japanese/ptex2pdf/ptex2pdf.lua +2020/05/20 | 6622 | language/japanese/ptex2pdf/README.md +2020/05/20 | 14356 | language/japanese/ptex2pdf.zip 2020/02/06 | 1298 | language/japanese/ptex-base/ascii-jplain.tex 2020/02/06 | 3836 | language/japanese/ptex-base/eptexdefs.lib 2020/02/06 | 69 | language/japanese/ptex-base/eptex.ini @@ -205489,46 +205488,48 @@ 2017/09/19 | 194384 | macros/latex/contrib/toptesi/Frontespizio-sss.pdf 2019/05/01 | 13394 | macros/latex/contrib/toptesi/GuITlogo.pdf 2019/05/01 | 4594 | macros/latex/contrib/toptesi/logodue.pdf +2019/05/02 | 23298 | macros/latex/contrib/toptesi/logoguittondo.pdf 2019/05/01 | 4595 | macros/latex/contrib/toptesi/logoquattro.pdf 2019/05/01 | 4595 | macros/latex/contrib/toptesi/logotre.pdf 2019/05/01 | 4595 | macros/latex/contrib/toptesi/logouno.pdf 2018/04/30 | 23437 | macros/latex/contrib/toptesi/lppl.tex 2019/05/01 | 12721 | macros/latex/contrib/toptesi/MPlogo.pdf -2019/07/26 | 8136 | macros/latex/contrib/toptesi/README.txt +2020/05/20 | 9174 | macros/latex/contrib/toptesi/README.txt 2017/10/13 | 27001 | macros/latex/contrib/toptesi/TITDocScCropped.pdf 2017/10/13 | 24383 | macros/latex/contrib/toptesi/TITlogoCropped.pdf -2019/07/17 | 152325 | macros/latex/contrib/toptesi/topfront-example.pdf -2019/07/17 | 4539 | macros/latex/contrib/toptesi/topfront-example.tex -2018/10/31 | 372649 | macros/latex/contrib/toptesi/Toptesi-con-topfront.pdf -2017/10/15 | 14992 | macros/latex/contrib/toptesi/Toptesi-con-topfront.tex -2019/07/26 | 393856 | macros/latex/contrib/toptesi/toptesi.dtx +2020/04/21 | 152318 | macros/latex/contrib/toptesi/topfront-example.pdf +2020/04/21 | 4537 | macros/latex/contrib/toptesi/topfront-example.tex +2020/04/21 | 374469 | macros/latex/contrib/toptesi/Toptesi-con-topfront.pdf +2019/07/17 | 15299 | macros/latex/contrib/toptesi/Toptesi-con-topfront.tex +2020/05/15 | 405918 | macros/latex/contrib/toptesi/toptesi.dtx 2013/09/20 | 3843 | macros/latex/contrib/toptesi/toptesi-example.cfg -2019/07/17 | 373989 | macros/latex/contrib/toptesi/toptesi-example-con-frontespizio.pdf -2019/07/17 | 13392 | macros/latex/contrib/toptesi/toptesi-example-con-frontespizio.tex -2019/07/17 | 375589 | macros/latex/contrib/toptesi/toptesi-example-dottorale.pdf -2019/07/17 | 14250 | macros/latex/contrib/toptesi/toptesi-example-dottorale.tex -2019/07/17 | 57134 | macros/latex/contrib/toptesi/toptesi-example-luatex.pdf +2020/04/21 | 373965 | macros/latex/contrib/toptesi/toptesi-example-con-frontespizio.pdf +2020/04/21 | 13392 | macros/latex/contrib/toptesi/toptesi-example-con-frontespizio.tex +2020/04/21 | 375622 | macros/latex/contrib/toptesi/toptesi-example-dottorale.pdf +2020/04/21 | 14250 | macros/latex/contrib/toptesi/toptesi-example-dottorale.tex +2020/04/21 | 57145 | macros/latex/contrib/toptesi/toptesi-example-luatex.pdf 2019/07/17 | 13957 | macros/latex/contrib/toptesi/toptesi-example-luatex.tex -2019/07/17 | 400056 | macros/latex/contrib/toptesi/toptesi-example-magistrale.pdf -2019/07/17 | 15516 | macros/latex/contrib/toptesi/toptesi-example-magistrale.tex -2019/07/17 | 355232 | macros/latex/contrib/toptesi/toptesi-example.pdf -2019/07/17 | 192023 | macros/latex/contrib/toptesi/toptesi-example-sss.pdf -2019/07/17 | 12059 | macros/latex/contrib/toptesi/toptesi-example-sss.tex -2019/07/17 | 17674 | macros/latex/contrib/toptesi/toptesi-example.tex +2020/04/21 | 400093 | macros/latex/contrib/toptesi/toptesi-example-magistrale.pdf +2020/04/21 | 15516 | macros/latex/contrib/toptesi/toptesi-example-magistrale.tex +2020/04/21 | 354671 | macros/latex/contrib/toptesi/toptesi-example.pdf +2020/04/21 | 252424 | macros/latex/contrib/toptesi/toptesi-example-sss.pdf +2020/05/19 | 12076 | macros/latex/contrib/toptesi/toptesi-example-sss.tex +2020/04/21 | 17901 | macros/latex/contrib/toptesi/toptesi-example.tex 2018/10/31 | 393825 | macros/latex/contrib/toptesi/Toptesi-example-topfront.pdf 2017/09/17 | 14691 | macros/latex/contrib/toptesi/Toptesi-example-topfront.tex -2019/07/17 | 375525 | macros/latex/contrib/toptesi/toptesi-example-triennale.pdf +2020/04/21 | 375497 | macros/latex/contrib/toptesi/toptesi-example-triennale.pdf 2019/07/17 | 14191 | macros/latex/contrib/toptesi/toptesi-example-triennale.tex -2018/10/31 | 45619 | macros/latex/contrib/toptesi/toptesi-example-xetex.pdf -2018/10/31 | 14187 | macros/latex/contrib/toptesi/toptesi-example-xetex.tex -2019/07/18 | 1798820 | macros/latex/contrib/toptesi/toptesi-it.pdf -2019/07/26 | 427713 | macros/latex/contrib/toptesi/toptesi-it.tex -2019/07/26 | 957031 | macros/latex/contrib/toptesi/toptesi.pdf -2019/07/19 | 1569457 | macros/latex/contrib/toptesi/toptesi-scudo-example.zip +2020/04/21 | 48458 | macros/latex/contrib/toptesi/toptesi-example-xetex.pdf +2020/04/21 | 14406 | macros/latex/contrib/toptesi/toptesi-example-xetex.tex +2020/05/19 | 1814675 | macros/latex/contrib/toptesi/toptesi-it.pdf +2020/05/14 | 431926 | macros/latex/contrib/toptesi/toptesi-it.tex +2020/05/15 | 969446 | macros/latex/contrib/toptesi/toptesi.pdf +2020/05/15 | 1568520 | macros/latex/contrib/toptesi/toptesi-scudo-example.zip 2019/05/01 | 128255 | macros/latex/contrib/toptesi/veraPDFconformance.jpg 2019/05/01 | 119774 | macros/latex/contrib/toptesi/VeraPDFiniziale.jpg 2019/05/01 | 127008 | macros/latex/contrib/toptesi/veraPDFnoconformance.jpg -2019/07/26 | 8213217 | macros/latex/contrib/toptesi.zip +2018/05/13 | 89699 | macros/latex/contrib/toptesi/veraPDFnoconformance.pdf +2020/05/20 | 8394106 | macros/latex/contrib/toptesi.zip 2011/01/25 | 1613 | macros/latex/contrib/totcount/README 2011/01/25 | 20761 | macros/latex/contrib/totcount/totcount.dtx 2011/01/25 | 1456 | macros/latex/contrib/totcount/totcount.ins @@ -209496,11 +209497,11 @@ 2019/06/18 | 594 | macros/luatex/latex/bezierplot/bezierplot.sty 2019/06/18 | 741 | macros/luatex/latex/bezierplot/README 2019/06/18 | 261629 | macros/luatex/latex/bezierplot.zip -2016/06/23 | 63776 | macros/luatex/latex/cloze/cloze.dtx -2016/06/23 | 2244 | macros/luatex/latex/cloze/cloze.ins -2016/06/23 | 236534 | macros/luatex/latex/cloze/cloze.pdf -2016/06/23 | 1349 | macros/luatex/latex/cloze/README -2016/06/23 | 237650 | macros/luatex/latex/cloze.zip +2020/05/20 | 76926 | macros/luatex/latex/cloze/cloze.dtx +2020/05/20 | 2244 | macros/luatex/latex/cloze/cloze.ins +2020/05/20 | 257712 | macros/luatex/latex/cloze/cloze.pdf +2020/05/20 | 1349 | macros/luatex/latex/cloze/README +2020/05/20 | 259293 | macros/luatex/latex/cloze.zip 2019/06/08 | 78828 | macros/luatex/latex/combofont/combofont.pdf 2019/06/08 | 3281 | macros/luatex/latex/combofont/combofont.sty 2019/06/08 | 15301 | macros/luatex/latex/combofont/combofont-test-fira-math.pdf @@ -211257,14 +211258,14 @@ 2007/07/13 | 9394 | macros/omega/latex/contrib/tamil-omega/yudit/Tamil2.my 2007/07/13 | 11462 | macros/omega/latex/contrib/tamil-omega/yudit/yudit.properties 2007/12/12 | 900761 | macros/omega/latex/contrib/tamil-omega.zip -2020/05/12 | 732 | macros/pdftex/mptopdf/doc/context/scripts/mkii/mptopdf.man -2020/05/12 | 4557 | macros/pdftex/mptopdf/scripts/context/perl/mptopdf.pl -2020/05/12 | 4608 | macros/pdftex/mptopdf/scripts/context/stubs/mswin/mptopdf.exe -2020/05/12 | 21474 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-mis.mkii -2020/05/12 | 42831 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-mpe.mkii -2020/05/12 | 71627 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-pdf.mkii -2020/05/12 | 7856 | macros/pdftex/mptopdf/tex/context/base/mkii/syst-tex.mkii -2020/05/12 | 5322 | macros/pdftex/mptopdf/tex/generic/context/mptopdf/mptopdf.tex +2020/05/18 | 732 | macros/pdftex/mptopdf/doc/context/scripts/mkii/mptopdf.man +2020/05/18 | 4557 | macros/pdftex/mptopdf/scripts/context/perl/mptopdf.pl +2020/05/18 | 4608 | macros/pdftex/mptopdf/scripts/context/stubs/mswin/mptopdf.exe +2020/05/18 | 21474 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-mis.mkii +2020/05/18 | 42831 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-mpe.mkii +2020/05/18 | 71627 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-pdf.mkii +2020/05/18 | 7856 | macros/pdftex/mptopdf/tex/context/base/mkii/syst-tex.mkii +2020/05/18 | 5322 | macros/pdftex/mptopdf/tex/generic/context/mptopdf/mptopdf.tex 1992/08/27 | 111203 | macros/physe/physe.doc 1992/08/27 | 71123 | macros/physe/physe.tex 1992/08/27 | 3024 | macros/physe/physupdt.tex @@ -218329,25 +218330,25 @@ 2020/05/16 | 15976 | macros/xetex/latex/xepersian/dkun-0.3.py 2020/05/16 | 15867 | macros/xetex/latex/xepersian/dkun-0.4.py 2020/05/16 | 38725 | macros/xetex/latex/xepersian/ftxe-0.12.py -2020/05/12 | 13119 | macros/xetex/latex/xepersian-hm/doc-ligature-xephm.pdf -2020/05/12 | 10115 | macros/xetex/latex/xepersian-hm/doc-ligature-xep.pdf -2020/05/12 | 63436 | macros/xetex/latex/xepersian-hm/doc-samples-glyph.pdf -2020/05/12 | 62967 | macros/xetex/latex/xepersian-hm/doc-samples-hrule.pdf -2020/05/12 | 65545 | macros/xetex/latex/xepersian-hm/doc-samples-xep.pdf -2020/05/12 | 1097 | macros/xetex/latex/xepersian-hm/INSTALL.txt -2020/05/12 | 91743 | macros/xetex/latex/xepersian-hm/kashida-glyph-example.pdf -2020/05/12 | 3691 | macros/xetex/latex/xepersian-hm/kashida-glyph-example.tex -2020/05/12 | 90701 | macros/xetex/latex/xepersian-hm/kashida-hrule-example.pdf -2020/05/12 | 3647 | macros/xetex/latex/xepersian-hm/kashida-hrule-example.tex -2020/05/12 | 78693 | macros/xetex/latex/xepersian-hm/kashida-xep-XB-example.pdf -2020/05/12 | 1459 | macros/xetex/latex/xepersian-hm/kashida-xep-XB-example.tex -2020/05/12 | 859 | macros/xetex/latex/xepersian-hm/README.txt -2020/05/12 | 12370 | macros/xetex/latex/xepersian-hm/xepersian-hm-doc.ltx -2020/05/12 | 264881 | macros/xetex/latex/xepersian-hm/xepersian-hm-doc.pdf -2020/05/12 | 26552 | macros/xetex/latex/xepersian-hm/xepersian-hm.dtx -2020/05/12 | 1937 | macros/xetex/latex/xepersian-hm/xepersian-hm.ins -2020/05/12 | 57525 | macros/xetex/latex/xepersian-hm/xepersian-hm.pdf -2020/05/12 | 766809 | macros/xetex/latex/xepersian-hm.zip +2020/05/20 | 13119 | macros/xetex/latex/xepersian-hm/doc-ligature-xephm.pdf +2020/05/20 | 10115 | macros/xetex/latex/xepersian-hm/doc-ligature-xep.pdf +2020/05/20 | 63436 | macros/xetex/latex/xepersian-hm/doc-samples-glyph.pdf +2020/05/20 | 62967 | macros/xetex/latex/xepersian-hm/doc-samples-hrule.pdf +2020/05/20 | 65545 | macros/xetex/latex/xepersian-hm/doc-samples-xep.pdf +2020/05/20 | 1097 | macros/xetex/latex/xepersian-hm/INSTALL.txt +2020/05/20 | 91743 | macros/xetex/latex/xepersian-hm/kashida-glyph-example.pdf +2020/05/20 | 3691 | macros/xetex/latex/xepersian-hm/kashida-glyph-example.tex +2020/05/20 | 90701 | macros/xetex/latex/xepersian-hm/kashida-hrule-example.pdf +2020/05/20 | 3647 | macros/xetex/latex/xepersian-hm/kashida-hrule-example.tex +2020/05/20 | 78693 | macros/xetex/latex/xepersian-hm/kashida-xep-XB-example.pdf +2020/05/20 | 1459 | macros/xetex/latex/xepersian-hm/kashida-xep-XB-example.tex +2020/05/20 | 859 | macros/xetex/latex/xepersian-hm/README.txt +2020/05/20 | 12376 | macros/xetex/latex/xepersian-hm/xepersian-hm-doc.ltx +2020/05/20 | 264837 | macros/xetex/latex/xepersian-hm/xepersian-hm-doc.pdf +2020/05/20 | 26760 | macros/xetex/latex/xepersian-hm/xepersian-hm.dtx +2020/05/20 | 1937 | macros/xetex/latex/xepersian-hm/xepersian-hm.ins +2020/05/20 | 58016 | macros/xetex/latex/xepersian-hm/xepersian-hm.pdf +2020/05/20 | 767306 | macros/xetex/latex/xepersian-hm.zip 2020/05/16 | 18304 | macros/xetex/latex/xepersian/img/ireland.jpg 2020/05/16 | 13088 | macros/xetex/latex/xepersian/img/weather/clouds.jpg 2020/05/16 | 14616 | macros/xetex/latex/xepersian/img/weather/rain.jpg @@ -242870,21 +242871,13 @@ 2016/09/10 | 20168 | support/chktex/Utility.c 2012/10/27 | 5042 | support/chktex/Utility.h 2016/09/10 | 177347 | support/chktex.zip -2013/05/28 | 128042 | support/classpack/classpack.dtx -2013/05/28 | 1639 | support/classpack/classpack.ins -2013/05/28 | 310003 | support/classpack/classpack.pdf -2013/05/28 | 1587 | support/classpack/classpack.sty -2013/04/15 | 19761 | support/classpack/db2bibtex.xsl -2013/05/12 | 202914 | support/classpack/db2dtx.xsl -2013/03/23 | 17397 | support/classpack/db2plaintext.xsl -2012/06/21 | 1111 | support/classpack/decommentbbl.awk -2013/05/28 | 1960 | support/classpack/doctexbook.dtd -2013/05/06 | 24785 | support/classpack/lppl.xml -2013/05/28 | 229 | support/classpack/MANIFEST -2013/05/28 | 24533 | support/classpack/prepost.xml -2013/05/28 | 5779 | support/classpack/README -2012/06/23 | 7368 | support/classpack/readme.xml -2013/05/30 | 405381 | support/classpack.zip +2020/05/20 | 69146 | support/classpack/classpack.dtx +2020/05/20 | 2206 | support/classpack/classpack.ins +2020/05/20 | 148774 | support/classpack/classpack.pdf +2020/05/20 | 69 | support/classpack/MANIFEST +2020/05/20 | 8201 | support/classpack/README.md +2020/05/20 | 41 | support/classpack/VERSION +2020/05/20 | 166549 | support/classpack.zip 2020/02/06 | 115040 | support/cluttex/bin/cluttex 2020/02/06 | 115068 | support/cluttex/bin/cluttex.bat 2020/02/06 | 6046 | support/cluttex/build.lua @@ -255838,7 +255831,7 @@ 2020/03/04 | 676 | systems/texlive/tlnet/archive/collection-latex.r54074.tar.xz 2020/03/04 | 748 | systems/texlive/tlnet/archive/collection-latexrecommended.r54074.tar.xz 2020/05/17 | 664 | systems/texlive/tlnet/archive/collection-luatex.r55158.tar.xz -2020/04/16 | 1412 | systems/texlive/tlnet/archive/collection-mathscience.r54754.tar.xz +2020/05/20 | 1428 | systems/texlive/tlnet/archive/collection-mathscience.r55213.tar.xz 2019/03/09 | 540 | systems/texlive/tlnet/archive/collection-metapost.r50293.tar.xz 2020/04/12 | 472 | systems/texlive/tlnet/archive/collection-music.r54666.tar.xz 2020/05/14 | 1360 | systems/texlive/tlnet/archive/collection-pictures.r55132.tar.xz @@ -258713,6 +258706,9 @@ 2019/03/27 | 891720 | systems/texlive/tlnet/archive/hecthese.doc.r50590.tar.xz 2019/03/27 | 4012 | systems/texlive/tlnet/archive/hecthese.r50590.tar.xz 2019/03/27 | 29928 | systems/texlive/tlnet/archive/hecthese.source.r50590.tar.xz +2020/05/20 | 78536 | systems/texlive/tlnet/archive/helmholtz-ellis-ji-notation.doc.r55213.tar.xz +2020/05/20 | 16848 | systems/texlive/tlnet/archive/helmholtz-ellis-ji-notation.r55213.tar.xz +2020/05/20 | 4244 | systems/texlive/tlnet/archive/helmholtz-ellis-ji-notation.source.r55213.tar.xz 2019/02/28 | 539636 | systems/texlive/tlnet/archive/helvetic.r31835.tar.xz 2019/02/28 | 1800 | systems/texlive/tlnet/archive/hep.doc.r15878.tar.xz 2019/02/28 | 975796 | systems/texlive/tlnet/archive/hepnames.doc.r35722.tar.xz @@ -261744,9 +261740,9 @@ 2019/02/28 | 134028 | systems/texlive/tlnet/archive/parselines.doc.r21475.tar.xz 2019/02/28 | 1872 | systems/texlive/tlnet/archive/parselines.r21475.tar.xz 2019/02/28 | 9128 | systems/texlive/tlnet/archive/parselines.source.r21475.tar.xz -2020/01/24 | 308724 | systems/texlive/tlnet/archive/parskip.doc.r53503.tar.xz -2020/01/24 | 2816 | systems/texlive/tlnet/archive/parskip.r53503.tar.xz -2020/01/24 | 5500 | systems/texlive/tlnet/archive/parskip.source.r53503.tar.xz +2020/05/20 | 312628 | systems/texlive/tlnet/archive/parskip.doc.r55212.tar.xz +2020/05/20 | 2852 | systems/texlive/tlnet/archive/parskip.r55212.tar.xz +2020/05/20 | 6144 | systems/texlive/tlnet/archive/parskip.source.r55212.tar.xz 2019/02/28 | 153288 | systems/texlive/tlnet/archive/pas-cours.doc.r42036.tar.xz 2019/02/28 | 1924 | systems/texlive/tlnet/archive/pas-cours.r42036.tar.xz 2019/02/28 | 169180 | systems/texlive/tlnet/archive/pas-crosswords.doc.r32313.tar.xz @@ -262281,8 +262277,8 @@ 2019/11/14 | 5000 | systems/texlive/tlnet/archive/plainyr.r52783.tar.xz 2019/02/28 | 218164 | systems/texlive/tlnet/archive/plantslabels.doc.r29803.tar.xz 2019/02/28 | 1260 | systems/texlive/tlnet/archive/plantslabels.r29803.tar.xz -2019/09/25 | 65948 | systems/texlive/tlnet/archive/plantuml.doc.r52175.tar.xz -2019/09/25 | 2204 | systems/texlive/tlnet/archive/plantuml.r52175.tar.xz +2020/05/20 | 66536 | systems/texlive/tlnet/archive/plantuml.doc.r55214.tar.xz +2020/05/20 | 2204 | systems/texlive/tlnet/archive/plantuml.r55214.tar.xz 2019/02/28 | 136708 | systems/texlive/tlnet/archive/plari.doc.r15878.tar.xz 2019/02/28 | 2336 | systems/texlive/tlnet/archive/plari.r15878.tar.xz 2019/02/28 | 3588 | systems/texlive/tlnet/archive/plari.source.r15878.tar.xz @@ -264405,7 +264401,7 @@ 2020/03/25 | 276 | systems/texlive/tlnet/archive/texlive-it.r54534.tar.xz 2020/03/16 | 1522924 | systems/texlive/tlnet/archive/texlive-ja.doc.r54334.tar.xz 2020/03/16 | 276 | systems/texlive/tlnet/archive/texlive-ja.r54334.tar.xz -2020/05/04 | 141260 | systems/texlive/tlnet/archive/texlive-msg-translations.r54992.tar.xz +2020/05/20 | 141272 | systems/texlive/tlnet/archive/texlive-msg-translations.r55211.tar.xz 2019/02/28 | 344 | systems/texlive/tlnet/archive/texliveonfly.aarch64-linux.r46208.tar.xz 2019/02/28 | 344 | systems/texlive/tlnet/archive/texliveonfly.amd64-freebsd.r24062.tar.xz 2019/02/28 | 344 | systems/texlive/tlnet/archive/texliveonfly.amd64-netbsd.r30191.tar.xz @@ -266084,16 +266080,16 @@ 2020/01/24 | 138180 | systems/texlive/tlnet/archive/zxjatype.doc.r53500.tar.xz 2020/01/24 | 8760 | systems/texlive/tlnet/archive/zxjatype.r53500.tar.xz 2020/05/18 | 107860 | systems/texlive/tlnet/install-tl -2020/05/18 | 5500374 | systems/texlive/tlnet/install-tl-unx.tar.gz -2020/05/18 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2020/05/18 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2020/05/20 | 5500520 | systems/texlive/tlnet/install-tl-unx.tar.gz +2020/05/20 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2020/05/20 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2020/03/17 | 4641 | systems/texlive/tlnet/install-tl-windows.bat -2020/05/18 | 19380365 | systems/texlive/tlnet/install-tl-windows.exe -2020/05/18 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2020/05/18 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2020/05/18 | 24269837 | systems/texlive/tlnet/install-tl.zip -2020/05/18 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2020/05/18 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2020/05/20 | 19380339 | systems/texlive/tlnet/install-tl-windows.exe +2020/05/20 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2020/05/20 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2020/05/20 | 24269851 | systems/texlive/tlnet/install-tl.zip +2020/05/20 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2020/05/20 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc 2020/03/05 | 1215 | systems/texlive/tlnet/README.md 2020/04/06 | 5961 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg 2016/04/12 | 600 | systems/texlive/tlnet/tlpkg/gpg/random_seed @@ -266149,12 +266145,12 @@ 2020/05/17 | 20322 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm 2020/05/03 | 4786 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm 2017/11/14 | 27560 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm -2020/05/18 | 16441800 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2020/05/18 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2020/05/20 | 16444311 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2020/05/20 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2020/05/13 | 86417 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm -2020/05/18 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2020/05/18 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2020/05/18 | 2199764 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2020/05/20 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2020/05/20 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2020/05/20 | 2202288 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2020/04/15 | 58761 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm 2020/03/20 | 41736 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm 2020/05/11 | 15010 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm @@ -268798,26 +268794,26 @@ 2020/03/17 | 3466 | systems/texlive/tlnet/tlpkg/tltcl/lib/tkConfig.sh 2018/11/30 | 1310 | systems/texlive/tlnet/tlpkg/tltcl/tlmgr.gif 2020/05/02 | 22152 | systems/texlive/tlnet/tlpkg/tltcl/tltcl.tcl -2020/05/03 | 87098 | systems/texlive/tlnet/tlpkg/translations/cs.po -2020/05/03 | 95623 | systems/texlive/tlnet/tlpkg/translations/de.po -2020/05/03 | 86136 | systems/texlive/tlnet/tlpkg/translations/es.po -2020/05/03 | 99933 | systems/texlive/tlnet/tlpkg/translations/fr.po -2020/05/03 | 93223 | systems/texlive/tlnet/tlpkg/translations/it.po -2020/05/03 | 77785 | systems/texlive/tlnet/tlpkg/translations/ja.po -2020/05/03 | 58685 | systems/texlive/tlnet/tlpkg/translations/messages.pot -2020/05/03 | 74851 | systems/texlive/tlnet/tlpkg/translations/nl.po -2020/05/03 | 73023 | systems/texlive/tlnet/tlpkg/translations/pl.po -2020/05/03 | 88507 | systems/texlive/tlnet/tlpkg/translations/pt_BR.po +2020/05/18 | 87098 | systems/texlive/tlnet/tlpkg/translations/cs.po +2020/05/18 | 95623 | systems/texlive/tlnet/tlpkg/translations/de.po +2020/05/18 | 86136 | systems/texlive/tlnet/tlpkg/translations/es.po +2020/05/18 | 99933 | systems/texlive/tlnet/tlpkg/translations/fr.po +2020/05/18 | 93223 | systems/texlive/tlnet/tlpkg/translations/it.po +2020/05/18 | 77785 | systems/texlive/tlnet/tlpkg/translations/ja.po +2020/05/18 | 58685 | systems/texlive/tlnet/tlpkg/translations/messages.pot +2020/05/18 | 74851 | systems/texlive/tlnet/tlpkg/translations/nl.po +2020/05/18 | 73023 | systems/texlive/tlnet/tlpkg/translations/pl.po +2020/05/18 | 88507 | systems/texlive/tlnet/tlpkg/translations/pt_BR.po 2019/03/25 | 430 | systems/texlive/tlnet/tlpkg/translations/README -2020/05/03 | 112660 | systems/texlive/tlnet/tlpkg/translations/ru.po -2020/05/03 | 94300 | systems/texlive/tlnet/tlpkg/translations/sk.po -2020/05/03 | 75429 | systems/texlive/tlnet/tlpkg/translations/sl.po -2020/05/03 | 110048 | systems/texlive/tlnet/tlpkg/translations/sr.po +2020/05/18 | 112660 | systems/texlive/tlnet/tlpkg/translations/ru.po +2020/05/18 | 94300 | systems/texlive/tlnet/tlpkg/translations/sk.po +2020/05/18 | 75429 | systems/texlive/tlnet/tlpkg/translations/sl.po +2020/05/18 | 110048 | systems/texlive/tlnet/tlpkg/translations/sr.po 2019/03/28 | 847 | systems/texlive/tlnet/tlpkg/translations/translators -2020/05/03 | 87165 | systems/texlive/tlnet/tlpkg/translations/uk.po -2020/05/03 | 96351 | systems/texlive/tlnet/tlpkg/translations/vi.po -2020/05/03 | 72801 | systems/texlive/tlnet/tlpkg/translations/zh_CN.po -2020/05/03 | 63360 | systems/texlive/tlnet/tlpkg/translations/zh_TW.po +2020/05/18 | 87165 | systems/texlive/tlnet/tlpkg/translations/uk.po +2020/05/18 | 96351 | systems/texlive/tlnet/tlpkg/translations/vi.po +2020/05/18 | 72801 | systems/texlive/tlnet/tlpkg/translations/zh_CN.po +2020/05/18 | 63360 | systems/texlive/tlnet/tlpkg/translations/zh_TW.po 2020/04/06 | 2453936 | systems/texlive/tlnet/update-tlmgr-r54630.exe 2020/04/06 | 154 | systems/texlive/tlnet/update-tlmgr-r54630.exe.sha512 2020/04/06 | 455 | systems/texlive/tlnet/update-tlmgr-r54630.exe.sha512.asc @@ -269300,16 +269296,10 @@ 2020/04/29 | 488 | systems/win32/miktex/setup/rpm/opensuse/15/repodata/repomd.xml.asc 2020/04/22 | 243769608 | systems/win32/miktex/setup/windows-x64/basic-miktex-2.9.7417-x64.exe 2020/05/17 | 246857992 | systems/win32/miktex/setup/windows-x64/basic-miktex-2.9.7442-x64.exe -2019/12/20 | 2508472 | systems/win32/miktex/setup/windows-x64/miktexsetup-2.9.6942_2-x64.zip -2019/01/03 | 2562930 | systems/win32/miktex/setup/windows-x64/miktexsetup-2.9.6942-x64.zip 2020/05/18 | 2561368 | systems/win32/miktex/setup/windows-x64/miktexsetup-2.9.7442-x64.zip -2019/01/03 | 25980680 | systems/win32/miktex/setup/windows-x64/setup-2.9.6942-x64.exe 2020/05/17 | 25080072 | systems/win32/miktex/setup/windows-x64/setup-2.9.7442-x64.exe -2020/04/22 | 235081480 | systems/win32/miktex/setup/windows-x86/basic-miktex-2.9.7417.exe 2020/05/17 | 238190344 | systems/win32/miktex/setup/windows-x86/basic-miktex-2.9.7442.exe -2019/01/03 | 2125156 | systems/win32/miktex/setup/windows-x86/miktexsetup-2.9.6942.zip 2020/05/18 | 2200324 | systems/win32/miktex/setup/windows-x86/miktexsetup-2.9.7442.zip -2019/01/03 | 19982088 | systems/win32/miktex/setup/windows-x86/setup-2.9.6942.exe 2020/05/17 | 19894024 | systems/win32/miktex/setup/windows-x86/setup-2.9.7442.exe 2020/03/22 | 20337 | systems/win32/miktex/source/CHANGELOG.md 2019/05/29 | 25598304 | systems/win32/miktex/source/miktex-2.9.7050.tar.xz @@ -270569,7 +270559,7 @@ 2020/02/04 | 281488 | 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 -2020/05/19 | 536395 | systems/win32/miktex/tm/packages/files.csv.lzma +2020/05/20 | 535403 | 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 @@ -270882,6 +270872,7 @@ 2004/07/29 | 37800 | systems/win32/miktex/tm/packages/hebclass.cab 2019/03/28 | 920225 | systems/win32/miktex/tm/packages/hecthese.tar.lzma 2014/12/22 | 749378 | systems/win32/miktex/tm/packages/he-le-na.tar.lzma +2020/05/20 | 99111 | systems/win32/miktex/tm/packages/helmholtz-ellis-ji-notation.tar.lzma 2006/09/28 | 745459 | systems/win32/miktex/tm/packages/helvetic.cab 2005/12/16 | 3444 | systems/win32/miktex/tm/packages/hep.cab 2014/12/22 | 985855 | systems/win32/miktex/tm/packages/hepnames.tar.lzma @@ -271116,7 +271107,7 @@ 2020/05/12 | 768178 | systems/win32/miktex/tm/packages/l3backend.tar.lzma 2020/03/26 | 775871 | systems/win32/miktex/tm/packages/l3build.tar.lzma 2013/05/29 | 156214 | systems/win32/miktex/tm/packages/l3ctr2e.tar.lzma -2020/01/14 | 3982611 | systems/win32/miktex/tm/packages/l3experimental.tar.lzma +2020/05/20 | 3988491 | systems/win32/miktex/tm/packages/l3experimental.tar.lzma 2020/05/16 | 10694587 | systems/win32/miktex/tm/packages/l3kernel.tar.lzma 2020/05/16 | 1870359 | systems/win32/miktex/tm/packages/l3packages.tar.lzma 2008/04/02 | 115132 | systems/win32/miktex/tm/packages/labbook.tar.lzma @@ -271339,7 +271330,7 @@ 2015/07/21 | 246219 | systems/win32/miktex/tm/packages/luasseq.tar.lzma 2016/06/21 | 176793 | systems/win32/miktex/tm/packages/luatex85.tar.lzma 2015/10/06 | 276167 | systems/win32/miktex/tm/packages/luatexbase.tar.lzma -2020/05/18 | 3527865 | systems/win32/miktex/tm/packages/luatexja.tar.lzma +2020/05/20 | 3528482 | systems/win32/miktex/tm/packages/luatexja.tar.lzma 2020/03/21 | 358086 | systems/win32/miktex/tm/packages/luatexko.tar.lzma 2010/12/23 | 322873 | systems/win32/miktex/tm/packages/luatextra.tar.lzma 2020/02/18 | 256383 | systems/win32/miktex/tm/packages/luatodonotes.tar.lzma @@ -271602,8 +271593,8 @@ 2019/01/02 | 80005 | systems/win32/miktex/tm/packages/miktex-lua52-bin-x64-2.9.tar.lzma 2020/05/17 | 93605 | systems/win32/miktex/tm/packages/miktex-lua53-bin-2.9.tar.lzma 2020/05/17 | 102588 | systems/win32/miktex/tm/packages/miktex-lua53-bin-x64-2.9.tar.lzma -2020/05/19 | 1757438 | systems/win32/miktex/tm/packages/miktex-luatex-bin-2.9.tar.lzma -2020/05/19 | 2012169 | systems/win32/miktex/tm/packages/miktex-luatex-bin-x64-2.9.tar.lzma +2020/05/20 | 1750602 | systems/win32/miktex/tm/packages/miktex-luatex-bin-2.9.tar.lzma +2020/05/20 | 2028082 | systems/win32/miktex/tm/packages/miktex-luatex-bin-x64-2.9.tar.lzma 2016/11/06 | 11511 | systems/win32/miktex/tm/packages/miktex-luatex.tar.lzma 2020/05/17 | 67230 | systems/win32/miktex/tm/packages/miktex-lzma-bin-2.9.tar.lzma 2020/05/17 | 73587 | systems/win32/miktex/tm/packages/miktex-lzma-bin-x64-2.9.tar.lzma @@ -271666,8 +271657,8 @@ 2020/05/17 | 50894 | systems/win32/miktex/tm/packages/miktex-psutils-bin-x64-2.9.tar.lzma 2019/07/28 | 6840635 | systems/win32/miktex/tm/packages/miktex-qt5-bin.tar.lzma 2019/07/28 | 8082759 | systems/win32/miktex/tm/packages/miktex-qt5-bin-x64.tar.lzma -2020/05/19 | 1150842 | systems/win32/miktex/tm/packages/miktex-runtime-bin-2.9.tar.lzma -2020/05/19 | 1287136 | systems/win32/miktex/tm/packages/miktex-runtime-bin-x64-2.9.tar.lzma +2020/05/20 | 1150804 | systems/win32/miktex/tm/packages/miktex-runtime-bin-2.9.tar.lzma +2020/05/20 | 1286773 | systems/win32/miktex/tm/packages/miktex-runtime-bin-x64-2.9.tar.lzma 2020/05/17 | 41936 | systems/win32/miktex/tm/packages/miktex-synctex-bin-2.9.tar.lzma 2020/05/17 | 50928 | systems/win32/miktex/tm/packages/miktex-synctex-bin-x64-2.9.tar.lzma 2020/05/17 | 74366 | systems/win32/miktex/tm/packages/miktex-tdsutil-bin-2.9.tar.lzma @@ -271715,9 +271706,9 @@ 2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma 2020/05/17 | 39207 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma 2020/05/17 | 42854 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma -2020/05/19 | 199830 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2020/05/19 | 1196275 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2020/05/19 | 1115332 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2020/05/20 | 199905 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2020/05/20 | 1196353 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2020/05/20 | 1116130 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma 2020/05/17 | 13031 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma 2020/05/17 | 14067 | 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 @@ -271855,197 +271846,197 @@ 2013/08/27 | 646870 | systems/win32/miktex/tm/packages/neuralnetwork.tar.lzma 2015/12/08 | 217634 | systems/win32/miktex/tm/packages/nevelok.tar.lzma 2016/07/16 | 223351 | systems/win32/miktex/tm/packages/newalg.tar.lzma -2019/11/22 | 2250896 | systems/win32/miktex/tm/packages/newcomputermodern.tar.lzma +2020/05/20 | 2240228 | systems/win32/miktex/tm/packages/newcomputermodern.tar.lzma 2013/03/11 | 4261 | systems/win32/miktex/tm/packages/newenviron.tar.lzma 2009/09/11 | 159025 | systems/win32/miktex/tm/packages/newfile.tar.lzma 2019/11/26 | 120397 | systems/win32/miktex/tm/packages/newfloat.tar.lzma 2009/04/21 | 411400 | systems/win32/miktex/tm/packages/newlfm.tar.lzma -2020/02/16 | 2014952 | systems/win32/miktex/tm/packages/newpx.tar.lzma +2020/05/20 | 2014922 | systems/win32/miktex/tm/packages/newpx.tar.lzma 2005/06/25 | 43902 | systems/win32/miktex/tm/packages/newsletr.cab 2007/12/30 | 204631 | systems/win32/miktex/tm/packages/newspaper.tar.lzma 2020/05/06 | 440217 | systems/win32/miktex/tm/packages/newtxsf.tar.lzma -2020/05/06 | 6503530 | systems/win32/miktex/tm/packages/newtx.tar.lzma +2020/05/20 | 6503156 | systems/win32/miktex/tm/packages/newtx.tar.lzma 2020/02/17 | 288246 | systems/win32/miktex/tm/packages/newtxtt.tar.lzma 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 -2020/05/19 | 535958 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2020/05/19 | 58558 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma -2020/05/19 | 66564 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2020/05/19 | 941128 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma -2020/05/19 | 1049744 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma -2020/05/19 | 28574 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma -2020/05/19 | 30784 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma -2020/05/19 | 29323 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma -2020/05/19 | 34938 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma -2020/05/19 | 49729 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma -2020/05/19 | 57269 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma -2020/05/19 | 84827 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma -2020/05/19 | 94352 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma -2020/05/19 | 62073 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma -2020/05/19 | 69345 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2020/05/19 | 26647 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma -2020/05/19 | 30215 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma -2020/05/19 | 328738 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma -2020/05/19 | 391507 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma -2020/05/19 | 32322 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma -2020/05/19 | 36419 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma -2020/05/19 | 71323 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma -2020/05/19 | 77911 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma -2020/05/19 | 203218 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma -2020/05/19 | 222871 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2020/05/19 | 169536 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma -2020/05/19 | 184302 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma -2020/05/19 | 52239 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma -2020/05/19 | 58598 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2020/05/19 | 20787 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma -2020/05/19 | 23006 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma -2020/05/19 | 460503 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma -2020/05/19 | 41134 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma -2020/05/19 | 45953 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2020/05/19 | 273337 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2020/05/19 | 311644 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma -2020/05/19 | 40794 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma -2020/05/19 | 45081 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2020/05/19 | 115757 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma -2020/05/19 | 130482 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma -2020/05/19 | 1257176 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma -2020/05/19 | 1388764 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma -2020/05/19 | 95265 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma -2020/05/19 | 110122 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma -2020/05/19 | 43426 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2020/05/19 | 47996 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma -2020/05/19 | 45696 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2020/05/19 | 50765 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma -2020/05/19 | 56656 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma -2020/05/19 | 61713 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2020/05/19 | 133091 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma -2020/05/19 | 152146 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2020/05/19 | 69820 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma -2020/05/19 | 73061 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma -2020/05/19 | 68636 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma -2020/05/19 | 77414 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma -2020/05/19 | 246434 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma -2020/05/19 | 281651 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma -2020/05/19 | 25394 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma -2020/05/19 | 28793 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma -2020/05/19 | 100564 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma -2020/05/19 | 116881 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma -2020/05/19 | 63244 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2020/05/19 | 72578 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2020/05/19 | 94370 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma -2020/05/19 | 110965 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma -2020/05/19 | 57980 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma -2020/05/19 | 64578 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma -2020/05/19 | 457706 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2020/05/19 | 545598 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma -2020/05/19 | 137120 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2020/05/19 | 150094 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma -2020/05/19 | 92919 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma -2020/05/19 | 108823 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma -2020/05/19 | 15946 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma -2020/05/19 | 17730 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma -2020/05/19 | 27753 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma -2020/05/19 | 29755 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma -2020/05/19 | 615388 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma -2020/05/19 | 670001 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma -2020/05/19 | 498731 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma -2020/05/19 | 561639 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma -2020/05/19 | 539210 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma -2020/05/19 | 574789 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma -2020/05/19 | 93574 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma -2020/05/19 | 102530 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma -2020/05/19 | 1736496 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma -2020/05/19 | 2009807 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma -2020/05/19 | 67262 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma -2020/05/19 | 73610 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma -2020/05/19 | 26948 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2020/05/19 | 31348 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma -2020/05/19 | 7505 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2020/05/19 | 8476 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma -2020/05/19 | 170202 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma -2020/05/19 | 185810 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma -2020/05/19 | 247777 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2020/05/19 | 281420 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2020/05/19 | 86978 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma -2020/05/19 | 92146 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma -2020/05/19 | 78096 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma -2020/05/19 | 86705 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma -2020/05/19 | 164997 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma -2020/05/19 | 185138 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma -2020/05/19 | 148865 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma -2020/05/19 | 168386 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma -2020/05/19 | 194862 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma -2020/05/19 | 177527 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2020/05/19 | 81386 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma -2020/05/19 | 92922 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma -2020/05/19 | 30990 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma -2020/05/19 | 34808 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma -2020/05/19 | 55803 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma -2020/05/19 | 63016 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma -2020/05/19 | 63188 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2020/05/19 | 69172 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2020/05/19 | 45647 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2020/05/19 | 52077 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2020/05/19 | 189237 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma -2020/05/19 | 206534 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma -2020/05/19 | 323366 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2020/05/19 | 358101 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2020/05/19 | 186844 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma -2020/05/19 | 193880 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma -2020/05/19 | 207041 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma -2020/05/19 | 243000 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2020/05/19 | 78169 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma -2020/05/19 | 87187 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma -2020/05/19 | 932284 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma -2020/05/19 | 1042742 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma -2020/05/19 | 19890 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma -2020/05/19 | 23526 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2020/05/19 | 31151 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma -2020/05/19 | 36657 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma -2020/05/19 | 63366 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma -2020/05/19 | 71648 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2020/05/19 | 42621 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2020/05/19 | 50939 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma -2020/05/19 | 1150838 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma -2020/05/19 | 1286408 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma -2020/05/19 | 41931 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2020/05/19 | 50918 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2020/05/19 | 74461 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma -2020/05/19 | 82295 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma -2020/05/19 | 26753 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2020/05/19 | 29035 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma -2020/05/19 | 16118 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma -2020/05/19 | 17828 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma -2020/05/19 | 63166 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2020/05/19 | 69251 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2020/05/19 | 149711 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma -2020/05/19 | 163962 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma -2020/05/19 | 74810 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2020/05/19 | 84878 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma -2020/05/19 | 91544 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma -2020/05/19 | 96602 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma -2020/05/19 | 2555485 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma -2020/05/19 | 2686056 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma -2020/05/19 | 54979 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2020/05/19 | 61452 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma -2020/05/19 | 26505 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2020/05/19 | 32349 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma -2020/05/19 | 61700 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma -2020/05/19 | 65265 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma -2020/05/19 | 248466 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2020/05/19 | 278141 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma -2020/05/19 | 591007 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma -2020/05/19 | 630128 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma -2020/05/19 | 39169 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma -2020/05/19 | 42926 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma -2020/05/19 | 199820 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma -2020/05/19 | 1196367 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma -2020/05/19 | 1116294 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2020/05/19 | 13050 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma -2020/05/19 | 14039 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2020/05/20 | 534816 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2020/05/20 | 58558 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2020/05/20 | 66563 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2020/05/20 | 941127 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2020/05/20 | 1049744 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2020/05/20 | 28575 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2020/05/20 | 30785 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2020/05/20 | 29323 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2020/05/20 | 34939 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2020/05/20 | 49729 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2020/05/20 | 57270 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2020/05/20 | 84828 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2020/05/20 | 94351 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2020/05/20 | 62074 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2020/05/20 | 69345 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2020/05/20 | 26646 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2020/05/20 | 30215 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2020/05/20 | 328738 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2020/05/20 | 391509 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2020/05/20 | 32321 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2020/05/20 | 36418 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2020/05/20 | 71324 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2020/05/20 | 77909 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2020/05/20 | 203216 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2020/05/20 | 222870 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2020/05/20 | 169537 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2020/05/20 | 184301 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2020/05/20 | 52239 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2020/05/20 | 58598 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2020/05/20 | 20787 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2020/05/20 | 23005 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2020/05/20 | 460504 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma +2020/05/20 | 41134 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2020/05/20 | 45952 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2020/05/20 | 273336 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2020/05/20 | 311645 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2020/05/20 | 40793 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2020/05/20 | 45081 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2020/05/20 | 115755 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2020/05/20 | 130481 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2020/05/20 | 1257175 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2020/05/20 | 1388764 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2020/05/20 | 95266 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2020/05/20 | 110121 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2020/05/20 | 43426 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2020/05/20 | 47996 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2020/05/20 | 45696 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2020/05/20 | 50764 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2020/05/20 | 56655 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2020/05/20 | 61713 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2020/05/20 | 133092 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2020/05/20 | 152146 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2020/05/20 | 69820 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2020/05/20 | 73062 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2020/05/20 | 68635 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2020/05/20 | 77413 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2020/05/20 | 246433 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2020/05/20 | 281648 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2020/05/20 | 25393 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2020/05/20 | 28793 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2020/05/20 | 100562 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma +2020/05/20 | 116882 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2020/05/20 | 63245 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2020/05/20 | 72577 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2020/05/20 | 94370 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2020/05/20 | 110965 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2020/05/20 | 57980 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2020/05/20 | 64578 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2020/05/20 | 457707 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2020/05/20 | 545600 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2020/05/20 | 137121 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2020/05/20 | 150094 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2020/05/20 | 92919 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2020/05/20 | 108823 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2020/05/20 | 15946 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2020/05/20 | 17730 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2020/05/20 | 27753 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2020/05/20 | 29755 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2020/05/20 | 615390 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma +2020/05/20 | 670000 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma +2020/05/20 | 498732 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2020/05/20 | 561638 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2020/05/20 | 539212 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2020/05/20 | 574786 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2020/05/20 | 93575 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2020/05/20 | 102531 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2020/05/20 | 1736493 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2020/05/20 | 2009804 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2020/05/20 | 67263 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2020/05/20 | 73609 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2020/05/20 | 26947 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2020/05/20 | 31349 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2020/05/20 | 7505 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2020/05/20 | 8476 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2020/05/20 | 170202 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2020/05/20 | 185809 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2020/05/20 | 247776 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2020/05/20 | 281420 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2020/05/20 | 86978 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2020/05/20 | 92143 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2020/05/20 | 78094 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma +2020/05/20 | 86705 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma +2020/05/20 | 164997 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2020/05/20 | 185138 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2020/05/20 | 148866 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2020/05/20 | 168385 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2020/05/20 | 194862 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2020/05/20 | 177526 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2020/05/20 | 81386 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2020/05/20 | 92922 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2020/05/20 | 30991 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2020/05/20 | 34807 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2020/05/20 | 55803 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2020/05/20 | 63015 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2020/05/20 | 63188 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2020/05/20 | 69172 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2020/05/20 | 45646 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2020/05/20 | 52077 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2020/05/20 | 189235 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma +2020/05/20 | 206534 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma +2020/05/20 | 323367 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2020/05/20 | 358101 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2020/05/20 | 186845 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2020/05/20 | 193878 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2020/05/20 | 207039 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2020/05/20 | 242999 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2020/05/20 | 78170 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2020/05/20 | 87188 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2020/05/20 | 932280 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2020/05/20 | 1042743 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2020/05/20 | 19891 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2020/05/20 | 23525 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2020/05/20 | 31151 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2020/05/20 | 36658 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2020/05/20 | 63367 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2020/05/20 | 71649 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2020/05/20 | 42621 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2020/05/20 | 50939 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2020/05/20 | 1150838 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2020/05/20 | 1286408 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2020/05/20 | 41931 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2020/05/20 | 50918 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2020/05/20 | 74460 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma +2020/05/20 | 82295 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma +2020/05/20 | 26752 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2020/05/20 | 29035 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2020/05/20 | 16118 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2020/05/20 | 17827 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2020/05/20 | 63166 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2020/05/20 | 69252 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2020/05/20 | 149713 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2020/05/20 | 163962 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2020/05/20 | 74811 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2020/05/20 | 84877 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2020/05/20 | 91545 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma +2020/05/20 | 96602 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2020/05/20 | 2555485 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2020/05/20 | 2686056 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2020/05/20 | 54978 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2020/05/20 | 61451 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2020/05/20 | 26504 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2020/05/20 | 32351 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2020/05/20 | 61700 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2020/05/20 | 65266 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2020/05/20 | 248465 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2020/05/20 | 278139 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2020/05/20 | 591010 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2020/05/20 | 630128 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2020/05/20 | 39168 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2020/05/20 | 42926 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2020/05/20 | 199901 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2020/05/20 | 1196545 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2020/05/20 | 1117169 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2020/05/20 | 13050 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2020/05/20 | 14038 | 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 -2020/05/19 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini +2020/05/20 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini 2018/07/06 | 145915 | systems/win32/miktex/tm/packages/nexus-otf.tar.lzma 2017/03/30 | 191149 | systems/win32/miktex/tm/packages/nfssext-cfr.tar.lzma 2012/12/20 | 612251 | systems/win32/miktex/tm/packages/nicefilelist.tar.lzma @@ -272179,7 +272170,7 @@ 2004/02/22 | 122536 | systems/win32/miktex/tm/packages/parrun.cab 2020/04/23 | 136368 | systems/win32/miktex/tm/packages/parsa.tar.lzma 2011/02/21 | 145575 | systems/win32/miktex/tm/packages/parselines.tar.lzma -2020/01/23 | 317198 | systems/win32/miktex/tm/packages/parskip.tar.lzma +2020/05/20 | 321743 | systems/win32/miktex/tm/packages/parskip.tar.lzma 2016/09/13 | 706698 | systems/win32/miktex/tm/packages/pas-cours.tar.lzma 2013/12/04 | 171878 | systems/win32/miktex/tm/packages/pas-crosswords.tar.lzma 2013/11/28 | 333255 | systems/win32/miktex/tm/packages/pas-cv.tar.lzma @@ -272303,7 +272294,7 @@ 2012/09/26 | 365231 | systems/win32/miktex/tm/packages/plainpkg.tar.lzma 2016/11/05 | 28168 | systems/win32/miktex/tm/packages/plain.tar.lzma 2010/04/13 | 458271 | systems/win32/miktex/tm/packages/plantslabels.tar.lzma -2019/09/24 | 68466 | systems/win32/miktex/tm/packages/plantuml.tar.lzma +2020/05/20 | 69077 | systems/win32/miktex/tm/packages/plantuml.tar.lzma 2016/07/18 | 142232 | systems/win32/miktex/tm/packages/plari.tar.lzma 2016/07/20 | 93092 | systems/win32/miktex/tm/packages/plates.tar.lzma 2019/01/03 | 533049 | systems/win32/miktex/tm/packages/platexcheat.tar.lzma @@ -272361,7 +272352,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 -2020/05/19 | 971 | systems/win32/miktex/tm/packages/pr.ini +2020/05/20 | 965 | 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 @@ -273500,7 +273491,7 @@ 2020/05/16 | 4915928 | systems/win32/w32tex/aleph-w32.tar.xz 2020/05/10 | 66192764 | systems/win32/w32tex/biblatex-biber.tar.xz 2016/12/13 | 65971452 | systems/win32/w32tex/cbfonts.tar.xz -2020/05/18 | 651939 | systems/win32/w32tex/ChangeLog +2020/05/19 | 652223 | 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 @@ -273508,7 +273499,7 @@ 2017/06/24 | 644754 | systems/win32/w32tex/ChangeLog.4 2020/05/05 | 22412296 | systems/win32/w32tex/cjkzr.tar.xz 2013/04/27 | 15858676 | systems/win32/w32tex/context-doc.tar.xz -2020/05/16 | 139752796 | systems/win32/w32tex/context.tar.xz +2020/05/19 | 139764036 | systems/win32/w32tex/context.tar.xz 2020/05/07 | 909872 | systems/win32/w32tex/cweb-w32.tar.xz 2020/03/02 | 6281164 | systems/win32/w32tex/datetime2.tar.xz 2020/04/28 | 838668 | systems/win32/w32tex/dvi2ps-w32.tar.xz @@ -273524,13 +273515,13 @@ 2020/04/03 | 29248268 | systems/win32/w32tex/latex.tar.xz 2020/04/28 | 996756 | systems/win32/w32tex/lcdf-typetools-w32.tar.xz 2020/05/11 | 392945940 | systems/win32/w32tex/ltxpkgdocs.tar.xz -2020/05/17 | 34544676 | systems/win32/w32tex/ltxpkgs.tar.xz +2020/05/18 | 34536284 | systems/win32/w32tex/ltxpkgs.tar.xz 2020/05/18 | 3861188 | systems/win32/w32tex/luajittex-dev-w32.tar.xz 2020/05/18 | 3817060 | systems/win32/w32tex/luajittex-exp-w32.tar.xz 2020/05/18 | 3858928 | systems/win32/w32tex/luajittex-w32.tar.xz 2020/05/18 | 18102324 | systems/win32/w32tex/luatex-dev-w32.tar.xz 2020/05/18 | 17920432 | systems/win32/w32tex/luatex-exp-w32.tar.xz -2020/05/18 | 69194100 | systems/win32/w32tex/luatexja.tar.xz +2020/05/18 | 69194124 | systems/win32/w32tex/luatexja.tar.xz 2020/05/18 | 17887932 | systems/win32/w32tex/luatex-w32.tar.xz 2020/05/10 | 1663268 | systems/win32/w32tex/makeindex-w32.tar.xz 2015/05/26 | 1542676 | systems/win32/w32tex/manual.tar.xz @@ -273538,7 +273529,7 @@ 2020/04/28 | 524672 | systems/win32/w32tex/mftrace-w32.tar.xz 2018/07/14 | 6364952 | systems/win32/w32tex/minitoc.tar.xz 2020/01/19 | 882832 | systems/win32/w32tex/m-tx.tar.xz -2020/05/04 | 9708380 | systems/win32/w32tex/newtxpx-boondoxfonts.tar.xz +2020/05/18 | 9709412 | systems/win32/w32tex/newtxpx-boondoxfonts.tar.xz 2020/04/28 | 1228212 | systems/win32/w32tex/omegaj-w32.tar.xz 2020/03/01 | 355876 | systems/win32/w32tex/otfbeta.tar.xz 2020/05/16 | 20741596 | systems/win32/w32tex/pdftex-w32.tar.xz @@ -273555,7 +273546,7 @@ 2019/04/15 | 499188 | systems/win32/w32tex/sam2p-w32.tar.xz 2020/01/24 | 24929772 | systems/win32/w32tex/t1fonts.tar.xz 2020/01/19 | 135584 | systems/win32/w32tex/t1utils-w32.tar.xz -2020/04/28 | 2494736 | systems/win32/w32tex/tex4htk-w32.tar.xz +2020/05/18 | 2481172 | systems/win32/w32tex/tex4htk-w32.tar.xz 2018/06/20 | 15940044 | systems/win32/w32tex/tex-gyre.tar.xz 2020/05/10 | 4014232 | systems/win32/w32tex/texinfo-w32.tar.xz 2020/04/20 | 2050855 | systems/win32/w32tex/texinstwin.zip @@ -273714,7 +273705,7 @@ 2004/06/04 | 404 | tds/tds.sed 2004/06/23 | 65418 | tds/tds.tex 2019/05/29 | 304264 | tds.zip -2020/05/20 | 186 | timestamp +2020/05/21 | 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 fc7bd89d1b..6509b25fae 100644 Binary files a/FILES.byname.gz and b/FILES.byname.gz differ diff --git a/FILES.last07days b/FILES.last07days index ac2cb84c06..717d75f8a5 100644 --- a/FILES.last07days +++ b/FILES.last07days @@ -1,229 +1,319 @@ -2020/05/19 | 971 | systems/win32/miktex/tm/packages/pr.ini -2020/05/19 | 96602 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma -2020/05/19 | 95265 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma -2020/05/19 | 94370 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma -2020/05/19 | 94352 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma -2020/05/19 | 941128 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma -2020/05/19 | 93574 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma -2020/05/19 | 932284 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma -2020/05/19 | 92922 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma -2020/05/19 | 92919 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma -2020/05/19 | 92146 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma -2020/05/19 | 91544 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma -2020/05/19 | 87187 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma -2020/05/19 | 86978 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma -2020/05/19 | 86705 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma -2020/05/19 | 84878 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma -2020/05/19 | 84827 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma -2020/05/19 | 8476 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma -2020/05/19 | 82295 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma -2020/05/19 | 81386 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2020/05/20 | 99111 | systems/win32/miktex/tm/packages/helmholtz-ellis-ji-notation.tar.lzma +2020/05/20 | 96602 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2020/05/20 | 965 | systems/win32/miktex/tm/packages/pr.ini +2020/05/20 | 95266 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2020/05/20 | 94370 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2020/05/20 | 94351 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2020/05/20 | 941127 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2020/05/20 | 93575 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2020/05/20 | 932280 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2020/05/20 | 92922 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2020/05/20 | 92919 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2020/05/20 | 92143 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2020/05/20 | 9174 | macros/latex/contrib/toptesi/README.txt +2020/05/20 | 91743 | macros/xetex/latex/xepersian-hm/kashida-glyph-example.pdf +2020/05/20 | 91545 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma +2020/05/20 | 90701 | macros/xetex/latex/xepersian-hm/kashida-hrule-example.pdf +2020/05/20 | 87188 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2020/05/20 | 86978 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2020/05/20 | 86705 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma +2020/05/20 | 859 | macros/xetex/latex/xepersian-hm/README.txt +2020/05/20 | 84877 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2020/05/20 | 84828 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2020/05/20 | 8476 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2020/05/20 | 8394106 | macros/latex/contrib/toptesi.zip +2020/05/20 | 82295 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma +2020/05/20 | 8201 | support/classpack/README.md +2020/05/20 | 81386 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2020/05/20 | 78693 | macros/xetex/latex/xepersian-hm/kashida-xep-XB-example.pdf +2020/05/20 | 78536 | systems/texlive/tlnet/archive/helmholtz-ellis-ji-notation.doc.r55213.tar.xz +2020/05/20 | 78170 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2020/05/20 | 78094 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma +2020/05/20 | 77909 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2020/05/20 | 77413 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2020/05/20 | 76926 | macros/luatex/latex/cloze/cloze.dtx +2020/05/20 | 767306 | macros/xetex/latex/xepersian-hm.zip +2020/05/20 | 7505 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2020/05/20 | 74811 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2020/05/20 | 74460 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma +2020/05/20 | 7369 | graphics/euflag/README.md +2020/05/20 | 73609 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2020/05/20 | 73062 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2020/05/20 | 72577 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2020/05/20 | 71649 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2020/05/20 | 71324 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2020/05/20 | 69 | support/classpack/MANIFEST +2020/05/20 | 69820 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2020/05/20 | 69345 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2020/05/20 | 69252 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2020/05/20 | 69172 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2020/05/20 | 69146 | support/classpack/classpack.dtx +2020/05/20 | 69077 | systems/win32/miktex/tm/packages/plantuml.tar.lzma +2020/05/20 | 68635 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2020/05/20 | 67263 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2020/05/20 | 670000 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma +2020/05/20 | 66563 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2020/05/20 | 66536 | systems/texlive/tlnet/archive/plantuml.doc.r55214.tar.xz +2020/05/20 | 6622 | language/japanese/ptex2pdf/README.md +2020/05/20 | 65545 | macros/xetex/latex/xepersian-hm/doc-samples-xep.pdf +2020/05/20 | 65266 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2020/05/20 | 6503156 | systems/win32/miktex/tm/packages/newtx.tar.lzma +2020/05/20 | 64578 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2020/05/20 | 63436 | macros/xetex/latex/xepersian-hm/doc-samples-glyph.pdf +2020/05/20 | 63367 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2020/05/20 | 63245 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2020/05/20 | 63188 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2020/05/20 | 63166 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2020/05/20 | 63015 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2020/05/20 | 630128 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2020/05/20 | 62967 | macros/xetex/latex/xepersian-hm/doc-samples-hrule.pdf +2020/05/20 | 62074 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2020/05/20 | 61713 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2020/05/20 | 61700 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2020/05/20 | 615390 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma +2020/05/20 | 61451 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2020/05/20 | 6144 | systems/texlive/tlnet/archive/parskip.source.r55212.tar.xz +2020/05/20 | 60 | graphics/euflag/MANIFEST +2020/05/20 | 60334 | graphics/euflag/euflag.dtx +2020/05/20 | 591010 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2020/05/20 | 58598 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2020/05/20 | 58558 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2020/05/20 | 58016 | macros/xetex/latex/xepersian-hm/xepersian-hm.pdf +2020/05/20 | 57980 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2020/05/20 | 574786 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2020/05/20 | 57270 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2020/05/20 | 56655 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2020/05/20 | 561638 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2020/05/20 | 55803 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2020/05/20 | 5500520 | systems/texlive/tlnet/install-tl-unx.tar.gz +2020/05/20 | 54978 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2020/05/20 | 545600 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2020/05/20 | 539212 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2020/05/20 | 535403 | systems/win32/miktex/tm/packages/files.csv.lzma +2020/05/20 | 534816 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2020/05/20 | 52239 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2020/05/20 | 52077 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2020/05/20 | 50939 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2020/05/20 | 50918 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2020/05/20 | 50764 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2020/05/20 | 498732 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2020/05/20 | 49729 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2020/05/20 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2020/05/20 | 47996 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2020/05/20 | 460504 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma +2020/05/20 | 45952 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2020/05/20 | 457707 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2020/05/20 | 45696 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2020/05/20 | 45646 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2020/05/20 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2020/05/20 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2020/05/20 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2020/05/20 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2020/05/20 | 45081 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2020/05/20 | 43426 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2020/05/20 | 42926 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2020/05/20 | 42621 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2020/05/20 | 4244 | systems/texlive/tlnet/archive/helmholtz-ellis-ji-notation.source.r55213.tar.xz +2020/05/20 | 41 | support/classpack/VERSION +2020/05/20 | 41 | graphics/euflag/VERSION +2020/05/20 | 41931 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2020/05/20 | 41134 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2020/05/20 | 40793 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2020/05/20 | 3988491 | systems/win32/miktex/tm/packages/l3experimental.tar.lzma +2020/05/20 | 39168 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2020/05/20 | 391509 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2020/05/20 | 3691 | macros/xetex/latex/xepersian-hm/kashida-glyph-example.tex +2020/05/20 | 36658 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2020/05/20 | 3647 | macros/xetex/latex/xepersian-hm/kashida-hrule-example.tex +2020/05/20 | 36418 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2020/05/20 | 358101 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2020/05/20 | 3528482 | systems/win32/miktex/tm/packages/luatexja.tar.lzma +2020/05/20 | 34939 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2020/05/20 | 34807 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2020/05/20 | 328738 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2020/05/20 | 32351 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2020/05/20 | 323367 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2020/05/20 | 32321 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2020/05/20 | 321743 | systems/win32/miktex/tm/packages/parskip.tar.lzma +2020/05/20 | 31349 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2020/05/20 | 312628 | systems/texlive/tlnet/archive/parskip.doc.r55212.tar.xz +2020/05/20 | 311645 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2020/05/20 | 31151 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2020/05/20 | 30991 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2020/05/20 | 30785 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2020/05/20 | 30215 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2020/05/20 | 29755 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2020/05/20 | 29323 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2020/05/20 | 29035 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2020/05/20 | 28793 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2020/05/20 | 28575 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2020/05/20 | 2852 | systems/texlive/tlnet/archive/parskip.r55212.tar.xz +2020/05/20 | 281648 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2020/05/20 | 281420 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2020/05/20 | 278139 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2020/05/20 | 27753 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2020/05/20 | 273336 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2020/05/20 | 26947 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2020/05/20 | 2686056 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2020/05/20 | 26760 | macros/xetex/latex/xepersian-hm/xepersian-hm.dtx +2020/05/20 | 26752 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2020/05/20 | 26646 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2020/05/20 | 26504 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2020/05/20 | 264837 | macros/xetex/latex/xepersian-hm/xepersian-hm-doc.pdf +2020/05/20 | 259293 | macros/luatex/latex/cloze.zip +2020/05/20 | 257712 | macros/luatex/latex/cloze/cloze.pdf +2020/05/20 | 2555485 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2020/05/20 | 25393 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2020/05/20 | 248465 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2020/05/20 | 247776 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2020/05/20 | 246433 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2020/05/20 | 242999 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2020/05/20 | 24269851 | systems/texlive/tlnet/install-tl.zip +2020/05/20 | 23525 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2020/05/20 | 23005 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2020/05/20 | 2244 | macros/luatex/latex/cloze/cloze.ins +2020/05/20 | 2240228 | systems/win32/miktex/tm/packages/newcomputermodern.tar.lzma +2020/05/20 | 222870 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2020/05/20 | 2206 | support/classpack/classpack.ins +2020/05/20 | 2204 | systems/texlive/tlnet/archive/plantuml.r55214.tar.xz +2020/05/20 | 2202288 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2020/05/20 | 2183 | graphics/euflag/euflag.ins +2020/05/20 | 20787 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2020/05/20 | 207039 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2020/05/20 | 206534 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma +2020/05/20 | 203216 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2020/05/20 | 2028082 | systems/win32/miktex/tm/packages/miktex-luatex-bin-x64-2.9.tar.lzma +2020/05/20 | 2014922 | systems/win32/miktex/tm/packages/newpx.tar.lzma +2020/05/20 | 2009804 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2020/05/20 | 199905 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2020/05/20 | 199901 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2020/05/20 | 19891 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2020/05/20 | 194862 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2020/05/20 | 193878 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2020/05/20 | 19380339 | systems/texlive/tlnet/install-tl-windows.exe +2020/05/20 | 1937 | macros/xetex/latex/xepersian-hm/xepersian-hm.ins +2020/05/20 | 189235 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma +2020/05/20 | 186845 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2020/05/20 | 185809 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2020/05/20 | 185138 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2020/05/20 | 184301 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2020/05/20 | 18092 | language/japanese/ptex2pdf/COPYING +2020/05/20 | 17827 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2020/05/20 | 177526 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2020/05/20 | 17730 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2020/05/20 | 1750602 | systems/win32/miktex/tm/packages/miktex-luatex-bin-2.9.tar.lzma +2020/05/20 | 1736493 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2020/05/20 | 170202 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2020/05/20 | 169537 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2020/05/20 | 16848 | systems/texlive/tlnet/archive/helmholtz-ellis-ji-notation.r55213.tar.xz +2020/05/20 | 168385 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2020/05/20 | 166549 | support/classpack.zip +2020/05/20 | 164997 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2020/05/20 | 16444311 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2020/05/20 | 163962 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2020/05/20 | 16118 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2020/05/20 | 15946 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2020/05/20 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2020/05/20 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2020/05/20 | 152146 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2020/05/20 | 150094 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2020/05/20 | 149713 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2020/05/20 | 148866 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2020/05/20 | 148774 | support/classpack/classpack.pdf +2020/05/20 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2020/05/20 | 1459 | macros/xetex/latex/xepersian-hm/kashida-xep-XB-example.tex +2020/05/20 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2020/05/20 | 14356 | language/japanese/ptex2pdf.zip +2020/05/20 | 1428 | systems/texlive/tlnet/archive/collection-mathscience.r55213.tar.xz +2020/05/20 | 141272 | systems/texlive/tlnet/archive/texlive-msg-translations.r55211.tar.xz +2020/05/20 | 14066 | language/japanese/ptex2pdf/ptex2pdf.lua +2020/05/20 | 14038 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2020/05/20 | 1388764 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2020/05/20 | 137121 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2020/05/20 | 1349 | macros/luatex/latex/cloze/README +2020/05/20 | 133092 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2020/05/20 | 13119 | macros/xetex/latex/xepersian-hm/doc-ligature-xephm.pdf +2020/05/20 | 13050 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2020/05/20 | 130481 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2020/05/20 | 1286773 | systems/win32/miktex/tm/packages/miktex-runtime-bin-x64-2.9.tar.lzma +2020/05/20 | 1286408 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2020/05/20 | 1257175 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2020/05/20 | 124484 | graphics/euflag.zip +2020/05/20 | 12376 | macros/xetex/latex/xepersian-hm/xepersian-hm-doc.ltx +2020/05/20 | 1196545 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2020/05/20 | 1196353 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2020/05/20 | 116882 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2020/05/20 | 115755 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2020/05/20 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini +2020/05/20 | 1150838 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2020/05/20 | 1150804 | systems/win32/miktex/tm/packages/miktex-runtime-bin-2.9.tar.lzma +2020/05/20 | 1117169 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2020/05/20 | 1116130 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2020/05/20 | 110965 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2020/05/20 | 110121 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2020/05/20 | 1097 | macros/xetex/latex/xepersian-hm/INSTALL.txt +2020/05/20 | 108823 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2020/05/20 | 106973 | graphics/euflag/euflag.pdf +2020/05/20 | 1049744 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2020/05/20 | 1042743 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2020/05/20 | 102531 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2020/05/20 | 10115 | macros/xetex/latex/xepersian-hm/doc-ligature-xep.pdf +2020/05/20 | 100562 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma 2020/05/19 | 80047 | fonts/helmholtz-ellis-ji-notation/helmholtz-ellis-ji-notation.pdf -2020/05/19 | 78169 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma -2020/05/19 | 78096 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma -2020/05/19 | 77911 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma -2020/05/19 | 77414 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma -2020/05/19 | 7505 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2020/05/19 | 74810 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2020/05/19 | 74461 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma -2020/05/19 | 73610 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma -2020/05/19 | 73061 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma -2020/05/19 | 72578 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2020/05/19 | 71648 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2020/05/19 | 71323 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma 2020/05/19 | 70541 | macros/luatex/latex/plantuml.zip -2020/05/19 | 69820 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma 2020/05/19 | 69754 | systems/win32/miktex/tm/packages/miktex-bibtex-bin-x64-2.9.tar.lzma -2020/05/19 | 69345 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2020/05/19 | 69251 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2020/05/19 | 69172 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2020/05/19 | 68636 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma -2020/05/19 | 67262 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma -2020/05/19 | 670001 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma -2020/05/19 | 66564 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2020/05/19 | 65265 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma -2020/05/19 | 64578 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2020/05/19 | 652223 | systems/win32/w32tex/ChangeLog 2020/05/19 | 636 | macros/luatex/latex/plantuml/example-component-diagram.tex -2020/05/19 | 63366 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma -2020/05/19 | 63244 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2020/05/19 | 63188 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2020/05/19 | 63166 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2020/05/19 | 63016 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma -2020/05/19 | 630128 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma 2020/05/19 | 62236 | systems/win32/miktex/tm/packages/miktex-bibtex-bin-2.9.tar.lzma -2020/05/19 | 62073 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma -2020/05/19 | 61713 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2020/05/19 | 61700 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma -2020/05/19 | 615388 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma -2020/05/19 | 61452 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma -2020/05/19 | 591007 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma -2020/05/19 | 58598 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2020/05/19 | 58558 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma -2020/05/19 | 57980 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma -2020/05/19 | 574789 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma 2020/05/19 | 572 | macros/luatex/latex/plantuml/example-class-relations--svg.tex -2020/05/19 | 57269 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma -2020/05/19 | 56656 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma 2020/05/19 | 56515 | fonts/helmholtz-ellis-ji-notation/font/HEJI2Text.otf -2020/05/19 | 561639 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma -2020/05/19 | 55803 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma -2020/05/19 | 54979 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2020/05/19 | 545598 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma -2020/05/19 | 539210 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma -2020/05/19 | 536395 | systems/win32/miktex/tm/packages/files.csv.lzma -2020/05/19 | 535958 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2020/05/19 | 52239 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma -2020/05/19 | 52077 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2020/05/19 | 50939 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma -2020/05/19 | 50918 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2020/05/19 | 50765 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma -2020/05/19 | 498731 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma -2020/05/19 | 49729 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma 2020/05/19 | 4829 | macros/luatex/latex/plantuml/example-minimal.png -2020/05/19 | 47996 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma 2020/05/19 | 47782 | macros/luatex/latex/plantuml/plantuml.pdf -2020/05/19 | 460503 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma -2020/05/19 | 45953 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2020/05/19 | 457706 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2020/05/19 | 45696 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2020/05/19 | 45647 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2020/05/19 | 45081 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2020/05/19 | 43426 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2020/05/19 | 42926 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma 2020/05/19 | 426 | macros/latex/contrib/parskip/README.md -2020/05/19 | 42621 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2020/05/19 | 41931 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2020/05/19 | 41134 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma 2020/05/19 | 408120 | macros/latex/contrib/parskip.zip -2020/05/19 | 40794 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma 2020/05/19 | 396 | macros/luatex/latex/plantuml/release.sh -2020/05/19 | 39169 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma -2020/05/19 | 391507 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma 2020/05/19 | 389 | macros/luatex/latex/plantuml/example-class-relations--latex.tex -2020/05/19 | 36657 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma -2020/05/19 | 36419 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma -2020/05/19 | 358101 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2020/05/19 | 34938 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma -2020/05/19 | 34808 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma -2020/05/19 | 328738 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma -2020/05/19 | 32349 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma -2020/05/19 | 323366 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2020/05/19 | 32322 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma -2020/05/19 | 31348 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma -2020/05/19 | 311644 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma -2020/05/19 | 31151 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma -2020/05/19 | 30990 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma -2020/05/19 | 30784 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma 2020/05/19 | 3051 | macros/luatex/latex/plantuml/README.md -2020/05/19 | 30215 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma -2020/05/19 | 29755 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma -2020/05/19 | 29323 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma 2020/05/19 | 2905 | macros/luatex/latex/plantuml/plantuml.sty -2020/05/19 | 29035 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma -2020/05/19 | 28793 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma 2020/05/19 | 2863 | macros/latex/contrib/parskip/MANIFEST.md -2020/05/19 | 28574 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma -2020/05/19 | 281651 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma -2020/05/19 | 281420 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2020/05/19 | 278141 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma -2020/05/19 | 27753 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma 2020/05/19 | 2757 | macros/latex/contrib/parskip/parskip-2001-04-09.sty -2020/05/19 | 273337 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2020/05/19 | 26948 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2020/05/19 | 2686056 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma -2020/05/19 | 26753 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2020/05/19 | 26647 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma -2020/05/19 | 26505 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2020/05/19 | 2555485 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma -2020/05/19 | 25394 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma -2020/05/19 | 248466 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2020/05/19 | 247777 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2020/05/19 | 246434 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma 2020/05/19 | 2461 | fonts/helmholtz-ellis-ji-notation/README.md -2020/05/19 | 243000 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2020/05/19 | 23526 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2020/05/19 | 23006 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma 2020/05/19 | 226081 | macros/latex/contrib/parskip/parskip-code.pdf 2020/05/19 | 2246 | macros/luatex/latex/plantuml/CHANGELOG.md -2020/05/19 | 222871 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2020/05/19 | 20787 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma -2020/05/19 | 207041 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma -2020/05/19 | 206534 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma -2020/05/19 | 203218 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma -2020/05/19 | 2012169 | systems/win32/miktex/tm/packages/miktex-luatex-bin-x64-2.9.tar.lzma -2020/05/19 | 2009807 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma -2020/05/19 | 199830 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2020/05/19 | 199820 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma -2020/05/19 | 19890 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma 2020/05/19 | 1958 | macros/latex/contrib/parskip/parskip.ins -2020/05/19 | 194862 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma -2020/05/19 | 193880 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma 2020/05/19 | 1915 | fonts/helmholtz-ellis-ji-notation/helmholtz-ellis-ji-notation.ins -2020/05/19 | 189237 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma -2020/05/19 | 186844 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma -2020/05/19 | 185810 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma -2020/05/19 | 185138 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma -2020/05/19 | 184302 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma -2020/05/19 | 17828 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma -2020/05/19 | 177527 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2020/05/19 | 17730 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma -2020/05/19 | 1757438 | systems/win32/miktex/tm/packages/miktex-luatex-bin-2.9.tar.lzma +2020/05/19 | 1814675 | macros/latex/contrib/toptesi/toptesi-it.pdf 2020/05/19 | 175049 | macros/latex/contrib/parskip/parskip.pdf -2020/05/19 | 1736496 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma -2020/05/19 | 170202 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma -2020/05/19 | 169536 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma -2020/05/19 | 168386 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma -2020/05/19 | 164997 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma -2020/05/19 | 163962 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma 2020/05/19 | 16194 | macros/latex/contrib/parskip/parskip.dtx -2020/05/19 | 16118 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma -2020/05/19 | 15946 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma -2020/05/19 | 152146 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2020/05/19 | 150094 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma -2020/05/19 | 149711 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma 2020/05/19 | 148 | macros/luatex/latex/plantuml/example-minimal.tex 2020/05/19 | 1488 | macros/luatex/latex/plantuml/plantuml.lua -2020/05/19 | 148865 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma 2020/05/19 | 14207 | fonts/helmholtz-ellis-ji-notation/helmholtz-ellis-ji-notation.dtx -2020/05/19 | 14039 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma 2020/05/19 | 13997 | macros/luatex/latex/plantuml/example-class-relations--svg.png -2020/05/19 | 1388764 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma -2020/05/19 | 137120 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2020/05/19 | 133091 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma -2020/05/19 | 13050 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma -2020/05/19 | 130482 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma -2020/05/19 | 1287136 | systems/win32/miktex/tm/packages/miktex-runtime-bin-x64-2.9.tar.lzma -2020/05/19 | 1286408 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma -2020/05/19 | 1257176 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2020/05/19 | 139764036 | systems/win32/w32tex/context.tar.xz 2020/05/19 | 1250 | macros/latex/contrib/parskip/changes.txt -2020/05/19 | 1196367 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma -2020/05/19 | 1196275 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2020/05/19 | 116881 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma -2020/05/19 | 115757 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma -2020/05/19 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini -2020/05/19 | 1150842 | systems/win32/miktex/tm/packages/miktex-runtime-bin-2.9.tar.lzma -2020/05/19 | 1150838 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2020/05/19 | 12076 | macros/latex/contrib/toptesi/toptesi-example-sss.tex 2020/05/19 | 112 | macros/latex/contrib/parskip/parskip.tex -2020/05/19 | 1116294 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2020/05/19 | 1115332 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma -2020/05/19 | 110965 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma -2020/05/19 | 110122 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma -2020/05/19 | 108823 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma -2020/05/19 | 1049744 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma -2020/05/19 | 1042742 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma -2020/05/19 | 102530 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma 2020/05/19 | 101 | macros/latex/contrib/parskip/parskip-code.tex -2020/05/19 | 100564 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma 2020/05/19 | 100118 | fonts/helmholtz-ellis-ji-notation.zip +2020/05/18 | 99933 | systems/texlive/tlnet/tlpkg/translations/fr.po 2020/05/18 | 9888 | macros/latex/contrib/l3experimental/l3draw-transforms.dtx 2020/05/18 | 987500 | systems/texlive/tlnet/archive/xepersian.doc.r55194.tar.xz 2020/05/18 | 980 | fonts/newpx/vf/zplsyc.vf 2020/05/18 | 980 | fonts/newpx/vf/zplbsyc.vf +2020/05/18 | 9709412 | systems/win32/w32tex/newtxpx-boondoxfonts.tar.xz 2020/05/18 | 96863 | macros/latex/contrib/l3experimental/l3galley.dtx +2020/05/18 | 96351 | systems/texlive/tlnet/tlpkg/translations/vi.po +2020/05/18 | 95623 | systems/texlive/tlnet/tlpkg/translations/de.po +2020/05/18 | 94300 | systems/texlive/tlnet/tlpkg/translations/sk.po 2020/05/18 | 937480 | systems/texlive/tlnet/archive/newtx.doc.r55202.tar.xz +2020/05/18 | 93223 | systems/texlive/tlnet/tlpkg/translations/it.po 2020/05/18 | 88608 | systems/texlive/tlnet/archive/newcomputermodern.doc.r55200.tar.xz +2020/05/18 | 88507 | systems/texlive/tlnet/tlpkg/translations/pt_BR.po +2020/05/18 | 87165 | systems/texlive/tlnet/tlpkg/translations/uk.po +2020/05/18 | 87098 | systems/texlive/tlnet/tlpkg/translations/cs.po 2020/05/18 | 86973 | fonts/newcomputermodern/newcomputermodern-sample.pdf 2020/05/18 | 867336 | systems/texlive/tlnet/archive/tex4ht.r55208.tar.xz +2020/05/18 | 86136 | systems/texlive/tlnet/tlpkg/translations/es.po 2020/05/18 | 85180 | systems/texlive/tlnet/archive/l3experimental.source.r55205.tar.xz 2020/05/18 | 8508 | systems/texlive/tlnet/archive/context-vim.r55204.tar.xz 2020/05/18 | 84340 | systems/texlive/tlnet/archive/luatexja.source.r55207.tar.xz @@ -231,51 +321,58 @@ 2020/05/18 | 8250081 | fonts/newtx.zip 2020/05/18 | 800 | fonts/newtx/tfm/ntxbexa.tfm 2020/05/18 | 800 | fonts/newpx/tfm/zplbexa.tfm +2020/05/18 | 7856 | macros/pdftex/mptopdf/tex/context/base/mkii/syst-tex.mkii 2020/05/18 | 7812 | systems/texlive/tlnet/archive/context-vim.doc.r55204.tar.xz +2020/05/18 | 77785 | systems/texlive/tlnet/tlpkg/translations/ja.po 2020/05/18 | 7728 | systems/texlive/tlnet/archive/exercises.source.r55188.tar.xz 2020/05/18 | 760 | fonts/newtx/tfm/ntxexa.tfm 2020/05/18 | 760 | fonts/newpx/tfm/zplexa.tfm +2020/05/18 | 75429 | systems/texlive/tlnet/tlpkg/translations/sl.po 2020/05/18 | 7488 | macros/latex/contrib/l3experimental/l3draw-scopes.dtx +2020/05/18 | 74851 | systems/texlive/tlnet/tlpkg/translations/nl.po 2020/05/18 | 74624 | systems/texlive/tlnet/archive/xepersian.source.r55194.tar.xz -2020/05/18 | 69194100 | systems/win32/w32tex/luatexja.tar.xz +2020/05/18 | 732 | macros/pdftex/mptopdf/doc/context/scripts/mkii/mptopdf.man +2020/05/18 | 73023 | systems/texlive/tlnet/tlpkg/translations/pl.po +2020/05/18 | 72801 | systems/texlive/tlnet/tlpkg/translations/zh_CN.po +2020/05/18 | 71627 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-pdf.mkii +2020/05/18 | 69194124 | systems/win32/w32tex/luatexja.tar.xz 2020/05/18 | 690816 | fonts/newcomputermodern/NewCMMono10-Italic.otf 2020/05/18 | 67623 | systems/win32/miktex/tm/packages/lua-uni-algos.tar.lzma 2020/05/18 | 660 | systems/texlive/tlnet/archive/collection-langgerman.r55209.tar.xz -2020/05/18 | 651939 | systems/win32/w32tex/ChangeLog 2020/05/18 | 6463772 | systems/win32/w32tex/ptex-ng-w32.tar.xz 2020/05/18 | 636 | systems/texlive/tlnet/archive/collection-xetex.r55209.tar.xz +2020/05/18 | 63360 | systems/texlive/tlnet/tlpkg/translations/zh_TW.po 2020/05/18 | 625771 | macros/latex/contrib/l3experimental/l3draw-code.pdf 2020/05/18 | 62084 | systems/texlive/tlnet/archive/lua-uni-algos.doc.r55206.tar.xz 2020/05/18 | 6184 | macros/latex/contrib/l3experimental/l3draw-state.dtx 2020/05/18 | 61192 | systems/texlive/tlnet/archive/tex4ht.doc.r55208.tar.xz 2020/05/18 | 6096 | systems/texlive/tlnet/archive/collection-latexextra.r55190.tar.xz 2020/05/18 | 58 | systems/mac/mactex/MacTeXtras-20200518.zip.md5 +2020/05/18 | 58685 | systems/texlive/tlnet/tlpkg/translations/messages.pot 2020/05/18 | 58564 | systems/texlive/tlnet/archive/xepersian.r55194.tar.xz 2020/05/18 | 58435 | macros/latex/contrib/l3experimental/xgalley.dtx 2020/05/18 | 580 | fonts/newtx/vf/ntxbexa.vf 2020/05/18 | 576 | fonts/newtx/vf/ntxexa.vf 2020/05/18 | 5667 | macros/latex/contrib/l3experimental/l3draw-layers.dtx 2020/05/18 | 5577652 | systems/texlive/tlnet/archive/newtx.r55202.tar.xz -2020/05/18 | 5500374 | systems/texlive/tlnet/install-tl-unx.tar.gz 2020/05/18 | 548 | fonts/newpx/vf/zplbexa.vf 2020/05/18 | 544 | fonts/newpx/vf/zplexa.vf 2020/05/18 | 5384 | systems/texlive/tlnet/archive/lua-uni-algos.r55206.tar.xz 2020/05/18 | 533068 | fonts/newcomputermodern/NewCMMono10-BoldOblique.otf +2020/05/18 | 5322 | macros/pdftex/mptopdf/tex/generic/context/mptopdf/mptopdf.tex 2020/05/18 | 512 | systems/texlive/tlnet/archive/tex-nutshell.r55187.tar.xz 2020/05/18 | 499 | systems/win32/miktex/source/miktex-2.9.7440.tar.xz.asc 2020/05/18 | 4952177 | install/macros/latex/contrib/l3experimental.tds.zip 2020/05/18 | 491703 | macros/latex/contrib/l3experimental/l3draw.pdf 2020/05/18 | 4909479 | macros/latex/contrib/l3experimental.zip -2020/05/18 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2020/05/18 | 48787412 | systems/win32/w32tex/xetex-w32.tar.xz -2020/05/18 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2020/05/18 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc -2020/05/18 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2020/05/18 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2020/05/18 | 4608 | macros/pdftex/mptopdf/scripts/context/stubs/mswin/mptopdf.exe 2020/05/18 | 4559 | macros/latex/contrib/l3experimental/README.md +2020/05/18 | 4557 | macros/pdftex/mptopdf/scripts/context/perl/mptopdf.pl 2020/05/18 | 442052 | systems/texlive/tlnet/archive/newpx.doc.r55201.tar.xz 2020/05/18 | 436 | systems/texlive/tlnet/archive/collection-langarabic.r55209.tar.xz 2020/05/18 | 4328 | macros/latex/contrib/l3experimental/l3draw-boxes.dtx +2020/05/18 | 42831 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-mpe.mkii 2020/05/18 | 41372 | macros/latex/contrib/l3experimental/l3draw.dtx 2020/05/18 | 3975524 | systems/win32/miktex/tm/packages/bidi.tar.lzma 2020/05/18 | 388 | systems/texlive/tlnet/archive/texlive-docindex.r55196.tar.xz @@ -294,12 +391,12 @@ 2020/05/18 | 3636 | systems/texlive/tlnet/archive/readablecv.r55190.tar.xz 2020/05/18 | 363473 | macros/latex/contrib/l3experimental/l3graphics.pdf 2020/05/18 | 356220 | systems/texlive/tlnet/archive/exercises.doc.r55188.tar.xz -2020/05/18 | 3527865 | systems/win32/miktex/tm/packages/luatexja.tar.lzma 2020/05/18 | 35177 | macros/latex/contrib/l3experimental/xcoffins.dtx 2020/05/18 | 351156 | macros/latex/contrib/l3experimental/l3pdf.pdf 2020/05/18 | 350289 | macros/latex/contrib/l3experimental/l3color.pdf 2020/05/18 | 34924 | fonts/newtx/README 2020/05/18 | 3455756 | systems/win32/w32tex/win64/luajittex-dev-w64.tar.xz +2020/05/18 | 34536284 | systems/win32/w32tex/ltxpkgs.tar.xz 2020/05/18 | 3452916 | systems/win32/w32tex/win64/luajittex-w64.tar.xz 2020/05/18 | 345275 | macros/latex/contrib/l3experimental/l3str-format.pdf 2020/05/18 | 3433424 | systems/win32/w32tex/win64/luajittex-exp-w64.tar.xz @@ -327,19 +424,18 @@ 2020/05/18 | 2561368 | systems/win32/miktex/setup/windows-x64/miktexsetup-2.9.7442-x64.zip 2020/05/18 | 25216 | systems/texlive/tlnet/archive/l3experimental.r55205.tar.xz 2020/05/18 | 24896 | macros/latex/contrib/l3experimental/l3graphics.dtx -2020/05/18 | 24269837 | systems/texlive/tlnet/install-tl.zip +2020/05/18 | 2481172 | systems/win32/w32tex/tex4htk-w32.tar.xz 2020/05/18 | 2272 | systems/texlive/tlnet/archive/glossaries-nynorsk.source.r55189.tar.xz 2020/05/18 | 2216 | systems/texlive/tlnet/archive/exercises.r55188.tar.xz 2020/05/18 | 2200324 | systems/win32/miktex/setup/windows-x86/miktexsetup-2.9.7442.zip -2020/05/18 | 2199764 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2020/05/18 | 219412 | systems/texlive/tlnet/archive/texlive-scripts.doc.r55199.tar.xz 2020/05/18 | 2151764 | systems/texlive/tlnet/archive/newcomputermodern.r55200.tar.xz +2020/05/18 | 21474 | macros/pdftex/mptopdf/tex/context/base/mkii/supp-mis.mkii 2020/05/18 | 208672 | fonts/newcomputermodern/NewCMMono10-Bold.otf 2020/05/18 | 20653 | macros/context/contrib/context-vim.zip 2020/05/18 | 20465 | macros/latex/contrib/l3experimental/l3draw-softpath.dtx 2020/05/18 | 2008 | fonts/newtx/vf/ntxbsym.vf 2020/05/18 | 2004 | fonts/newtx/vf/ntxsym.vf -2020/05/18 | 19380365 | systems/texlive/tlnet/install-tl-windows.exe 2020/05/18 | 1912 | macros/latex/contrib/l3experimental/l3draw.ins 2020/05/18 | 182528 | systems/texlive/tlnet/archive/luatexja.r55207.tar.xz 2020/05/18 | 18102324 | systems/win32/w32tex/luatex-dev-w32.tar.xz @@ -354,7 +450,6 @@ 2020/05/18 | 1668 | fonts/newpx/vf/zplsym.vf 2020/05/18 | 16674 | fonts/newpx/README 2020/05/18 | 166356 | systems/texlive/tlnet/archive/readablecv.doc.r55190.tar.xz -2020/05/18 | 16441800 | systems/texlive/tlnet/tlpkg/texlive.tlpdb 2020/05/18 | 1630 | macros/latex/contrib/l3experimental/xgalley.ins 2020/05/18 | 162124 | systems/texlive/tlnet/archive/texlive-docindex.doc.r55196.tar.xz 2020/05/18 | 1600 | fonts/newpx/tfm/zplbsym.tfm @@ -369,13 +464,9 @@ 2020/05/18 | 1559 | macros/latex/contrib/l3experimental/l3graphics.ins 2020/05/18 | 1559 | macros/latex/contrib/l3experimental/l3cctab.ins 2020/05/18 | 1547 | macros/latex/contrib/l3experimental/l3color.ins -2020/05/18 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 2020/05/18 | 1536 | macros/latex/contrib/l3experimental/l3pdf.ins -2020/05/18 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 2020/05/18 | 151859 | systems/win32/miktex/tm/packages/vcell.tar.lzma 2020/05/18 | 150228 | systems/texlive/tlnet/archive/vcell.doc.r55191.tar.xz -2020/05/18 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2020/05/18 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 2020/05/18 | 1416 | fonts/newtx/vf/ntxsyc.vf 2020/05/18 | 1416 | fonts/newtx/vf/ntxbsyc.vf 2020/05/18 | 1356 | macros/latex/contrib/l3experimental/l3draw-code.tex @@ -387,8 +478,10 @@ 2020/05/18 | 1175333 | systems/win32/miktex/tm/packages/circuitikz.tar.lzma 2020/05/18 | 116328 | systems/texlive/tlnet/archive/bidi.r55193.tar.xz 2020/05/18 | 11409 | macros/latex/contrib/l3experimental/l3sys-shell.dtx +2020/05/18 | 112660 | systems/texlive/tlnet/tlpkg/translations/ru.po 2020/05/18 | 1116 | macros/latex/contrib/l3experimental/l3pdf-code.tex 2020/05/18 | 1104015 | systems/win32/miktex/tm/packages/xepersian.tar.lzma +2020/05/18 | 110048 | systems/texlive/tlnet/tlpkg/translations/sr.po 2020/05/18 | 10961788 | systems/win32/w32tex/win64/xetex-w64.tar.xz 2020/05/18 | 107860 | systems/texlive/tlnet/install-tl 2020/05/18 | 1061508 | systems/texlive/tlnet/archive/circuitikz.doc.r55203.tar.xz @@ -601,7 +694,6 @@ 2020/05/17 | 355 | macros/luatex/generic/luatexja/doc/luatexja.ins 2020/05/17 | 34903 | systems/win32/miktex/tm/packages/miktex-axohelp-bin-x64-2.9.tar.lzma 2020/05/17 | 34805 | systems/win32/miktex/tm/packages/miktex-mspack-bin-x64-2.9.tar.lzma -2020/05/17 | 34544676 | systems/win32/w32tex/ltxpkgs.tar.xz 2020/05/17 | 33991 | macros/latex/contrib/exercises/exercises.dtx 2020/05/17 | 3371 | macros/luatex/generic/luatexja/src/patches/lltjp-xunicode.sty 2020/05/17 | 33458 | macros/luatex/generic/luatexja/src/addons/luatexja-ajmacros.sty @@ -859,7 +951,6 @@ 2020/05/16 | 147086 | macros/latex/contrib/vcell/vcell.pdf 2020/05/16 | 14616 | macros/xetex/latex/xepersian/img/weather/rain.jpg 2020/05/16 | 14298 | macros/latex/contrib/hyperref/doc/manual.css -2020/05/16 | 139752796 | systems/win32/w32tex/context.tar.xz 2020/05/16 | 13804 | macros/xetex/latex/xepersian/undk-0.6.py 2020/05/16 | 13749 | macros/latex/contrib/readablecv/ReadableCV.cls 2020/05/16 | 1341 | macros/xetex/latex/bidi/bidi-doc-intro.ltx @@ -876,6 +967,7 @@ 2020/05/16 | 10500812 | systems/win32/w32tex/ptex-w32.tar.xz 2020/05/16 | 10166 | macros/latex/contrib/vcell/vcell.tex 2020/05/15 | 9772 | macros/latex/contrib/l3kernel/l3docstrip.dtx +2020/05/15 | 969446 | macros/latex/contrib/toptesi/toptesi.pdf 2020/05/15 | 9656 | macros/latex/contrib/l3kernel/l3unicode.dtx 2020/05/15 | 9450 | macros/latex/contrib/l3kernel/l3flag.dtx 2020/05/15 | 9193 | macros/latex/contrib/etoc/README.md @@ -1010,6 +1102,7 @@ 2020/05/15 | 416503 | macros/latex/contrib/l3packages/xtemplate.pdf 2020/05/15 | 41238 | macros/latex/contrib/l3kernel/l3sort.dtx 2020/05/15 | 40709 | macros/latex/contrib/l3kernel/l3tl-analysis.dtx +2020/05/15 | 405918 | macros/latex/contrib/toptesi/toptesi.dtx 2020/05/15 | 3929 | fonts/etbb/tex/OT1ETbb-TOsF.fd 2020/05/15 | 3929 | fonts/etbb/tex/LY1ETbb-TOsF.fd 2020/05/15 | 39276 | macros/latex/contrib/l3packages/xfrac.dtx @@ -1547,6 +1640,7 @@ 2020/05/15 | 1604 | fonts/etbb/tfm/ETbb-Regular-tlf-ts1--base.tfm 2020/05/15 | 1594773 | systems/win32/miktex/tm/packages/babel.tar.lzma 2020/05/15 | 15708 | macros/latex/contrib/l3kernel/l3final.dtx +2020/05/15 | 1568520 | macros/latex/contrib/toptesi/toptesi-scudo-example.zip 2020/05/15 | 1544412 | macros/latex/contrib/l3kernel/interface3.pdf 2020/05/15 | 152430 | macros/latex/contrib/l3kernel/l3news08.pdf 2020/05/15 | 152223 | fonts/etbb/type1/ETbb-Bold.pfb @@ -1645,9 +1739,7 @@ 2020/05/15 | 105108 | macros/latex/contrib/l3kernel/l3news05.pdf 2020/05/15 | 100320 | fonts/etbb/opentype/ETbb-Italic.otf 2020/05/15 | 100071 | macros/latex/contrib/l3packages/xtemplate.dtx -2020/05/14 | 99168152 | systems/win32/w32tex/web2c-lib.tar.xz 2020/05/14 | 989448 | systems/texlive/tlnet/archive/hyperxmp.doc.r55130.tar.xz -2020/05/14 | 93904904 | systems/win32/w32tex/TLW64/tl-win64.zip 2020/05/14 | 6028 | systems/texlive/tlnet/archive/xepersian-hm.source.r55123.tar.xz 2020/05/14 | 517016 | dviware/dvidvi/configure.texk 2020/05/14 | 5016 | systems/texlive/tlnet/archive/xepersian-hm.r55123.tar.xz @@ -1655,6 +1747,7 @@ 2020/05/14 | 454256 | systems/texlive/tlnet/archive/antanilipsum.doc.r55129.tar.xz 2020/05/14 | 43658 | dviware/dvidvi/Makefile.in 2020/05/14 | 432 | systems/texlive/tlnet/archive/collection-langitalian.r55129.tar.xz +2020/05/14 | 431926 | macros/latex/contrib/toptesi/toptesi-it.tex 2020/05/14 | 389740 | systems/texlive/tlnet/archive/lwarp.source.r55122.tar.xz 2020/05/14 | 381532 | systems/texlive/tlnet/archive/anonymous-acm.doc.r55121.tar.xz 2020/05/14 | 37004 | systems/texlive/tlnet/archive/tikztosvg.doc.r55132.tar.xz @@ -1678,7 +1771,6 @@ 2020/05/14 | 2422672 | systems/texlive/tlnet/archive/erewhon.r55128.tar.xz 2020/05/14 | 2110208 | systems/texlive/tlnet/archive/luajittex.win32.r55133.tar.xz 2020/05/14 | 209 | macros/latex/contrib/beamer-contrib/beamerappendixnote/example-basic.tex -2020/05/14 | 1829396 | systems/win32/w32tex/jtex-w32.tar.xz 2020/05/14 | 1822160 | systems/texlive/tlnet/archive/luatex.win32.r55133.tar.xz 2020/05/14 | 175164 | systems/texlive/tlnet/archive/lwarp.r55122.tar.xz 2020/05/14 | 173436 | systems/texlive/tlnet/archive/emojicite.doc.r55131.tar.xz @@ -1693,41 +1785,3 @@ 2020/05/14 | 10788 | systems/texlive/tlnet/archive/hyperxmp.r55130.tar.xz 2020/05/14 | 10737 | macros/latex/contrib/beamer-contrib/beamerappendixnote/example-basic.pdf 2020/05/14 | 10376 | systems/texlive/tlnet/archive/antanilipsum.r55129.tar.xz -2020/05/13 | 86417 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm -2020/05/13 | 8411 | macros/luatex/latex/emojicite/emojicite-doc.tex -2020/05/13 | 7979 | macros/latex/contrib/hyperxmp/einstein-xmp.tex -2020/05/13 | 783363 | macros/latex/required/babel/base/babel.pdf -2020/05/13 | 7815 | macros/latex/required/babel/base/README.md -2020/05/13 | 77679 | macros/latex/contrib/hyperxmp/einstein2.pdf -2020/05/13 | 755936 | macros/latex/required/babel/base/locale.zip -2020/05/13 | 7392 | macros/latex/required/babel/base/babel.ins -2020/05/13 | 70830 | macros/latex/contrib/hyperxmp/einstein1.pdf -2020/05/13 | 657124 | macros/latex/required/babel/base/babel.dtx -2020/05/13 | 5044144 | fonts/erewhon.zip -2020/05/13 | 489225 | systems/win32/miktex/tm/packages/xepersian-hm.tar.lzma -2020/05/13 | 468638 | macros/latex/contrib/antanilipsum.zip -2020/05/13 | 456219 | macros/latex/contrib/antanilipsum/antanilipsum.pdf -2020/05/13 | 385905 | systems/win32/miktex/tm/packages/anonymous-acm.tar.lzma -2020/05/13 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx -2020/05/13 | 3466 | macros/latex/contrib/hyperxmp/gglo-hyxmp.ist -2020/05/13 | 3442 | macros/latex/contrib/hyperxmp/gind-hyxmp.ist -2020/05/13 | 3184757 | systems/win32/miktex/tm/packages/lwarp.tar.lzma -2020/05/13 | 3133 | macros/luatex/latex/emojicite/emojicite.sty -2020/05/13 | 2791 | macros/luatex/latex/emojicite/README.md -2020/05/13 | 2675092 | install/macros/latex/required/babel-base.tds.zip -2020/05/13 | 2249 | macros/latex/contrib/hyperxmp/README -2020/05/13 | 21938 | support/tikztosvg.zip -2020/05/13 | 21932 | macros/latex/required/babel/base/bbcompat.dtx -2020/05/13 | 216819 | macros/latex/contrib/hyperxmp/hyperxmp.dtx -2020/05/13 | 210 | macros/luatex/latex/emojicite/example.tex -2020/05/13 | 2036 | macros/latex/contrib/hyperxmp/hyperxmp.ins -2020/05/13 | 19025 | macros/luatex/latex/emojicite/LICENSE.txt -2020/05/13 | 175991 | macros/luatex/latex/emojicite/emojicite-doc.pdf -2020/05/13 | 175160 | macros/luatex/latex/emojicite.zip -2020/05/13 | 1712831 | macros/latex/required/babel/base.zip -2020/05/13 | 1649 | macros/latex/contrib/antanilipsum/README.md -2020/05/13 | 158506 | macros/latex/contrib/antanilipsum/antanilipsum.dtx -2020/05/13 | 1303174 | macros/latex/contrib/hyperxmp/hyperxmp.pdf -2020/05/13 | 1197048 | install/macros/latex/contrib/hyperxmp.tds.zip -2020/05/13 | 1185862 | macros/latex/contrib/hyperxmp.zip -2020/05/13 | 114314 | macros/latex/contrib/hyperref/ChangeLog.txt diff --git a/graphics/euflag/MANIFEST b/graphics/euflag/MANIFEST index b9ce8d33b3..10e0c903de 100644 --- a/graphics/euflag/MANIFEST +++ b/graphics/euflag/MANIFEST @@ -1,5 +1,6 @@ -README.md -MANIFEST euflag.dtx euflag.ins euflag.pdf +MANIFEST +README.md +VERSION diff --git a/graphics/euflag/README.md b/graphics/euflag/README.md index 09c6b0d927..9551743a2c 100644 --- a/graphics/euflag/README.md +++ b/graphics/euflag/README.md @@ -1,120 +1,98 @@ -# euflag - -This is the README.md file for the euflag LaTeX package v0.4 (2019-02-02) - -##Summary -%% This package implements a single command \euflag which reproduces the -official flag of the European Union using just the built-in picture -environment, with the _xcolor_ and _graphicx_ packages and the _amssymb_ -font. -%% The flag is reproduced at 1em high based on the current font size, so it -can be scaled arbitrarily by changing the font size (see examples in ). -%% \begingroup\centering\fontsize{230}{0}\selectfont\euflag\par\endgroup - - -##Normal installation - -If this package is distributed from CTAN, it should be in a zip file -which allows it to be installed automatically by the TeX Live update -manager _tlmgr_ and similar automated installers. If you are using -automated package installation, no further action is required. +[//]: # (euflag LaTeX package) -##TDS installation +# euflag -This package is also available as a `.tds.zip` file. TDS is the TeX -Directory Structure, the standard layout for a modern TeX installation. -This enables the package to be unzipped directly into your Personal TeX -Directory (see below for what this is and how to create one on your -system). +This is the README.md file for the euflag LaTeX package v0.7 (2020-05-16) +generated by ClassPack v.1.19 (2020-05-19) on 20 May 2020 at 19:09:55 - * Install it on any TDS-compliant personal system (laptop, desktop, -workstation, table, smartphone, PDA, etc) by unzipping it straight into -your Personal TeX Directory (folder). This will put all the files into -the right places, so you can start using them immediately. +## Summary +This package implements a single command `\euflag` which reproduces the +official flag of the European Union (EU) using just the built-in picture +environment, with the _xcolor_ and _graphicx_ packages and the _amssymb_ +font. - * If you haven't yet created a personal TeX directory, see below for -details of what one is, and how to create it. +The flag is reproduced at 1em high based on the current font size, so it +can be scaled arbitrarily by changing the font size locally (see +examples in the informal table labelled ‘examples’ in §2). An option +allows for the flag to be aligned on the bottom star. +[Raw LaTeX code omitted here: see PDF doc] - * On a shared (multiuser) system like a server, unzip it into the -$TEXMFLOCAL directory instead (see below), and run your TeX -directory-indexing program (eg _texhash__mktexlsr_, etc) so that -everyone can use it. +## Automated installation +If this package is distributed from CTAN, it should be in a zip file +which allows it to be installed automatically by the TeX Live Manager +(tlmgr) and similar automated installers. + +If you are using automated LaTeX package installation, no further action +is required: the package will be installed the first time you use it in +a LaTeX document. + +If you are using the TeX Live Manager (_tlmgr_) program manually, you +can install this package with the command: + + $ tlmgr install euflag + + +## TDS installation + +This package is also available as a TeX Directory System (TDS) zip file +(`.tds.zip`). This is the standard directory layout for a modern TeX +installation which enables the package to be unzipped directly into your +Personal TeX Directory without the need to use _tlmgr_. If you haven’t +yet created a Personal TeX Directory, see below for details of what one +is, and how to create it. + * You can install this package on any TDS-compliant personal system +(laptop, desktop, workstation, table, smartphone, PDA, etc) by unzipping +it straight into your Personal TeX Directory. This will put all the +files into the right places, so you can start using them immediately. + * On a shared (multiuser) system like a server, the administrator can +unzip it into the `$TEXMFLOCAL` directory instead (see below), and run +your TeX directory-indexing program (eg _texhash_, _mktexlsr_, etc) so +that everyone can use it. * If you are using an old non-TDS-compliant system, see below under Manual Installation. +### Your Personal TeX Directory -###Your Personal TeX Directory - -This is a directory (folder) on single-user systems where you should put -all your local manual modifications (updates, and additions such as new -or updated classes, packages, and fonts) that are _not_ handled -automatically by the TeX Live update manager (_tlmgr_). The name and -location are fixed: - - -
- -
Apple Mac OS X - -
+This is a directory (folder) where you should put all local manual +modifications (updates, additions such as new or updated classes, +packages, and fonts) that are _not_ handled automatically by _tlmgr_. +The name and location are fixed (for all practical purposes): + * Apple Mac OS X -
`~/Library/texmf` + ~/Library/texmf + * Unix and GNU/Linux -
+ ~/texmf + * MS-Windows 95/XP/NT -
Unix and GNU/Linux + C:\texmf + * MS-Windows 2007 and above -
- -
`~/texmf` - -
- -
MS-Windows 95/XP - -
- -
`C:\texmf` - -
- -
MS-Windows 2007 and above - -
- -
`Computer\System\YOURNAME\texmf` - -
- -
+ Computer\System\YOURNAME\texmf Create that folder now if it does not already exist. Put (or unzip) all -additions to your system that are not handled by _tlmgr_ into this +additions to your system that are _not_ handled by _tlmgr_ into this directory, following _exactly_ the subdirectory structure that is used in your main TeX distribution (unzipping a TDS file does this for you). This is what enables LaTeX to find stuff automatically. -> #### If you are a Windows user running _MiKTeX_ - - #### - -> When you create the folder, you must add it to _MiKTeX_'s list of supported folders. Run the _MiKTeX Maintenance/Settings_ program, select the `Roots` tab, and add the folder. You only have to do this once. -> -> Each time you add or remove software in your personal TeX folder, you _must_ also click on the `Update FNDB` button in the `General` tab. +> #### If you are a Windows user running _MiKTeX_ +> When you create the folder for your Personal TeX Directory, you MUST add it to _MiKTeX_ ’s list of supported folders. Run the _MiKTeX Maintenance/Settings_ program, select the `Roots` tab, and add the folder. You only have to do this once. +> > Each time you add or remove software in your Personal TeX Directory, you MUST then click on the `Update FNDB` button in the `General` tab of the _MiKTeX Maintenance/Settings_ program, otherwise _MiKTeX_ will not find them and nothing will work! > Unix (Mac and GNU/Linux) users do not need to (indeed, should not) run -their filename database indexer (_mktexlsr_ or _texhash_) for files put -in your personal TeX directory. +their filename database indexer program (_mktexlsr_ or _texhash_) for +files put into a personal TeX directory. -##Installation on shared systems +## Installation on shared systems On multi-user systems (Unix-based), identify the shared local directory tree with the command @@ -122,30 +100,36 @@ tree with the command kpsewhich -expand-var '$TEXMFLOCAL' This will give you the location of the shared `texmf` directory into -which you must install these files. +which you must unzip these files. -Do not forget to run the _texhash_ or _mktexlsr_ (filename indexer) -program after installation, otherwise the files will not be found by -LaTeX and nothing will work! +Do not forget to run your local TeX filename database indexer program +(_texhash_ or _mktexlsr_) after installation, otherwise the files will +not be found by LaTeX and nothing will work! -##Manual installation (non-TDS systems) +## Manual installation (non-TDS systems) -To install this software manually, unzip the zip file into a temporary -directory and move the class and/or package file[s] from the -`tex/latex/euflag` directory to a location (directory/folder) where -LaTeX will find it on your system. This is referred to in some -documentation as “the TEXINPUTS directory”, although it may be called -something else on your system. +To install this software manually, download and unzip the _non-_TDS zip +file into a temporary directory and move the class and/or package +file[s] and other files to the proper locations where LaTeX will find +them on your system. This is referred to in some documentation as “the +`TEXINPUTS` directory”, although it may be called something else on your +system. _It is your responsibility to know where this location is._ See the -question in the TeX FAQ at -http://www.tex.ac.uk/cgi-bin/texfaq2html?label=inst-wlcf for more -information. If you do not know, or cannot find it, or do not have -access to it, your TeX system may be out of date and need replacing. +question in the TeX FAQ at https://texfaq.org/FAQ-inst-wlcf.html for +more information. If you do not know, or cannot find it, or do not have +access to it, your TeX system may be out of date and may need replacing. + -##Last resort +## Online systems and “last resort” systems + +Some online LaTeX systems use CTAN, so a package from there should be +available on demand. For other online LaTeX systems where you do not +have access to the file system, unzip the _non-_TDS zip file into a +temporary directory and upload the files to the online system. Follow +their instructions for where to put them. In an emergency, or as a last resort on unmanageable systems, it is possible simply to put the class and/or package file[s] into your @@ -155,32 +139,36 @@ While this may work, it is not supported, and may lead to other resources (packages, fonts, images etc) not being found. -##Usage +## Usage -Make this the first line of your LaTeX document: +Include the line shown below in the Preamble of your LaTeX document; a +`\documentclass` line should be at the top; a `\usepackage` command +normally goes anywhere in the Preamble: - \usepackage[options]{} + \usepackage[options]{euflag} -(or other class or package if more than one is supplied). Read the -documentation for the options available. The documentation is -distributed as a PDF document in the zip file. You can also regenerate -it by typesetting the `euflag.dtx` file with `xelatex` (and `biber` and -_makeindex_) in the normal way. +(similarly for other classes or packages if more than one is supplied +with this package). Read the documentation for the options available, if +any. The documentation is distributed as a PDF document in the zip file. +You can also regenerate it by typesetting the `euflag.dtx` file with +`xelatex` (and `biber` and _makeindex_) in the normal way. -##Bugs and TODO +## Bugs and TODO No outstanding reported bugs at the time of this version. +For TODO items, see the PDF documentation. + -##Copyright +## Copyright The following statement is included in the source code: Transformed from euflag.xml by ClassPack db2dtx.xsl - version 1.10 (2019-01-22) on Sunday 3 February 2019 at 21:19:20 + version 1.19 (2020-05-19) on Wednesday 20 May 2020 at 19:09:55 - euflag.sty is copyright © 2019 by Peter Flynn + euflag.sty is copyright © 2019-2020 by Peter Flynn This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either diff --git a/graphics/euflag/VERSION b/graphics/euflag/VERSION index 0d1eb927c7..cba817f265 100644 --- a/graphics/euflag/VERSION +++ b/graphics/euflag/VERSION @@ -1 +1 @@ -Date of most-recently-changed file is 2019-02-03T21:19:00 +Date of most recent change is 2020-05-16 diff --git a/graphics/euflag/classpack.sty b/graphics/euflag/classpack.sty deleted file mode 100644 index 65c6381369..0000000000 --- a/graphics/euflag/classpack.sty +++ /dev/null @@ -1,112 +0,0 @@ -%% -%% This is file `classpack.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% classpack.dtx (with options: `package') -%% -%% This is a generated file. -%% -%% Copyright © 2009-2013 by Silmaril Consultants -%% -%% This file was generated from an XML master source. -%% Amendments and corrections should be notified to the -%% maintainer for inclusion in future versions. -%% -\NeedsTeXFormat{LaTeX2e}[2015/01/01] -\ProvidesPackage{classpack}[2019/01/22 v1.10 - A literate-programming solution to class and package maintenance] -%% -%% Packages required -%% -%% Provide for graphics (PNG, JPG, or PDF format (only) for pdflatex; EPS format (only) for standard \LaTeX{}). -\RequirePackage{graphicx} -%% Additional column formatting types for tables. -\RequirePackage{array} -%% Handling of URI formatting. -\RequirePackage{url} -\@ifundefined{c@IndexColumns}{}{\setcounter{IndexColumns}{2}} -\setlength{\columnsep}{3pc} -\def\MacroFont{\fontencoding\encodingdefault - \ttfamily\fontseries{m}\fontshape\updefault - \small\selectfont\color{DarkBlue}} -\newlength{\revmarg} -\setlength{\revmarg}{25mm} -\renewcommand*\l@subsection{% - \@dottedtocline{2}{1.5em}{2.7em}} -\renewcommand*\l@subsubsection{% - \@dottedtocline{3}{4.2em}{3.6em}} -\renewcommand{\@pnumwidth}{3em} -\renewcommand{\@tocrmarg}{4em plus1fil} -\renewcommand\appendix{\par - \setcounter{section}{0}% - \setcounter{subsection}{0}% - \gdef\thesection{\@Alph\c@section}} -\def\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX - \kern-.0333emt} -\def\tubreflect#1{% - \@ifundefined{reflectbox}{% - \PackageError{classpack}% - {A graphics package must be loaded for \string\XeTeX}% - {Add the graphicx package to your Preamble}% - }{% otherwise OK - \ifdim \fontdimen1\font>0pt - \raise 1.75ex \hbox{\kern.1em - \rotatebox{180}{#1}}\kern-.1em - \else - \reflectbox{#1}% - \fi - }% -} -\def\tubhideheight#1{\setbox0=\hbox{#1}% - \ht0=0pt \dp0=0pt \box0 } -\DeclareRobustCommand\Xe[1]{\leavevmode - \tubhideheight{\hbox{X% - \setbox0=\hbox{\TeX}\setbox1=\hbox{E}% - \lower\dp0\hbox{\raise\dp1\hbox{% - \kern-.125em\tubreflect{E}}}% - \kern-.1667em #1}}} -\def\XeTeX{\Xe\TeX} -\def\XeLaTeX{\Xe{\,\LaTeX}} -\DeclareRobustCommand\SMC{% - \ifx\@currsize\normalsize\small\else - \ifx\@currsize\small\footnotesize\else - \ifx\@currsize\footnotesize\scriptsize\else - \ifx\@currsize\large\normalsize\else - \ifx\@currsize\Large\large\else - \ifx\@currsize\LARGE\Large\else - \ifx\@currsize\scriptsize\tiny\else - \ifx\@currsize\tiny\tiny\else - \ifx\@currsize\huge\LARGE\else - \ifx\@currsize\Huge\huge\else - \small\SMC@unknown@warning - \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi -} -\newcommand\SMC@unknown@warning{\PackageError{classpack}% - {\string\SMC: nonstandard text font size command -- using - \string\small}% - {Check the font size or scaling for \the\@currsize}} -\newcommand\textSMC[1]{{\SMC #1}} - \def\Bib{% - \ifdim \fontdimen1\font>0pt - B{\SMC\SMC IB}% - \else - \textsc{Bib}% - \fi -} -\def\BibTeX{\Bib\kern-.08em \TeX} -\let\BiBTeX\BibTeX -\let\BIBTeX\BibTeX -\newcommand{\vstrut}{\vrule height1.2em depth.6667ex width0pt} -\def\menusep{\thinspace$\rightarrow$\thinspace\allowbreak} -\newcommand{\prestrut}{\vrule height1em width0pt} -\newcommand{\poststrut}{\vrule depth.5ex width0pt} -\hyphenation{ele-ment ele-ments attri-bute attri-butes - docu-ment docu-ments primi-tive helico-pter} -\renewcommand*\descriptionlabel[1]{% - \hspace\labelsep\sffamily\bfseries #1} - -\endinput -%% -%% End of file `classpack.sty'. diff --git a/graphics/euflag/euflag.dtx b/graphics/euflag/euflag.dtx index 83dfd31f13..a6bc7ca845 100644 --- a/graphics/euflag/euflag.dtx +++ b/graphics/euflag/euflag.dtx @@ -1,9 +1,9 @@ % \iffalse meta-comment % % Transformed from euflag.xml by ClassPack db2dtx.xsl -% version 1.10 (2019-01-22) on Sunday 3 February 2019 at 21:19:20 +% version 1.19 (2020-05-19) on Wednesday 20 May 2020 at 19:09:55 % -% euflag.dtx is copyright © 2019 by Peter Flynn +% euflag.dtx is copyright © 2019-2020 by Peter Flynn % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -26,16 +26,16 @@ % \fi % \iffalse %\NeedsTeXFormat{LaTeX2e}[2016/02/01] -%\ProvidesPackage{euflag}[2019/02/02 v0.4 -% European Union Flag] +%\ProvidesPackage{euflag}[2020/05/16 v0.7 +% European Union Flag] %<*driver> \RequirePackage{fix-cm}% included by default. -\PassOptionsToPackage{svgnames}{xcolor}% xcolor or hyperref in use +\PassOptionsToPackage{svgnames}{xcolor}% xcolor/dox/hyperref implied \documentclass[12pt]{ltxdoc} %% %% Packages added for documentation %% -\usepackage{dox}% included by default. (0) +\usepackage{dox}% used by default. (0)% \makeatletter \doxitem[idxtype=attribute]{Attribute}{CPK@attribute}{attributes} \makeatother @@ -64,9 +64,15 @@ \doxitem[idxtype=error]{Error}{CPK@error}{errors} \makeatother \makeatletter + \doxitem[idxtype=field]{Field}{CPK@field}{fields} + \makeatother + \makeatletter \doxitem[idxtype=file]{File}{CPK@file}{files} \makeatother \makeatletter + \doxitem[idxtype=font]{Font}{CPK@font}{fonts} + \makeatother + \makeatletter \doxitem[idxtype=function]{Function}{CPK@function}{functions} \makeatother \makeatletter @@ -85,7 +91,10 @@ \doxitem[idxtype=package]{Package}{CPK@package}{packages} \makeatother \makeatletter - \doxitem[idxtype=progvar]{Prog}{CPK@prog}{progvars} + \doxitem[idxtype=variable]{Variable}{CPK@variable}{variables} + \makeatother + \makeatletter + \doxitem[idxtype=parameter]{Parameter}{CPK@parameter}{parameters} \makeatother \makeatletter \doxitem[macrolike,idxtype=switch]{Switch}{CPK@switch}{switches} @@ -97,14 +106,11 @@ \doxitem[idxtype=typeface]{Typeface}{CPK@typeface}{typefaces} \makeatother \makeatletter - \doxitem[idxtype=font]{Font}{CPK@font}{fonts} - \makeatother - \makeatletter \doxitem[macrolike,idxtype=box]{Box}{CPK@box}{boxes} \makeatother \newcommand{\LabelFont}[2][\relax]{\strut {\fontencoding\encodingdefault - \fontfamily{lmtt}\fontseries{lc}#1\selectfont#2}\space} + \fontfamily{lmtt}\fontseries{lc}#1\selectfont#2}\space} \makeatletter \let\CPK@macro\macro\let\CPK@endmacro\endmacro \makeatother @@ -132,51 +138,69 @@ \def\PrintPackageName#1{\LabelFont[\fontfamily{lmss}]{#1}} \def\PrintSwitchName#1{\LabelFont{#1}} \def\PrintTemplateName#1{\LabelFont[\bfseries]{#1}} -%% fontenc omitted: conflicts with fontspec (3) -%% inputenc omitted: conflicts with fontspec (5) -\usepackage{fontspec}% a part/@conformance='xelatex' was detected. (6) -\usepackage{libertine}% requested by author (26) -\usepackage[scaled=0.9]{raleway}% requested by author (27) + \def\PrintVariableName#1{\LabelFont[\ttfamily]{#1}} + \def\PrintParameterName#1{\LabelFont[\ttfamily]{#1}} + \def\PrintFieldName#1{\LabelFont[\ttfamily]{#1}} +%% fontenc omit: conflict: fontspec (3) +%% inputenc omit: conflict: fontspec (4) +\usepackage{fontspec}% part/@conformance=xelatex detected. (7)% +\usepackage{libertine}% requested by author (27)% +\usepackage[scaled=0.9]{raleway}% requested by author (28)% \renewcommand{\textsc}[1]{{\smaller\MakeTextUppercase{#1}}} -\usepackage{mflogo}% included by default. (34) -\usepackage[british]{babel}% included by default. (39) +\usepackage{mflogo}% used by default. (35)% +\usepackage[british]{babel}% used by default. (40)% \usepackage[backend=biber,doi=true, - isbn=true,url=true,uniquename=false,style=apa]{biblatex}% a bibliography/@arch='biblatex' was detected. (40) + isbn=true,url=true,uniquename=false,style=apa]{biblatex}% bibliography/@arch=biblatex detected. (41)% \makeatletter - \@ifpackagewith{babel}{british}{% - \DeclareLanguageMapping{british}{british-apa}}{\relax} + \AtBeginDocument{% + \setlength{\bibitemsep}{1ex}% + \setlength{\bibnamesep}{1.5\itemsep}% + \defbibheading{shortbib}[References]% + {\section{#1}}} + \@ifpackagewith{babel}{british}{% + \DeclareLanguageMapping{british}% + {british-apa}}{\relax} \makeatother - \setlength{\bibnamesep}{1.5\itemsep} \makeatletter \providetoggle{blx@skipbiblist} \makeatother -\usepackage{csquotes}% a bibliography/@arch='biblatex' was detected. (41) -\usepackage{array}% requested by author (44) -\usepackage{calc}% included by default. (47) +\usepackage{csquotes}% bibliography/@arch=biblatex detected. (43)% +\usepackage{array}% requested by author (46)% +\usepackage{calc}% used by default. (49)% \makeatletter {\scriptsize \global\advance\@totalleftmargin by1em \global\advance\MacroIndent by.5em} \makeatother -\usepackage{ccaption}% included by default. (49) +\usepackage{ccaption}% used by default. (52)% \captionnamefont{\bfseries} \captionstyle{\raggedright} -\usepackage{draftwatermark}% requested by author (52) -\usepackage[inline]{enumitem}% requested by author (53) +\usepackage[inline]{enumitem}% requested by author (56)% \setlist[description]{style=unboxed} \setlist[itemize]{leftmargin=2em} \setlist[enumerate]{leftmargin=2em} \newlist{inlineenum}{enumerate*}{1} \setlist[inlineenum,1]{label=\emph{\alph*}), - itemjoin={{; }},itemjoin*={{, and }}} -\usepackage{fancybox}% use of 'note' was detected (54) -\usepackage{fancyvrb}% use of 'bibliography' was detected (57) -\usepackage{relsize}% use of 'acronym' was detected (61) -\usepackage{textcase}% included by default. (64) + itemjoin={{; }},itemjoin*={{; and }}} +\usepackage{fancybox}% use of 'note' detected (57)% +\usepackage{fancyvrb}% use of 'bibliography' detected (60)% +\usepackage{relsize}% use of 'acronym' detected (64)% +\usepackage{textcase}% used by default. (67)% +\usepackage{float}% used by default. (69)% + \renewcommand{\topfraction}{.85} + \renewcommand{\bottomfraction}{.7} + \renewcommand{\textfraction}{.15} + \renewcommand{\floatpagefraction}{.66} + \renewcommand{\dbltopfraction}{.66} + \renewcommand{\dblfloatpagefraction}{.66} + \setcounter{topnumber}{9} + \setcounter{bottomnumber}{9} + \setcounter{totalnumber}{20} + \setcounter{dbltopnumber}{9} \usepackage[a4paper,left=30mm,top=25mm, - textwidth=150mm,textheight=225mm]{geometry}% included by default. (67) -\usepackage{graphicx}% a part/@conformance='xelatex' was detected. (71) -\usepackage{listings}% use of 'programlisting' was detected (78) + textwidth=150mm,textheight=225mm,headheight=15pt]{geometry}% used by default. (71)% +\usepackage{graphicx}% part/@conformance=xelatex detected. (76)% +\usepackage{listings}% use of 'programlisting' detected (83)% \lstdefinelanguage{dummy} {morekeywords={dummy}} \lstdefinelanguage{Makefile} @@ -209,7 +233,8 @@ \lstdefinelanguage{bash} {morestring=[s]{[]},morekeywords={exit,logout,yes,no,@, password,ssh,URL,cd,dvips,latex,ls,makeindex,man,mkdir, - pdflatex,sudo,texconfig,texdoc,updmap,xelatex}} + pdflatex,sudo,texconfig,texdoc,updmap,xelatex,biber, + latexmk,bibtex}} \makeatother \lstdefinelanguage{APA}[]{XML} @@ -334,6 +359,7 @@ {—}{{---}}1 {’}{{'}}1 {…}{{\dots}}1 + {➝}{{$leftarrow$}}1 {⮠}{{$\hookleftarrow$}}1 {␣}{{\textvisiblespace}}1, keywordstyle=\color{DarkGreen}\bfseries, @@ -344,19 +370,19 @@ showstringspaces=false, columns=fullflexible, keepspaces=true} -\usepackage{makeidx}% included by default. (80) +\usepackage{makeidx}% used by default. (85)% \makeindex -\usepackage{nicefrac}% requested by author (85) +\usepackage{nicefrac}% requested by author (91)% \def\textonehalf{\ensuremath{\nicefrac12}} -\usepackage{parskip}% requested by author (87) -\usepackage{sectsty}% requested by author (91) - \allsectionsfont{\sffamily} +\usepackage{parskip}% requested by author (93)% +\usepackage{sectsty}% requested by author (97)% + \allsectionsfont{\sffamily\raggedright} \renewcommand*{\descriptionlabel}[1]{\hspace\labelsep \sffamily\bfseries #1} -\usepackage[normalem]{ulem}% use of 'link' was detected (97) -\usepackage{url}% requested by author (98) +\usepackage[normalem]{ulem}% use of 'link' detected (103)% +\usepackage{url}% requested by author (104)% \AtBeginDocument{\urlstyle{tt}} -\usepackage{varioref}% use of 'xref' was detected (101) +\usepackage{varioref}% use of 'xref' detected (107)% \vrefwarning \labelformat{appendix}{Appendix~#1} \makeatletter @@ -373,24 +399,25 @@ page} \def\reftextafter{on the \reftextvario{next}{following} page} -\usepackage{xcolor}% included by default. (109) +\usepackage{xcolor}% used by default. (115)% \makeatletter \@ifundefined{T}{% - \newcommand{\T}[2]{{\fontencoding{T1}\selectfont#2}}}{} + \newcommand{\T}[2]{{\fontencoding{T1}% + \selectfont#2}}}{} \makeatother -\usepackage{menukeys}% use of 'guimenu' was detected (112) +\usepackage{menukeys}% use of 'guimenu' detected (118)% \renewmenumacro{\menu}[>]{roundedmenus} \renewmenumacro{\directory}[/]{hyphenatepathswithfolder} \renewmenumacro{\keys}{shadowedroundedkeys} -\usepackage{classpack}% included by default. (114) -\usepackage{euflag}[2019/02/02]% added by specification +\usepackage{classpack}[2020/05/19]% used by default. (120)% +\usepackage{euflag}[2020/05/16]% added by spec \newcommand{\classorpackage}{package} \addbibresource{euflag.bib} \setmonofont[Scale=MatchLowercase]{zcoN} \allsectionsfont{\sffamily} % %% -%% Settings for docstrip and latexdoc +%% Settings for docstrip and ltxdoc %% \EnableCrossrefs \CodelineIndex @@ -401,24 +428,27 @@ % % \fi % -% \CheckSum{78} +% \CheckSum{94} % % \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 \~} +% 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 \~} % +% \changes{v0.7}{2020/05/16}{Regression release: 1) Updated to ClassPack 1.19; 2) Switched all conformance attributes on revision dates to YYYY-MM-DD.} +% \changes{v0.6}{2020/04/01}{Maintenance release: 1) Updated to ClassPack 1.18; 2) Switched all conformance attributes on revision dates to YYYY-MM-DD.} +% \changes{v0.5}{2019/07/24}{Separated stars from flag and added baseline option: 1) Made the ring of stars a separate macro so that they can be used on their own as well as in the flag.; 2) Added a baseline package option to align the bottom star with the text, and a command option to do it on a per-command basis..} % \changes{v0.4}{2019/02/02}{Changed the star: Changed from the bbdingFiveStar to the amssymbbigstar command..} % \changes{v0.3}{2019/02/02}{Mods to ClassPack: Added switch in db2dtx.xsl to detect the use of a package in its own documentation (as here) and code around the PassOptionsToPackage for svgnames on xcolor, which was causing an Option Clash error..} % \changes{v0.2}{2019/02/01}{Works in table cells: Fixed bug (a vfill) that was crashing (well, locking up) \LaTeX{} when euflag was used in a table cell..} @@ -427,63 +457,69 @@ % \GetFileInfo{euflag.dtx} % % \DoNotIndex{\@,\@@par,\@beginparpenalty,\@empty} -% \DoNotIndex{\@flushglue,\@gobble,\@input} -% \DoNotIndex{\@makefnmark,\@makeother,\@maketitle} -% \DoNotIndex{\@namedef,\@ne,\@spaces,\@tempa} -% \DoNotIndex{\@tempb,\@tempswafalse,\@tempswatrue} -% \DoNotIndex{\@thanks,\@thefnmark,\@topnum} -% \DoNotIndex{\@@,\@elt,\@forloop,\@fortmp,\@gtempa,\@totalleftmargin} -% \DoNotIndex{\",\/,\@ifundefined,\@nil,\@verbatim,\@vobeyspaces} -% \DoNotIndex{\|,\~,\ ,\active,\advance,\aftergroup,\begingroup,\bgroup} -% \DoNotIndex{\mathcal,\csname,\def,\documentstyle,\dospecials,\edef} -% \DoNotIndex{\egroup} -% \DoNotIndex{\else,\endcsname,\endgroup,\endinput,\endtrivlist} -% \DoNotIndex{\expandafter,\fi,\fnsymbol,\futurelet,\gdef,\global} -% \DoNotIndex{\hbox,\hss,\if,\if@inlabel,\if@tempswa,\if@twocolumn} -% \DoNotIndex{\ifcase} -% \DoNotIndex{\ifcat,\iffalse,\ifx,\ignorespaces,\index,\input,\item} -% \DoNotIndex{\jobname,\kern,\leavevmode,\leftskip,\let,\llap,\lower} -% \DoNotIndex{\m@ne,\next,\newpage,\nobreak,\noexpand,\nonfrenchspacing} -% \DoNotIndex{\obeylines,\or,\protect,\raggedleft,\rightskip,\rm,\sc} -% \DoNotIndex{\setbox,\setcounter,\small,\space,\string,\strut} -% \DoNotIndex{\strutbox} -% \DoNotIndex{\thefootnote,\thispagestyle,\topmargin,\trivlist,\tt} -% \DoNotIndex{\twocolumn,\typeout,\vss,\vtop,\xdef,\z@} -% \DoNotIndex{\,,\@bsphack,\@esphack,\@noligs,\@vobeyspaces,\@xverbatim} -% \DoNotIndex{\`,\catcode,\end,\escapechar,\frenchspacing,\glossary} -% \DoNotIndex{\hangindent,\hfil,\hfill,\hskip,\hspace,\ht,\it,\langle} -% \DoNotIndex{\leaders,\long,\makelabel,\marginpar,\markboth,\mathcode} -% \DoNotIndex{\mathsurround,\mbox,\newcount,\newdimen,\newskip} -% \DoNotIndex{\nopagebreak} -% \DoNotIndex{\parfillskip,\parindent,\parskip,\penalty,\raise,\rangle} -% \DoNotIndex{\section,\setlength,\TeX,\topsep,\underline,\unskip,\verb} -% \DoNotIndex{\vskip,\vspace,\widetilde,\\,\%,\@date,\@defpar} -% \DoNotIndex{\[,\{,\},\]} -% \DoNotIndex{\count@,\ifnum,\loop,\today,\uppercase,\uccode} -% \DoNotIndex{\baselineskip,\begin,\tw@} -% \DoNotIndex{\a,\b,\c,\d,\e,\f,\g,\h,\i,\j,\k,\l,\m,\n,\o,\p,\q} -% \DoNotIndex{\r,\s,\t,\u,\v,\w,\x,\y,\z,\A,\B,\C,\D,\E,\F,\G,\H} -% \DoNotIndex{\I,\J,\K,\L,\M,\N,\O,\P,\Q,\R,\S,\T,\U,\V,\W,\X,\Y,\Z} -% \DoNotIndex{\1,\2,\3,\4,\5,\6,\7,\8,\9,\0} -% \DoNotIndex{\!,\#,\$,\&,\',\(,\),\+,\.,\:,\;,\<,\=,\>,\?,\_} -% \DoNotIndex{\discretionary,\immediate,\makeatletter,\makeatother} -% \DoNotIndex{\meaning,\newenvironment,\par,\relax,\renewenvironment} -% \DoNotIndex{\repeat,\scriptsize,\selectfont,\the,\undefined} -% \DoNotIndex{\arabic,\do,\makeindex,\null,\number,\show,\write,\@ehc} -% \DoNotIndex{\@author,\@ehc,\@ifstar,\@sanitize,\@title,\everypar} -% \DoNotIndex{\if@minipage,\if@restonecol,\ifeof,\ifmmode} -% \DoNotIndex{\lccode,\newtoks,\onecolumn,\openin,\p@,\SelfDocumenting} -% \DoNotIndex{\settowidth,\@resetonecoltrue,\@resetonecolfalse,\bf} -% \DoNotIndex{\clearpage,\closein,\lowercase,\@inlabelfalse} -% \DoNotIndex{\selectfont,\mathcode,\newmathalphabet,\rmdefault} -% \DoNotIndex{\bfdefault,\DeclareRobustCommand} +% \DoNotIndex{\@flushglue,\@gobble,\@input,\@makefnmark} +% \DoNotIndex{\@makeother,\@maketitle,\@namedef,\@ne} +% \DoNotIndex{\@spaces,\@tempa,\@tempb,\@tempswafalse} +% \DoNotIndex{\@tempswatrue,\@thanks,\@thefnmark,\@topnum} +% \DoNotIndex{\@@,\@elt,\@forloop,\@fortmp,\@gtempa} +% \DoNotIndex{\@totalleftmargin,\",\/,\@ifundefined,\@nil} +% \DoNotIndex{\@verbatim,\@vobeyspaces,\|,\~,\ ,\active} +% \DoNotIndex{\advance,\aftergroup,\begingroup,\bgroup} +% \DoNotIndex{\mathcal,\csname,\def,\documentstyle} +% \DoNotIndex{\dospecials,\edef,\egroup,\else,\endcsname} +% \DoNotIndex{\endgroup,\endinput,\endtrivlist} +% \DoNotIndex{\expandafter,\fi,\fnsymbol,\futurelet,\gdef} +% \DoNotIndex{\global,\hbox,\hss,\if,\if@inlabel} +% \DoNotIndex{\if@tempswa,\if@twocolumn,\ifcase,\ifcat} +% \DoNotIndex{\iffalse,\ifx,\ignorespaces,\index,\input} +% \DoNotIndex{\item,\jobname,\kern,\leavevmode,\leftskip} +% \DoNotIndex{\let,\llap,\lower,\m@ne,\next,\newpage} +% \DoNotIndex{\nobreak,\noexpand,\nonfrenchspacing} +% \DoNotIndex{\obeylines,\or,\protect,\raggedleft} +% \DoNotIndex{\rightskip,\rm,\sc,\setbox,\setcounter} +% \DoNotIndex{\small,\space,\string,\strut,\strutbox} +% \DoNotIndex{\thefootnote,\thispagestyle,\topmargin} +% \DoNotIndex{\trivlist,\tt,\twocolumn,\typeout,\vss,\vtop} +% \DoNotIndex{\xdef,\z@,\,,\@bsphack,\@esphack,\@noligs} +% \DoNotIndex{\@vobeyspaces,\@xverbatim,\`,\catcode,\end} +% \DoNotIndex{\escapechar,\frenchspacing,\glossary} +% \DoNotIndex{\hangindent,\hfil,\hfill,\hskip,\hspace,\ht} +% \DoNotIndex{\it,\langle,\leaders,\long,\makelabel} +% \DoNotIndex{\marginpar,\markboth,\mathcode,\mathsurround} +% \DoNotIndex{\mbox,\newcount,\newdimen,\newskip} +% \DoNotIndex{\nopagebreak,\parfillskip,\parindent} +% \DoNotIndex{\parskip,\penalty,\raise,\rangle,\section} +% \DoNotIndex{\setlength,\TeX,\topsep,\underline,\unskip} +% \DoNotIndex{\verb,\vskip,\vspace,\widetilde,\\,\%,\@date} +% \DoNotIndex{\@defpar,\[,\{,\},\],\count@,\ifnum,\loop} +% \DoNotIndex{\today,\uppercase,\uccode,\baselineskip} +% \DoNotIndex{\begin,\tw@,\a,\b,\c,\d,\e,\f,\g,\h,\i,\j,\k} +% \DoNotIndex{\l,\m,\n,\o,\p,\q,\r,\s,\t,\u,\v,\w,\x,\y,\z} +% \DoNotIndex{\A,\B,\C,\D,\E,\F,\G,\H,\I,\J,\K,\L,\M,\N,\O} +% \DoNotIndex{\P,\Q,\R,\S,\T,\U,\V,\W,\X,\Y,\Z,\1,\2,\3,\4} +% \DoNotIndex{\5,\6,\7,\8,\9,\0,\!,\#,\$,\&,\',\(,\)} +% \DoNotIndex{\+,\.,\:,\;,\<,\=,\>,\?,\_,\discretionary} +% \DoNotIndex{\immediate,\makeatletter,\makeatother} +% \DoNotIndex{\meaning,\newenvironment,\par,\relax} +% \DoNotIndex{\renewenvironment,\repeat,\scriptsize} +% \DoNotIndex{\selectfont,\the,\undefined,\arabic,\do} +% \DoNotIndex{\makeindex,\null,\number,\show,\write,\@ehc} +% \DoNotIndex{\@author,\@ehc,\@ifstar,\@sanitize,\@title} +% \DoNotIndex{\everypar,\if@minipage,\if@restonecol,\ifeof} +% \DoNotIndex{\ifmmode,\lccode,\newtoks,\onecolumn,\openin} +% \DoNotIndex{\p@,\SelfDocumenting,\settowidth} +% \DoNotIndex{\@resetonecoltrue,\@resetonecolfalse,\bf} +% \DoNotIndex{\clearpage,\closein,\lowercase} +% \DoNotIndex{\@inlabelfalse,\selectfont,\mathcode} +% \DoNotIndex{\newmathalphabet,\rmdefault,\bfdefault} +% \DoNotIndex{\DeclareRobustCommand} % \DoNotIndex{\classorpackage} % \DoNotIndex{\euflag} % \DoNotIndex{\FiveStar} % \DoNotIndex{\bigstar} % \DoNotIndex{\PassOptionsToPackage} % \DoNotIndex{\vfill} -% \DoNotIndex{\raisebox} +% \DoNotIndex{\euflag[-.167em]} % \DoNotIndex{\scalebox} % \DoNotIndex{\colorbox} % \DoNotIndex{\fboxsep} @@ -494,8 +530,8 @@ % \def\@@doxdescribe#1#2{\endgroup \ifdox@noprint\else\marginpar{\raggedleft \textcolor{DarkRed}{\@nameuse{PrintDescribe#1}{#2}}}\fi \ifdox@noindex\else\@nameuse{Special#1Index}{#2}\fi \endgroup\@esphack\ignorespaces} % \makeatother % -% \def\fileversion{0.4} -% \def\filedate{2019/02/02} +% \def\fileversion{0.7} +% \def\filedate{2020/05/16} % \title{The \textsf{euflag} \LaTeXe\ package\thanks{% % This document corresponds to \textsf{euflag} % \textit{v.}\ \fileversion $\beta$, dated \filedate.} @@ -510,58 +546,59 @@ % \parindent=0pt% \noindent % This package implements a single command % {\ttfamily{}\textbackslash{}euflag} which reproduces the official flag -% of the European Union ({\smaller EU})\index{European Union|see{EU}}\index{EU|textbf} using +% of the European Union ({\smaller EU})\index{EU|see{European Union}}\index{European Union|textbf} using % just the built-in \texttt{picture} environment, with the % \textsf{xcolor} and \textsf{graphicx} % packages and the \textsf{amssymb} font.\par % The flag is reproduced at 1em high based on the current % font size, so it can be scaled arbitrarily by changing the -% font size (see examples in the table \vpageref{examples}).\par +% font size locally (see examples in the table \vpageref{examples}). An option allows for the flag to be +% aligned on the bottom star.\par % \begingroup\centering\fontsize{230}{0}\selectfont\euflag\par\endgroup\par % \end{abstract} % \clearpage % \tableofcontents % \clearpage % \section*{Latest changes} -% \subsection*{v.0.4 (2019-02-02)} -% \paragraph*{Changed the star} +% \subsection*{v.0.7 (2020-05-16)} +% \paragraph*{Regression release} % \begin{itemize} -% \item Changed from the \textsf{bbding} {\ttfamily{}\textbackslash{}FiveStar} to the -% \textsf{amssymb} {\ttfamily{}\textbackslash{}bigstar} -% command.\par +% \item Updated to ClassPack 1.19\par +% \item Switched all conformance attributes on revision +% dates to YYYY-MM-DD\par % \end{itemize} -% \subsection*{v.0.3 (2019-02-02)} -% \paragraph*{Mods to ClassPack} +% \subsection*{v.0.6 (2020-04-01)} +% \paragraph*{Maintenance release} % \begin{itemize} -% \item Added switch in {\ttfamily{}db2dtx.xsl} to -% detect the use of a package in its own documentation -% (as here) and code around the -% {\ttfamily{}\textbackslash{}PassOptionsToPackage} for -% \textbf{\texttt{svgnames}} on -% \textsf{xcolor}, which was causing an Option -% Clash error.\par +% \item Updated to ClassPack 1.18\par +% \item Switched all conformance attributes on revision +% dates to YYYY-MM-DD\par % \end{itemize} -% \subsection*{v.0.2 (2019-02-01)} -% \paragraph*{Works in table cells} +% \subsection*{v.0.5 (2019-07-24)} +% \paragraph*{Separated stars from flag and added baseline option} % \begin{itemize} -% \item Fixed bug (a {\ttfamily{}\textbackslash{}vfill}) that was -% crashing (well, locking up) \LaTeX{} when -% {\ttfamily{}\textbackslash{}euflag} was used in a table -% cell.\par +% \item Made the ring of stars a separate macro so that +% they can be used on their own as well as in the flag.\par +% \item Added a \textbf{\texttt{baseline}} package option +% to align the bottom star with the text, and a command +% option to do it on a per-command basis.\par % \end{itemize} -% \subsection*{v.0.1 (2019-01-31)} -% \paragraph*{First version} +% \subsection*{v.0.4 (2019-02-02)} +% \paragraph*{Changed the star} % \begin{itemize} -% \item Simple picture mode is all that is needed, plus a -% decent star.\par +% \item Changed from the \textsf{bbding} {\ttfamily{}\textbackslash{}FiveStar} to the +% \textsf{amssymb} {\ttfamily{}\textbackslash{}bigstar} +% command.\par % \end{itemize} -% See p.\thinspace\pageref{changehistory} for details of earlier changes. +% See p.\thinspace\pageref{changehistory} for earlier changes. % \clearpage % \section{Background} % This package provides a command {\ttfamily{}\textbackslash{}euflag} % for reproducing the flag of the European Union. It follows -% exactly the official specification. The EU’s web site says:\par -% \begin{quotation}\small\sffamily\parindent0pt\parskip.5\baselineskip\color{DarkBlue}\noindent +% exactly the official specification \parencite{emblem}. The EU’s web site says:\par +% \begin{quotation}\small\sffamily\parindent0pt +% \parskip.5\baselineskip +% \color{DarkBlue}\noindent % The European flag symbolises both the European Union % and, more broadly, the identity and unity of Europe.\par % \textbf{It features a circle of 12 gold @@ -583,7 +620,8 @@ % official emblem of the European Communities, later to become % the European Union. In addition, all European institutions % now have their own emblems.\par -% \hfill\begingroup\scriptsize\color{Black}\url{https://europa.eu/european-union/about-eu/symbols/flag_en}\parfillskip=0pt\par\endgroup +% \hfill\begingroup +% \scriptsize\color{Black}\url{https://europa.eu/european-union/about-eu/symbols/flag_en}\parfillskip=0pt\par\endgroup % \end{quotation} % The {\ttfamily{}\textbackslash{}euflag} command provides a simple % way to use the flag in any \LaTeX{} document. Details of @@ -594,7 +632,10 @@ % The flag is reproduced at 1em high, with the bottom edge % at the current baseline like this: % \euflag\ using the -% {\ttfamily{}\textbackslash{}euflag} command.\par +% {\ttfamily{}\textbackslash{}euflag} command. +% The \textbf{\texttt{baseline}} package option or an optional +% length argument to the {\ttfamily{}\textbackslash{}euflag} command can +% be used to change this (see below).\par % The font size of the enclosing environment can be changed % to make the flag appear at any size. In the examples below, % the code and the flags are in {\ttfamily{}m}-type @@ -605,11 +646,11 @@ % \begingroup % \centering % \begin{tabular}{@{}% -% >{\raggedright{}\prestrut\arraybackslash}m{0.5\columnwidth}<{\poststrut\arraybackslash}% -% >{\raggedright{}\prestrut\arraybackslash}m{0.5\columnwidth}<{\poststrut\arraybackslash}% +% >{\raggedright{}\CPKprestrut}m{0.5\columnwidth}<{\CPKpoststrut\arraybackslash}% +% >{\raggedright{}\CPKprestrut\arraybackslash}m{0.5\columnwidth}<{\CPKpoststrut\arraybackslash}% % @{}} % \hline -% \vstrut +% \CPKvstrut % \verb|{\tiny\euflag}|&\tiny\euflag\vrule height2em width0pt\\ % \verb|{\scriptsize\euflag}|&\scriptsize\euflag\\ % \verb|{\footnotesize\euflag}|&\footnotesize\euflag\\ @@ -625,11 +666,22 @@ % \par\endgroup % } % To move the flag down so that the bottom star's baseline -% becomes the flag's baseline, use the -% {\ttfamily{}\textbackslash{}raisebox} command to lower the flag by -% \nicefrac16em: -% \raisebox{-.167em}{\euflag}, eg -% \verb|\raisebox{-.167em}{\euflag}|\par +% becomes the flag's baseline, like this: +% \euflag[-.167em], load +% the package with the \textbf{\texttt{baseline}} option:\par +% \iffalse +%<*ignore> +% \fi +\begin{lstlisting}[language={[LaTeX]TeX}] +\usepackage[baseline]{euflag} +\end{lstlisting} +% \iffalse +% +% \fi +% (that will affect all {\ttfamily{}\textbackslash{}euflag} commands). +% Alternatively, use the optional argument to {\ttfamily{}\textbackslash{}euflag} +% to lower the flag by \nicefrac16em or whatever amount you wish, eg +% {\ttfamily{}\textbackslash{}euflag[-.167em]}\par % \StopEventually{\label{endcode}% % \clearpage % \newgeometry{left=3cm}% @@ -640,8 +692,9 @@ % \label{codeindex}% % \addcontentsline{toc}{section}{Index}% % \PrintIndex} -% \addtolength{\revmarg}{\widthof{\LabelFont{PantoneReflexBlue}}} -% \newgeometry{left=\revmarg} +% \addtolength{\CPKrevmarg}{\widthof{\LabelFont{PantoneReflexBlue}}} +% \newgeometry{left=\CPKrevmarg} +% \message{Margin reset to \the\CPKrevmarg, to fit } % \iffalse %<*package> % \fi @@ -651,31 +704,35 @@ % \subsection{Auto-initialisation}\label{:autoinit} % This section is added automatically by \textit{ClassPack} % as a preamble to all classes and style packages. -% The \textsf{fixltx2e} package is no longer preloaded, as its -% features are now a part of the latest \LaTeX\ kernel.\par -% The code starts with identity and requirements which are generated -% automatically as needed by the Doc\TeX\ system. +% The \textsf{fixltx2e} package, which used to be included +% automatically, is no longer preloaded, as its +% features are now a part of the latest \LaTeXe\ kernel.\par +% The code starts with identity and requirements which are +% generated automatically as needed by the Doc\TeX\ system. % For details see the \textsf{ltxdoc} package documentation. % \par\smallskip % \begingroup\color{DarkRed}\tabcolsep3pt\footnotesize % \begin{tabular}{>{\refstepcounter{CodelineNo}\tiny\theCodelineNo}r@{\enspace}l} % &\verb`\NeedsTeXFormat{LaTeX2e}[2016/02/01]`\\ -% &\verb`\ProvidesPackage{euflag}[2019/02/02 v0.4`\\ -% &\verb` European Union Flag]` +% &\verb`\ProvidesPackage{euflag}[2020/05/16 v0.7`\\ +% &\verb` European Union Flag]` % \end{tabular}\endgroup % \setcounter{CodelineNo}{3} % \begin{CPK@option}{svgnames} -% Pass the \textbf{\texttt{svgnames}} option to the \textsf{xcolor} -% package if that gets loaded later. This avoids a conflict with -% any other packages (eg \textsf{hyperref}) which use their own -% default is when they load \textsf{xcolor}.\par -% However, we have to make an exception -% in this case because the package is used in its own documentation, -% which would cause a duplicate \verb+\PassOptionsToPackage+, so we -% code around it by testing the current package name against the -% job name of the calling \verb+.dtx+ file~--- if they are the same, -% then this is the case in point, and the \verb+\PassOptionsToPackage+ -% command is \emph{not} executed; otherwise it it OK to do so.\par +% Pass the \textbf{\texttt{svgnames}} option to the +% \textsf{xcolor} package if that gets loaded later. +% This avoids a conflict with any other packages +% (eg \textsf{hyperref}) which use their own default +% is when they load \textsf{xcolor}.\par +% However, we have to make +% an exception in this case because the package gets +% used in its own documentation, which would cause a +% duplicate \verb+\PassOptionsToPackage+, so we code +% around it by testing the current package name against +% the job name of the calling \verb+.dtx+ file~--- if +% they are the same, then this is the case in point, +% and the \verb+\PassOptionsToPackage+ command is +% \emph{not} executed; otherwise it it OK to include it.\par % \begin{macrocode} \def\CPK@thispackage{euflag} \edef\CPK@thispackage{\meaning\CPK@thispackage} @@ -683,22 +740,46 @@ \edef\CPK@thisjob{\meaning\CPK@thisjob} \ifx\CPK@thispackage\CPK@thisjob %% this is the documentation: omit PassOptionsToPackage -\message{Option svgnames not being passed to package xcolor} + \message{Option svgnames not passed to package xcolor} \else %% this is a user job: include PassOptionsToPackage -\message{Option svgnames being passed to package xcolor} + \message{Option svgnames passed to package xcolor} % \end{macrocode} % \begin{macrocode} -\PassOptionsToPackage{svgnames}{xcolor} + \PassOptionsToPackage{svgnames}{xcolor} % \end{macrocode} % \begin{macrocode} \fi % \end{macrocode} -% Thanks to zeroth at \url{https://tex.stackexchange.com/questions/44499/how-to-test-jobname-compilation-option-within-latex-file/54895} for this switch. % \end{CPK@option} +% \subsection{Options}\label{options} +% \iffalse +%% +%% ****************************************************************** +%% +%% Options +% \fi +% \begin{CPK@length}{\EUF@baseline}\label{length--EUF@baseline} +% Define an option to set the default position to align +% the lowest star with the text baseline of the surrounding +% text. The default is zero, meaning the bottom of the flag +% aligns with the text baseline; setting this option will +% lower the flag so that the lowest star aligns with the +% text baseline.\par +% \begin{macrocode} +\newlength{\EUF@baseline} +\setlength{\EUF@baseline}{0pt} +\DeclareOption{baseline}{\setlength\EUF@baseline{-.167em}} +\DeclareOption*{% + \PackageWarning{euflag}{Unknown option + ‘\CurrentOption’; please Read The Fine Manual}% +} +\ProcessOptions +% \end{macrocode} +% \end{CPK@length} %\iffalse %% -%% Packages required +%% Packages required for the class or package %% % \fi % \subsection{Packages required for the package}\label{stypackages} @@ -708,9 +789,10 @@ %% Provide color. % \fi % \begin{macrocode} -\RequirePackage[svgnames]{xcolor} +\RequirePackage[svgnames]{xcolor}% \@ifundefined{T}{% - \newcommand{\T}[2]{{\fontencoding{T1}\selectfont#2}}}{} + \newcommand{\T}[2]{{\fontencoding{T1}% + \selectfont#2}}}{} % \end{macrocode} % There seems to be a bug in the T1 encoding of some package % (unidentified, but possibly \textsf{xcolor}) which @@ -718,7 +800,7 @@ % impossibility (no digits allowed in command names). So we fake % it here to stop \LaTeX{} complaining, by dropping the first % argument on the floor. -% \end{CPK@package} +% \end{CPK@package} % \begin{CPK@package}{graphicx} % Provide for graphics (PNG, JPG, or PDF format (only) for % pdflatex; EPS format (only) for standard \LaTeX{}). @@ -726,9 +808,9 @@ %% Provide for graphics (PNG, JPG, or PDF format (only) for pdflatex; EPS format (only) for standard \LaTeX{}). % \fi % \begin{macrocode} -\RequirePackage{graphicx} +\RequirePackage{graphicx}% % \end{macrocode} -% \end{CPK@package} +% \end{CPK@package} % \begin{CPK@package}{amssymb} % Provide for the American Mathematical Society's symbols % (see their documentation for details). @@ -736,11 +818,17 @@ %% Provide for the American Mathematical Society's symbols (see their documentation for details). % \fi % \begin{macrocode} -\RequirePackage{amssymb} +\RequirePackage{amssymb}% % \end{macrocode} -% \end{CPK@package} +% \end{CPK@package} % % \subsection{Changes to package defaults}\label{packagemods} +% \iffalse +%% +%% ****************************************************************** +%% +%% Changes to package defaults +% \fi % The only changes are to implement the blue and yellow % according to the specification. Note that exact Pantone® % colour codes are not available, so the @@ -749,7 +837,8 @@ % {\smaller CMYK} values are commented out in the % code; they are available for users to test.\par % \definecolor{PantoneReflexBlue}{HTML}{003399} -% \begin{CPK@colour}{PantoneReflexBlue}\label{ann-PantoneReflexBlue} +% \begin{CPK@colour}{PantoneReflexBlue}\label{colour--PantoneReflexBlue} +% \addcontentsline{toc}{HTML}{\texttt{PantoneReflexBlue}} % As specified.\par % \begin{macrocode} \definecolor{PantoneReflexBlue}{HTML}{003399} @@ -757,7 +846,8 @@ % \end{macrocode} % \end{CPK@colour} % \definecolor{PantoneYellow}{HTML}{FFCC00} -% \begin{CPK@colour}{PantoneYellow}\label{ann-PantoneYellow} +% \begin{CPK@colour}{PantoneYellow}\label{colour--PantoneYellow} +% \addcontentsline{toc}{HTML}{\texttt{PantoneYellow}} % As specified.\par % \begin{macrocode} \definecolor{PantoneYellow}{HTML}{FFCC00} @@ -768,12 +858,18 @@ % better to be explicit.\par % \end{CPK@colour} % \subsection{The flag} +% \iffalse +%% +%% ****************************************************************** +%% +%% The flag +% \fi % We now use the {\ttfamily{}\textbackslash{}bigstar} command from the % \textsf{amssymb} package (earlier versions used % the {\ttfamily{}\textbackslash{}FiveStar} command from the % \textsf{bbding} package, but that did not reliably % scale beyond about 100pt).\par -% \begin{CPK@macro}{\eustar}\label{ann-eustar} +% \begin{CPK@macro}{\eustar}\label{macro--eustar} % It needs to scale, so we implement it as a command % using {\ttfamily{}\textbackslash{}scalebox}.\par % \begin{macrocode} @@ -789,14 +885,54 @@ % The command itself is a blue {\ttfamily{}\textbackslash{}colorbox} % containing the stars set at the clock-points of a circle in % a \LaTeX{} \texttt{picture} environment.\par -% \begin{CPK@macro}{\euflag}\label{ann-euflag} +% \begin{CPK@macro}{\makestars}\label{macro--makestars} +% Separate the making of the ring of stars from the flag +% itself so that the ring of stars can be used +% separately.\par +% For the \texttt{picture} environment, set the +% unit to 1em and then divide it by 18. This enables us +% conveniently to use six units for the axes behind the circle +% of stars, because the specification says it must have a +% radius of \nicefrac13 of the height (ie \nicefrac6{18}). The +% positioning argument was found by trial and error.\par +% \begin{macrocode} +\newcommand{\makestars}{% + \color{PantoneYellow}% + \setlength{\unitlength}{1em} + \divide\unitlength by18 + \begin{picture}(6,6)(-2,3.5) + \put(6,0){\eustar} + \put(5.196,3){\eustar} + \put(3,5.196){\eustar} + \put(0,6){\eustar} + \put(-3,5.196){\eustar} + \put(-5.196,3){\eustar} + \put(-6,0){\eustar} + \put(-5.196,-3){\eustar} + \put(-3,-5.196){\eustar} + \put(0,-6){\eustar} + \put(3,-5.196){\eustar} + \put(5.196,-3){\eustar} + \end{picture}% +} +% \end{macrocode} +% The positioning of the individual stars was found with +% simple trigonometry. It would have been possible to +% construct this from a loop cycling through the 12 +% positions, but it is simpler to do it like this.\par +% \end{CPK@macro} +% \begin{CPK@macro}{\euflag}\label{macro--euflag} % Before the {\ttfamily{}\textbackslash{}colorbox} is used, set % the {\ttfamily{}\textbackslash{}fboxsep} length to -% zero so that there is no border around the box.\par +% zero so that there is no border around the box, and then +% raise (lower) the box by the value of \DescribeLength{EUF@baseline}{\ttfamily{}EUF@baseline} as set by the +% \textbf{\texttt{baseline}} option.\par % \begin{macrocode} -\newcommand{\euflag}{{% +\newcommand{\euflag}[1][\EUF@baseline]{% + {% \fboxsep0pt - \colorbox{PantoneReflexBlue}{% + \raisebox{#1}{% + \colorbox{PantoneReflexBlue}{% % \end{macrocode} % The rectangle itself is formed from a % {\ttfamily{}\textbackslash{}vbox} 1em high and 1.5em wide. The @@ -809,45 +945,15 @@ \parskip0pt \parindent0pt \centering - \color{PantoneYellow}% -% \end{macrocode} -% For the \texttt{picture} environment, set the -% unit to 1em and then divide it by 18. This enables us -% conveniently to use six units for the axes behind the circle -% of stars, because the specification says it must have a -% radius of \nicefrac13 of the height (ie \nicefrac6{18}). The -% positioning argument was found by trial and error.\par -% \begin{macrocode} - \setlength{\unitlength}{1em} - \divide\unitlength by18 - \begin{picture}(6,6)(-2,3.5) -% \end{macrocode} -% The positioning of the individual stars was found with -% simple trigonometry. It would have been possible to -% construct this from a loop cycling through the 12 -% positions, but it is simpler to do it like this.\par -% \begin{macrocode} - \put(6,0){\eustar} - \put(5.196,3){\eustar} - \put(3,5.196){\eustar} - \put(0,6){\eustar} - \put(-3,5.196){\eustar} - \put(-5.196,3){\eustar} - \put(-6,0){\eustar} - \put(-5.196,-3){\eustar} - \put(-3,-5.196){\eustar} - \put(0,-6){\eustar} - \put(3,-5.196){\eustar} - \put(5.196,-3){\eustar} + \makestars % \end{macrocode} -% Finally, close off the \texttt{picture} -% environment, and close the containing +% Finally, close off the containing % {\ttfamily{}\textbackslash{}vbox} and other containers.\par % \begin{macrocode} - \end{picture}% - }% end vbox - }% end colorbox - }% end environment + }% end vbox + }% end colorbox + }% end raisebox + }% end encapsulation }% end command % \end{macrocode} % \end{CPK@macro} @@ -855,7 +961,6 @@ % \iffalse % % \fi -% \nocite{*} % \clearpage % \raggedright % \raggedright\printbibliography @@ -863,7 +968,9 @@ % \newgeometry{left=3cm} % \clearpage % \section{The \LaTeX{} Project Public License (v\thinspace{}1.3c)}\label{LPPL} -% \begin{quotation}\small\sffamily\parindent0pt\parskip.5\baselineskip\color{DarkBlue}\noindent +% \begin{quotation}\small\sffamily\parindent0pt +% \parskip.5\baselineskip +% \color{DarkBlue}\noindent % Everyone is allowed to distribute verbatim copies of this % license document, but modification of it is not allowed.\par % \end{quotation} @@ -1031,14 +1138,14 @@ % \item % \begin{enumerate} % \item A Derived Work may be distributed under a different % license provided that license itself honors the -% conditions listed in Clause~item~\ref{item-conditions} above above, in +% conditions listed in Clause~item~\ref{item-conditions} in the list on p.\thinspace\pageref{item-conditions} above, in % regard to the Work, though it does not have to honor the % rest of the conditions in this license.\par % \item If a Derived Work is distributed under a different % license, that Derived Work must provide sufficient % documentation as part of itself to allow each recipient % of that Derived Work to honor the restrictions in -% Clause~item~\ref{item-conditions} above above, concerning +% Clause~item~\ref{item-conditions} in the list on p.\thinspace\pageref{item-conditions} above, concerning % changes from the Work.\par % \end{enumerate} % \item This license places no restrictions on works that are @@ -1121,14 +1228,14 @@ % announcement.\par % \end{enumerate} % \item \label{item-change}If you make an `intention announcement' -% as described in~item~\ref{item-intention} above above and after three +% as described in~item~\ref{item-intention} in the list on p.\thinspace\pageref{item-intention} above and after three % months your intention is challenged neither by the Current % Maintainer nor by the Copyright Holder nor by other people, % then you may arrange for the Work to be changed so as to % name you as the (new) Current Maintainer.\par % \item If the previously unreachable Current Maintainer becomes % reachable once more within three months of a change -% completed under the terms of~item~\ref{item-announce} above +% completed under the terms of~item~\ref{item-announce} in the list on p.\thinspace\pageref{item-announce} % or~item~\ref{item-change} above, then that % Current % Maintainer must become or remain the Current Maintainer upon @@ -1142,7 +1249,7 @@ % immediately provide, within the Work, a prominent and % unambiguous statement of your status as Current Maintainer. You % should also announce your new status to the same pertinent -% community as in~item~\ref{item-intention} above +% community as in~item~\ref{item-intention} in the list on p.\thinspace\pageref{item-intention} % above.\par % \subsection{Whether and How to Distribute Works under This % License}\label{Distribute} @@ -1246,7 +1353,7 @@ % completely different task), then clauses 6b and 6d shall not % apply.\par % \subsubsection{Important Recommendations}\label{Recommendations} -% \paragraph[Defining What Constitutes the Work]{Defining What Constitutes the Work  •} +% \paragraph[Defining What Constitutes the Work]{Defining What Constitutes the Work :} % The {\smaller LPPL} requires that distributions % of the Work contain all the files of the Work. It is % therefore important that you provide a way for the licensee diff --git a/graphics/euflag/euflag.ins b/graphics/euflag/euflag.ins index db2675e096..f6f904a0e0 100644 --- a/graphics/euflag/euflag.ins +++ b/graphics/euflag/euflag.ins @@ -1,7 +1,7 @@ % Transformed from euflag.xml by ClassPack db2dtx.xsl -% version 1.10 (2019-01-22) on Sunday 3 February 2019 at 21:19:20 +% version 1.19 (2020-05-19) on Wednesday 20 May 2020 at 19:09:55 % -% euflag.ins is copyright © 2019 by Peter Flynn +% euflag.ins is copyright © 2019-2020 by Peter Flynn % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either diff --git a/graphics/euflag/euflag.pdf b/graphics/euflag/euflag.pdf index abfedfb3fc..b5f9e4828c 100644 Binary files a/graphics/euflag/euflag.pdf and b/graphics/euflag/euflag.pdf differ diff --git a/language/japanese/ptex2pdf/README.md b/language/japanese/ptex2pdf/README.md index 1fe1e275cc..fccd66fdb3 100644 --- a/language/japanese/ptex2pdf/README.md +++ b/language/japanese/ptex2pdf/README.md @@ -1,7 +1,7 @@ # ptex2pdf[.lua] # **Author:** Norbert Preining -**Website:** http://www.preining.info/blog/software-projects/ptex2pdf/ (in Japanese) +**Website:** http://github.com/texjporg/ptex2pdf **License:** GPLv2 Convert Japanese TeX documents to pdf @@ -127,40 +127,40 @@ http://github.com/texjporg/ptex2pdf - version 0.2 2013-03-10 NP import into git repository support passing options on to tex and dvipdfm - add README with TeXworks config options + add README with TeXworks config options - version 0.3 2013-05-01 NP include the readme in the lua code - fix program name for -e -u + fix program name for -e -u - version 0.4 2013-05-07 NP quote the filename with ", so that special chars do survive - add an example for TeXworks for files with different kanji encoding + add an example for TeXworks for files with different kanji encoding - version 0.5 2014-11-05 NP on Windows: set command_line_encoding to utf8 when running uptex - (patch by Akira Kakuto) + (patch by Akira Kakuto) - version 0.6 2015-03-08 NP cygwin didn't like the (accidentally inserted) spaces after the texlua in the shebang line, and stopped working with - "no such program: "texlua " ..." + "no such program: "texlua " ..." - version 0.7 2015-04-29 move to github as gitorious will be closed, adapt help output to generate github flavored markdown check for files using kpathsea instead of opening directly, to allow - for input of files found by kpathsea (closes github issue 1) + for input of files found by kpathsea (closes github issue 1) - version 0.8 2015-06-15 file name checks: first search for arg as is, then try .tex and .ltx - (closes github issue: 3) + (closes github issue: 3) - version 0.9 2016-12-12 allow for files in sub-directories add -output-directory option update copyright and development place (now in texjp) support 'flag=val' to specify option values - only allow one (1) filename argument + only allow one (1) filename argument - version 20170603.0 start version number in the format YYYYMMDD.0 better support for cp932 windows filenames - first replace all backslash chars to slash chars + first replace all backslash chars to slash chars - version 20170622.0 - pass all non-optional arguments before filename to TeX engine + pass all non-optional arguments before filename to TeX engine - version 20180514.0 Windows: for uptex use command_line_encoding=utf8, for all other turn it off (set to none) @@ -170,6 +170,8 @@ http://github.com/texjporg/ptex2pdf check invalid PATH string beforehand on windows - version 20200307.0 add -ld option to run (u)platex-dev +- version 20200520.0 + Windows: lua mode - support non-ascii file name on recent luatex ## Copyright and License ## diff --git a/language/japanese/ptex2pdf/ptex2pdf.lua b/language/japanese/ptex2pdf/ptex2pdf.lua index d2668d6df8..a15075abef 100755 --- a/language/japanese/ptex2pdf/ptex2pdf.lua +++ b/language/japanese/ptex2pdf/ptex2pdf.lua @@ -1,7 +1,7 @@ #!/usr/bin/env texlua NAME = "ptex2pdf[.lua]" -VERSION = "20200307.0" +VERSION = "20200520.0" AUTHOR = "Norbert Preining" AUTHOREMAIL = "norbert@preining.info" SHORTDESC = "Convert Japanese TeX documents to pdf" @@ -141,40 +141,40 @@ CHANGELOG = [[ - version 0.2 2013-03-10 NP import into git repository support passing options on to tex and dvipdfm - add README with TeXworks config options + add README with TeXworks config options - version 0.3 2013-05-01 NP include the readme in the lua code - fix program name for -e -u + fix program name for -e -u - version 0.4 2013-05-07 NP quote the filename with ", so that special chars do survive - add an example for TeXworks for files with different kanji encoding + add an example for TeXworks for files with different kanji encoding - version 0.5 2014-11-05 NP on Windows: set command_line_encoding to utf8 when running uptex - (patch by Akira Kakuto) + (patch by Akira Kakuto) - version 0.6 2015-03-08 NP cygwin didn't like the (accidentally inserted) spaces after the texlua in the shebang line, and stopped working with - "no such program: "texlua " ..." + "no such program: "texlua " ..." - version 0.7 2015-04-29 move to github as gitorious will be closed, adapt help output to generate github flavored markdown check for files using kpathsea instead of opening directly, to allow - for input of files found by kpathsea (closes github issue 1) + for input of files found by kpathsea (closes github issue 1) - version 0.8 2015-06-15 file name checks: first search for arg as is, then try .tex and .ltx - (closes github issue: 3) + (closes github issue: 3) - version 0.9 2016-12-12 allow for files in sub-directories add -output-directory option update copyright and development place (now in texjp) support 'flag=val' to specify option values - only allow one (1) filename argument + only allow one (1) filename argument - version 20170603.0 start version number in the format YYYYMMDD.0 better support for cp932 windows filenames - first replace all backslash chars to slash chars + first replace all backslash chars to slash chars - version 20170622.0 - pass all non-optional arguments before filename to TeX engine + pass all non-optional arguments before filename to TeX engine - version 20180514.0 Windows: for uptex use command_line_encoding=utf8, for all other turn it off (set to none) @@ -184,6 +184,8 @@ CHANGELOG = [[ check invalid PATH string beforehand on windows - version 20200307.0 add -ld option to run (u)platex-dev +- version 20200520.0 + Windows: lua mode - support non-ascii file name on recent luatex ]] @@ -195,7 +197,7 @@ function makereadme() print("# " .. NAME .. " #") print() print("**Author:** " .. AUTHOR .. " ") - print("**Website:** http://www.preining.info/blog/software-projects/ptex2pdf/ (in Japanese) ") + print("**Website:** http://github.com/texjporg/ptex2pdf ") print("**License:** GPLv2") print() print(SHORTDESC) @@ -381,6 +383,18 @@ else end end +function is_texlivew32() + if status.luatex_version < 112 then + return false + end + if os.type == 'windows' + and kpse.var_value('command_line_encoding') ~= nil then + return true + else + return false + end +end + -- initialize kpse kpse.set_program_name(tex) @@ -392,6 +406,9 @@ if ( filename == "" ) then print("No filename argument given, exiting.") os.exit(1) else + if is_texlivew32() then + filename = chgstrcp.syscptoutf8(filename) + end filename = slashify(filename) if ( kpse.find_file(filename) == nil ) then -- try .tex extension @@ -401,15 +418,24 @@ else print("File cannot be found with kpathsea: ", filename .. "[.tex, .ltx]") os.exit(1) else + if is_texlivew32() then + filename = chgstrcp.utf8tosyscp(filename) + end bname = filename filename = filename .. ".ltx" end else + if is_texlivew32() then + filename = chgstrcp.utf8tosyscp(filename) + end bname = filename filename = filename .. ".tex" end else -- if it has already an extension, we need to drop it to get the dvi name + if is_texlivew32() then + filename = chgstrcp.utf8tosyscp(filename) + end bname = string.gsub(filename, "^(.*)%.[^./]+$", "%1") end -- filename may contain "/", but the intermediate output is written diff --git a/macros/latex/contrib/toptesi/README.txt b/macros/latex/contrib/toptesi/README.txt index 220bda5eaf..05c2a00f18 100644 --- a/macros/latex/contrib/toptesi/README.txt +++ b/macros/latex/contrib/toptesi/README.txt @@ -1,5 +1,5 @@ -con-TOPtesi bundle version 6.x -Copyright 2008-2019 Claudio Beccari +TOPtesi bundle version 6.x +Copyright 2008-2020 Claudio Beccari LaTeX Project Public Licence LPPL v.1.3c (or later) This work may be distributed and/or modified under the conditions of @@ -27,7 +27,7 @@ This work consists of the following files: toptesi-example-dottorale.tex toptesi-example-magistrale.tex toptesi-scudo-example.zip - README + README.txt toptesi-it.tex The files derived from the work are the following: @@ -55,14 +55,15 @@ pdf file. The Italian documentation is obtained by running LuaLaTeX on toptesi-it.tex; this documentation has been completely redone compared to previous versions. With this compiler the result -should be PDF/A-1b compliant. The compilation of this file +is PDF/A-2b compliant. The compilation of this file requires input of various .pdf files, mostly obtained by processing the .tex files belonging to the bundle. It requires also the FAKE logos of Politecnico di Torino and of its doctoral school. See below. The two documentations pdf files, toptesi.pdf and toptesi-it.pdf, -are complementary to one another. +are complementary to one another and both should be stored in the +doc/latex/toptesi/ folder. The various files @@ -112,14 +113,24 @@ As a new feature compared to versions 5.x, among the various thesis types there is also the one that Italian students submit to the examining committee of their final high-school State Exam. +Version 6.4.x is further upgraded in order to customise header positions +and folios. It it also upgraded to allow compliance with level 2 of the +ISO PDF/A regulations on long term archivability. Because the filecontents +*package* functionalities have been embedded into the LaTeX *kernel* +environment, in a way backwards compatible with the previous definition +of that environment, the now obslete package filecontents functionalities may +still be obtained, but with a different syntax; therefore a new TOPtesi +specific metadata environment has been defined so as to bypass such syntax +changes. + Version 6.3.x contains some enhancements and corrections, especially in view of the 2019 Italian TUG meeting that contained a tutorial on this bundle. For what concerns PDF/A compliant files, the documentation gives instructions that are up to date with package pdfx dated February 2019, version 1.6.3. -Version 6.1.12 just differs from the previous 6.x versions because some -little bugs were corrected and the documentation was upgraded. +Version 6.x derives from the previous version by using several features +of the LaTeX3 language. Version 5.92 of TOPtesi was intended to be compliant also with XeLaTeX and LuaLaTeX; the documentation explains also how to obtain PDF/A-1b @@ -136,10 +147,15 @@ Italian documentation file toptesi-it.pdf. -------------------------------------------------------------------- -For installation, if the package is not already contained in the -installed TeX system distribution, on your platform either read -the Italian documentation toptesi-it.pdf or move the toptesi.zip -file to +You might have your valid reasons for not upgrading your installed TeX +system distribution, but in order to have available some new +functionalities, you might consider upgrading your installation; +otherwise you have to install the whole TOPtesi bundle by yourself. +You can get some help by carefully reading the Italian documentation +file toptesi. + +In this case you have to download the toptesi.zip file from a CTAN archive +and save it to this (possibly created on purpose) folder: .../texmf/source/latex/toptesi. @@ -147,23 +163,9 @@ and decompress it. Then run pdflatex on toptesi.dtx in order to get the class, style and configuration files (and the pdf documentation in English) and move -the .tex, .cls, .sty, and .cfg files (including the -example .tex and .pdf files) to .../texmf/tex/latex/toptesi/. - -Two fake logos of the "Institute of Technology of Turin" and its Doctoral -School are provided, in substitution of the legal official ones. They both -have a "FAKE LOGO" watermark so as to be sure they are not used in place -of the official ones. In the documentation of this bundle they are used -as examples of possible logos, but they do not represent in any way any -official logo. Even the fake institutional name, the translation in English -of the official Italian one, has nothing to do with the trademarked one, -the only one the Politecnico of Torino bachelor, master, and PH.D. students -should use for their actual theses; they have to get the official logos -from their Student Office, or from the official restricted Web site where -only institutional students have access. - -Move the .txt and the remaining .pdf files plus this README file to -.../texmf/doc/latex/toptesi. +the .tex, .cls, .sty, and .cfg files (including the example .tex files) +to .../texmf/tex/latex/toptesi/. Move the two pdf files +toptesi.pdf and toptesi-it.pdf to .../texmf/doc/latex/toptesi/. If the mentioned folders do not exist, create them. @@ -176,12 +178,28 @@ C:\Users\. If you are running a Windows platform change the slashes into backslashes and prefix all paths with the drive letter and any other specific prefix -that is actually used in your texmf tree. +that is actually used in your personal texmf tree. Remember to refresh the filename database if you are using a MiKTeX installation! This operation is not required if you have a TeXLive installation. +------------------------------------------------------------------------ + +Two fake logos of the "Institute of Technology of Turin" and its Doctoral +School are provided, in substitution of the legal official ones. They both +have a "FAKE LOGO" watermark so as to be sure they are not used in place +of the official ones. In the documentation of this bundle they are used +as examples of possible logos, but they do not represent in any way any +official logo. Even the fake institutional name, the translation in English +of the official Italian one, has nothing to do with the trademarked one, +the only one the Politecnico of Torino bachelor, master, and PH.D. students +should use for their actual theses; they have to get the official logos +from their Student Office, or from the official restricted Web site where +only institutional students have access. + +------------------------------------------------------------------------- + The package is already installed with *complete* TeXLive, MacTeX or MiKTeX distributions. In this case you don't need to decompress anything and move files around; in case of TeX system upgrades your diff --git a/macros/latex/contrib/toptesi/Toptesi-con-topfront.pdf b/macros/latex/contrib/toptesi/Toptesi-con-topfront.pdf index f36657e45a..17d982deca 100644 Binary files a/macros/latex/contrib/toptesi/Toptesi-con-topfront.pdf and b/macros/latex/contrib/toptesi/Toptesi-con-topfront.pdf differ diff --git a/macros/latex/contrib/toptesi/Toptesi-con-topfront.tex b/macros/latex/contrib/toptesi/Toptesi-con-topfront.tex index 530714cb8b..5faff32bba 100644 --- a/macros/latex/contrib/toptesi/Toptesi-con-topfront.tex +++ b/macros/latex/contrib/toptesi/Toptesi-con-topfront.tex @@ -2,7 +2,10 @@ % !TEX TS-program = pdflatex % % File per collaudare gli ambienti frontespizio e frontespizio* -\documentclass[% +% Il laureando/dottorando preferisca usare l'opzione tipotesi=... per la +% classe toptesi, piuttosto che seguire questo modello. +% +\documentclass[% OPZIONI PER LA CLASSE %b5paper % Il formato della carta si può specificare anche così. %formato=b5paper % Versione per specificare il formato della carta %a4paper % Non necessario perché è il default @@ -20,8 +23,8 @@ % \usepackage{teubner}% per le notazioni filologiche greche % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% per macchine Linux/Mac/UNIX/Windows; sarebbe meglio utf8 -%\usepackage[latin1]{inputenc} +% Per macchine Linux/Mac/UNIX/Windows: usare solo utf8, anche se con +%pdfLaTeX si potrebbero usare anche altre codifiche \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} \usepackage{lmodern} @@ -92,9 +95,12 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% Questo codice serve per collaudare gli ambienti frontespizio e frontespizio* -% con l'asterisco il logo dell'ateneo va a finire sotto il titolo nella seconda -% metà della pagina; senza asterisco va a finire in testa. +% Questo codice serve per collaudare gli ambienti frontespizio e +% frontespizio*; con l'asterisco il logo dell'ateneo va a finire sotto il +% titolo nella seconda metà della pagina; senza asterisco va a finire in +% testa. +% Tuttavia, sebbene con topfront TOPtesi possa compilare ogni tipo di tesi +% si consiglia di specificare fra le opzioni \begin{frontespizio} \ateneo{Università di Marconia}% nome generico dell'universita' diff --git a/macros/latex/contrib/toptesi/logoguittondo.pdf b/macros/latex/contrib/toptesi/logoguittondo.pdf new file mode 100644 index 0000000000..b049d85afd Binary files /dev/null and b/macros/latex/contrib/toptesi/logoguittondo.pdf differ diff --git a/macros/latex/contrib/toptesi/topfront-example.pdf b/macros/latex/contrib/toptesi/topfront-example.pdf index 71f52e05e4..9374518f30 100644 Binary files a/macros/latex/contrib/toptesi/topfront-example.pdf and b/macros/latex/contrib/toptesi/topfront-example.pdf differ diff --git a/macros/latex/contrib/toptesi/topfront-example.tex b/macros/latex/contrib/toptesi/topfront-example.tex index 18cde3f939..21302dce1c 100644 --- a/macros/latex/contrib/toptesi/topfront-example.tex +++ b/macros/latex/contrib/toptesi/topfront-example.tex @@ -28,7 +28,7 @@ \documentclass[ a4paper, 11pt, -twoside]{report}% it works also with book and article +twoside]{book}% it works also with book and article \usepackage{iftex}% Which typesetting engine? pdflatex, xelatex or lualatex diff --git a/macros/latex/contrib/toptesi/toptesi-example-con-frontespizio.pdf b/macros/latex/contrib/toptesi/toptesi-example-con-frontespizio.pdf index 932d09b206..64f62826b4 100644 Binary files a/macros/latex/contrib/toptesi/toptesi-example-con-frontespizio.pdf and b/macros/latex/contrib/toptesi/toptesi-example-con-frontespizio.pdf differ diff --git a/macros/latex/contrib/toptesi/toptesi-example-dottorale.pdf b/macros/latex/contrib/toptesi/toptesi-example-dottorale.pdf index 39ce0b8eb0..2ce96788c3 100644 Binary files a/macros/latex/contrib/toptesi/toptesi-example-dottorale.pdf and b/macros/latex/contrib/toptesi/toptesi-example-dottorale.pdf differ diff --git a/macros/latex/contrib/toptesi/toptesi-example-luatex.pdf b/macros/latex/contrib/toptesi/toptesi-example-luatex.pdf index 54fb4bae2c..2ef3755792 100644 Binary files a/macros/latex/contrib/toptesi/toptesi-example-luatex.pdf and b/macros/latex/contrib/toptesi/toptesi-example-luatex.pdf differ diff --git a/macros/latex/contrib/toptesi/toptesi-example-magistrale.pdf b/macros/latex/contrib/toptesi/toptesi-example-magistrale.pdf index 3f10b31602..428365af66 100644 Binary files a/macros/latex/contrib/toptesi/toptesi-example-magistrale.pdf and b/macros/latex/contrib/toptesi/toptesi-example-magistrale.pdf differ diff --git a/macros/latex/contrib/toptesi/toptesi-example-sss.pdf b/macros/latex/contrib/toptesi/toptesi-example-sss.pdf index 6780bcdcae..7e29427a8f 100644 Binary files a/macros/latex/contrib/toptesi/toptesi-example-sss.pdf and b/macros/latex/contrib/toptesi/toptesi-example-sss.pdf differ diff --git a/macros/latex/contrib/toptesi/toptesi-example-sss.tex b/macros/latex/contrib/toptesi/toptesi-example-sss.tex index bda97d1455..79bbcbe56a 100644 --- a/macros/latex/contrib/toptesi/toptesi-example-sss.tex +++ b/macros/latex/contrib/toptesi/toptesi-example-sss.tex @@ -82,7 +82,7 @@ sul rilevamento telescopico della pressione. \ringraziamenti -I candidati ringraziano vivamente il Granduca di Toscana per i mezzi +Il candidato ringraziano vivamente il Granduca di Toscana per i mezzi messi loro a disposizione, ed il signor Von Braun, assistente del prof.~Albert Einstein, per le informazioni riservate che egli ha gentilmente fornito loro, e per le utili discussioni che hanno permesso @@ -145,11 +145,11 @@ $\Omega$ velocit\`a istantanea di rotazione; si ricorda che \`e $[\Omega]=% \end{enumerate} % -Le grandezze in gioco sono evidenziate nella figura \ref{fig1}. +Le grandezze in gioco sono evidenziate nella figura~\ref{fig1}. \begin{figure}[ht]\centering \setlength{\unitlength}{0.01\textwidth} \begin{picture}(40,30)(30,0) -\put(50,15){\circle{20}} +\put(50,15){\scalebox{5}[4]{\circle{5}}} \put(47,15){\circle*{1}} \put(30,0){\line(0,1){30}} \put(30,30){\line(1,0){40}} diff --git a/macros/latex/contrib/toptesi/toptesi-example-triennale.pdf b/macros/latex/contrib/toptesi/toptesi-example-triennale.pdf index 659043341e..4095de8e65 100644 Binary files a/macros/latex/contrib/toptesi/toptesi-example-triennale.pdf and b/macros/latex/contrib/toptesi/toptesi-example-triennale.pdf differ diff --git a/macros/latex/contrib/toptesi/toptesi-example-xetex.pdf b/macros/latex/contrib/toptesi/toptesi-example-xetex.pdf index 9b97a99f6c..40bba2113c 100644 Binary files a/macros/latex/contrib/toptesi/toptesi-example-xetex.pdf and b/macros/latex/contrib/toptesi/toptesi-example-xetex.pdf differ diff --git a/macros/latex/contrib/toptesi/toptesi-example-xetex.tex b/macros/latex/contrib/toptesi/toptesi-example-xetex.tex index ba959edbb3..8974874ea5 100644 --- a/macros/latex/contrib/toptesi/toptesi-example-xetex.tex +++ b/macros/latex/contrib/toptesi/toptesi-example-xetex.tex @@ -5,12 +5,14 @@ \documentclass[% % 10pt % 11pt -12pt, +corpo=12pt, twoside, -%,classica -%,autoreanno -%,oldstile -%,cucitura +stile=classica, +%autoreanno, +%oldstile, +%cucitura, +tipotesi=magistrale, +folioinhead, ]{toptesi} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -30,6 +32,7 @@ twoside, %%%%%%%%% da caricare per ultimo e solo se non e' gia' stato caricato \expandafter\csname @ifpackageloaded\endcsname{hyperref}{}{\usepackage{hyperref}} + \hypersetup{% pdfpagemode={UseOutlines}, bookmarksopen, @@ -45,7 +48,9 @@ twoside, % \english % la lingua di default e' l'italiano - +% qui si usa l'ambiente frontespizio perché non si è specificata nessuna +% opzione realtiva al tipo di tesi. +\begin{ThesisTitlePage} \ateneo{Università degli Studi di Einstenia}% nome generico dell'Universita' \nomeateneo{Weiss Turm}% eventuale nome proprio dell'universita' \logosede{logouno}% logo dell'universita' @@ -79,13 +84,13 @@ twoside, % %\chapterbib %solo per sperimentare; e' preferibile comporre una sola bibliografia %\AdvisorName{Supervisors} -\retrofrontespizio{Questo testo è sottoposto alla Creative Common Licence +\retrofrontespizio{Questo testo è sottoposto alla Creative Common Licence \dots \vspace{2\baselineskip} Stampato il \today } - +\end{ThesisTitlePage} \newtheorem{osservazione}{Osservazione}% Standard LaTeX @@ -94,17 +99,17 @@ twoside, %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Solo per collaudare -\ifclassica - \tomo - \paginavuota% Per avere la dedica sul recto, ma non subito dopo il retrofrontepsizio - \begin{dedica} - A mio padre - - \textdagger\ A mio nonno Pino - \end{dedica} -\else - \frontespizio* -\fi +%\ifclassica +% \tomo +% \paginavuota% Per avere la dedica sul recto, ma non subito dopo il retrofrontepsizio +% \begin{dedica} +% A mio padre +% +% \textdagger\ A mio nonno Pino +% \end{dedica} +%\else +% \frontespizio* +%\fi % In una tesi vera usare solo a seconda dei casi \frontespizio o \tomo %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -115,7 +120,7 @@ La pressione barometrica di Giove viene misurata mediante un metodo originale messo a punto dai candidati, che si basa sul rilevamento telescopico della pressione. -\ringraziamenti% compone i ringraziamanti che di solito sono inutili +\ringraziamenti% compone i ringraziamenti che di solito sono inutili I candidati ringraziano vivamente il Granduca di Toscana per i mezzi messi loro a disposizione, ed il signor Von Braun, assistente del @@ -152,10 +157,7 @@ ai candidati di evitare di riscoprire l'acqua calda. \chapter{Introduzione generale} \section{Principi generali} -Il problema della determinazione della pressione barometrica dell'atmosfera di -Giove non ha ricevuto finora una soluzione soddisfacente, per l'elementare -motivo che il pianeta suddetto si trova ad una distanza tale che i mezzi attuali -non consentono di eseguire una misura \emph{in loco}. +Il problema della determinazione della pressione barometrica dell'atmosfera di Giove non ha ricevuto finora una soluzione soddisfacente, per l'elementare motivo che il pianeta suddetto si trova ad una distanza tale che i mezzi attuali non consentono di eseguire una misura \emph{in loco}. Conoscendo però con grande precisione le orbite dei satelliti principali di Giove, e segnatamente le orbite dei satelliti medicei, è possibile eseguire @@ -196,12 +198,10 @@ Le grandezze in gioco sono evidenziate nella figura \ref{fig1}. \end{figure} Per misurare le grandezze che compaiono in questa formula è necessario -ricorrere ad un pirometro con una resistenza di 120\unit{M\ohm}, altrimenti gli -errori di misura sono troppo grandi, ed i risultati completamente falsati. +ricorrere ad un pirometro con una resistenza di 120\unit{M\ohm}, altrimenti gli errori di misura sono troppo grandi, ed i risultati completamente falsati. \section{I satelliti medicei} -I satelliti medicei, come noto, sono quattro ed hanno dei periodi di rivoluzione -attorno al pianeta Giove che vanno dai sette giorni alle tre settimane. +I satelliti medicei, come noto, sono quattro ed hanno dei periodi di rivoluzione attorno al pianeta Giove che vanno dai sette giorni alle tre settimane. Essi furono per la prima volta osservati da uno dei candidati mentre sperimentava l'efficacia del tubo occhiale che aveva appena inventato diff --git a/macros/latex/contrib/toptesi/toptesi-example.pdf b/macros/latex/contrib/toptesi/toptesi-example.pdf index 53cc036726..e33aaa2baa 100644 Binary files a/macros/latex/contrib/toptesi/toptesi-example.pdf and b/macros/latex/contrib/toptesi/toptesi-example.pdf differ diff --git a/macros/latex/contrib/toptesi/toptesi-example.tex b/macros/latex/contrib/toptesi/toptesi-example.tex index 23aadde79f..9b914dbce9 100644 --- a/macros/latex/contrib/toptesi/toptesi-example.tex +++ b/macros/latex/contrib/toptesi/toptesi-example.tex @@ -14,6 +14,10 @@ %%%%%%% in italiano quali opzioni accettano un valore, e quali %%%%%%% opzioni accettano delle scelte. +%%%%%%% Con la chiave tipotesi= assente o senza valore o col valore +%%%%%%% magistrale, queso file di esempio funziona, ma con dottorale +%%%%%%% o con triennale o monografia non funziona. Vedere gli altri esempi. + %%%%%%% L'opzione per il corpo accetta qualsiasi valore, anche fratto %%%%%%% (per esempio: corpo=11.5pt) e va sempre scritto con una %%%%%%% unità di misura fra quelle che vengono riconosciute dal @@ -34,7 +38,10 @@ autoretitolo, greek, evenboxes, -% tipotesi, +% tipotesi=magistrale,% si può anche commentare + nocenterfolio, +% folioinhead, + nocenterhead, ]{toptesi} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -54,7 +61,7 @@ citecolor={blue}, urlcolor={blue} } -% + %%%%%%% Esempio di composizione di tesi di laurea con PDFLATEX % % @@ -65,8 +72,7 @@ %%%%%%% Definizioni locali \newtheorem{osservazione}{Osservazione}% Standard LaTeX - -\begin{document} +\begin{document}\errorcontextlines=100 %%%%%%% Questi comandi è meglio metterli dentro l'ambiente %%%%%%% frontespizio o frontespizio*, oppure in un file di %%%%%%% configurazione personale visto che fra le opzioni @@ -86,7 +92,6 @@ % %%%%%%% Corso degli studi \corsodilaurea{Astronomia Applicata}% per la laurea -%\corsodidottorato{Meccanica}% per il dottorato %%%%%%% Per inserire la matricola rientrato sotto il nome di ogni %%%%%%% candidato. Questo comando non è predefinito secondo lo @@ -152,10 +157,9 @@ %\sedutadilaurea{Agosto 1615}% per la laurea quinquennale (obsoleta); %%%%%%% oppure: \sedutadilaurea{\textsc{Anno~accademico} 1615-1616}% per la laurea magistrale -%\esamedidottorato{Novembre 1610}% per il dottorato %\annoaccademico{1615-1616}% solo con l'opzione classica %\annoaccademico{2006-2007}% idem -\ciclodidottorato{XV}% solo per il dottorato + %%%%%%% Logo della sede \logosede{logodue}% questo e' ovviamente facoltativo, ma e' @@ -256,6 +260,7 @@ ai candidati di evitare di riscoprire l'acqua calda. %%%%%%%% fine esperimento % qui comincia automaticamente la main matter +%\expandafter\show\csname NR@part\endcsname \part{Prima Parte} \chapter{Introduzione generale} @@ -332,7 +337,7 @@ misurare la pesantezza; pi\`u precisamente la pesantezza dell'aria riferita all'unit\`a di superficie. \end{interlinea} -\begin{interlinea}{2} Studiando il fenomeno fisico si pu\`o concludere +\begin{interlinea}{1.5} Studiando il fenomeno fisico si pu\`o concludere che in un dato punto grava il peso della colonna d'aria che lo sovrasta, e che tale colonna \`e tanto pi\`u grave quanto maggiore \`e la superficie della sua base; il rapporto fra il peso e la base @@ -379,7 +384,6 @@ terrestre% \dots e che va a capo. }\fi. - La densit\`a del mercurio \`e molto alta e varia con la temperatura come pu\`o desumersi dalla tabella \ref{t:1}. diff --git a/macros/latex/contrib/toptesi/toptesi-it.pdf b/macros/latex/contrib/toptesi/toptesi-it.pdf index 25fb521d83..50bcb44e37 100644 Binary files a/macros/latex/contrib/toptesi/toptesi-it.pdf and b/macros/latex/contrib/toptesi/toptesi-it.pdf differ diff --git a/macros/latex/contrib/toptesi/toptesi-it.tex b/macros/latex/contrib/toptesi/toptesi-it.tex index 0cb2139025..8798f34e19 100644 --- a/macros/latex/contrib/toptesi/toptesi-it.tex +++ b/macros/latex/contrib/toptesi/toptesi-it.tex @@ -26,46 +26,44 @@ % numerazioneromana,% % libro% ]{toptesi}\errorcontextlines=100 -\ProvidesFile{toptesi-it.tex}[2019-07-04 v.0.9.42 TOPtesi Italian Documentation] +\ProvidesFile{toptesi-it.tex}[2020-05-12 v.0.9.47 TOPtesi Italian Documentation] %%% Il pacchetto imakeidx va caricato prima di pdfx, %%% altrimenti non funziona bene \usepackage{imakeidx}% Vedi documentazione \indexsetup{headers={\indexname}{\indexname}} - -% Avendo caricato il pacchetto filecontents.sty nella classe -% questo ambiente va caricato dopo \documenclass e prima di -% caricare pdfx. -% Viene riscritto tranquillamente ad ogni compilazione. -% -\begin{filecontents*}{\jobname.xmpdata} +%%%% Dal 2020 non c è più bisogno di caricare il pacchetto filecontents.sty +%%%% Basta usare l'ambiente pdsfxmetadata proprio come viene fatto +%%%% qui sotto, prima di caricare il pacchetto pdfx. +\begin{pdfxmetadata} \Title{La classe TOPtesi} \Author{Claudio Beccari} \Publisher{Claudio Beccari} -\Keywords{Monografia di laurea\sep +\Keywords{Manuale di TOPtesi\sep Tesi di laurea\sep Tesi di dottorato\sep classe TOPtesi\sep pdfLaTeX\sep XeLaTeX\sep LuaLaTeX} +\end{pdfxmetadata} -\end{filecontents*} -% \unless\ifXeTeX \usepackage[a-1b]{pdfx}% vedi documentazione \fi \ifPDFTeX \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} - \usepackage{newtxtext,newtxmath,textcomp,textalpha} \usepackage{amsmath,amssymb} + \usepackage{newtxtext,newtxmath,textcomp,textalpha} \setactivedoublequote \else \usepackage{fontspec} - \usepackage{xcolor} - \setmainfont[Ligatures=TeX]{TeX Gyre Termes} - \setsansfont[Ligatures=TeX, Scale=MatchLowercase]{TeX Gyre Heros} + \setmainfont[Ligatures=TeX]{Libertinus Serif} + \setsansfont[Ligatures=TeX]{Libertinus Sans} \setmonofont{UM Typewriter} +% \setmonofont[StylisticSet={1,3}]{Inconsolatazi4} +% \newfontfamily{\greektt}{CMU Typewriter Text} + \setmonofont{NewComputerModern Mono} \newfontfamily{\fetamont}{Fetamont} \newcommand*\MP{{\fetamont METAPOST}\xspace} \newcommand\GuIT{{\fontfamily{lmr}\scshape @@ -79,8 +77,8 @@ LuaLaTeX} \newfontfamily{\greekfont}{GFS Bodoni} \fi -\usepackage{metalogo,longtable,booktabs,array, -tabularx,enumitem,ragged2e,siunitx,curve2e,microtype,wrapfig} +\usepackage{metalogo,longtable,booktabs,array,xcolor, +tabularx,enumitem,ragged2e,siunitx,curve2e,microtype} \usepackage{afterpage,wrapfig} @@ -91,8 +89,8 @@ tabularx,enumitem,ragged2e,siunitx,curve2e,microtype,wrapfig} \newcommand*\Oarg[1]{\texttt{[#1]}} -\NewDocumentCommand\prog{s m}{\textsf{#2}% - \IfBooleanTF{#1}{}{\index{programma!#2@\textsf{#2}}}} +\NewDocumentCommand\prog{s m}{\textsf{\bfseries#2}% + \IfBooleanTF{#1}{}{\index{programma!#2@\textsf{\bfseries#2}}}} \NewDocumentCommand\pack{s m}{\textsf{\slshape#2}% \IfBooleanTF{#1}{}{\index{pacchetto!#2@\textsf{\slshape#2}}}} \NewDocumentCommand\class{s m}{\textsf{\slshape#2}% @@ -153,6 +151,7 @@ tabularx,enumitem,ragged2e,siunitx,curve2e,microtype,wrapfig} \renewcommand\TeXShop{\originalTeX\discretionary{-}{}{}Shop\xspace} \providecommand\TeXworks{} \renewcommand\TeXworks{\originalTeX\discretionary{-}{}{}works\xspace} +\providecommand\TeXLive{\originalTeX\ Live\xspace} \providecommand*\MiKTeX{\mbox{MiK\TeX}\xspace} \providecommand*\TeXLive{\mbox{\originalTeX}\discretionary{-}{}{\,}Live\xspace} @@ -197,7 +196,9 @@ tabularx,enumitem,ragged2e,siunitx,curve2e,microtype,wrapfig} \def\bottomfraction{1} \newcommand*\tasto[1]{\fbox{\sffamily#1}} - +% Questa macro compone le note marginali in bandiera diversa +% a seconda che si trovino sempre nel margine esterno, nelle +% pagine di destra o di sinistra \newcommand*\LRmarginpar[1]{\marginpar[\RaggedLeft#1]{\RaggedRight#1}} @@ -293,6 +294,9 @@ tabularx,enumitem,ragged2e,siunitx,curve2e,microtype,wrapfig} \makeindex[intoc,columns=2] \begin{document} +\hfuzz=10pt +\frenchspacing + % \thispagestyle{empty} @@ -340,13 +344,13 @@ Questo testo serve per descrivere come comporre tipograficamente la tesi di lau \english \sommario -This text describes how to typeset a university master thesis, or the bachelor final report, or the PhD dissertation through the well known typesetting program \LaTeX, or rather through its variants \pdfLaTeX, \XeLaTeX, or \LuaLaTeX; in order to produce the final document in a PDF archivable format according to the ISO regulation \mbox{19005-1} it's necessary to proceed as described in section~\ref{sec:XePDFA}. A PDFA archivable output file is more easily obtained with \LuaLaTeX and \pdfLaTeX. +This text describes how to typeset a university master thesis, or the bachelor final report, or the PhD dissertation through the well known typesetting program \LaTeX, or rather through its variants \pdfLaTeX, \XeLaTeX, or \LuaLaTeX; in order to produce the final document in a PDF archivable format according to the ISO regulation \mbox{19005-1} it's necessary to proceed as described in section~\ref{sec:XePDFA}. A PDF archivable output file is more easily obtained with \LuaLaTeX and \pdfLaTeX. \italiano \ringraziamenti -Ringrazio gli studenti del Politecnico di Torino che mi hanno sollecitato a mettere la mia esperienza a loro disposizione per predisporre e rendere disponibile il software necessario per preparare le loro tesi, monografie o dissertazioni con la qualità che solo \pdfLaTeX, \XeLaTeX\ o \LuaLaTeX\ riescono a produrre.\footnote{La composizione di questo testo di documentazione è stata eseguita con \ifPDFTeX\pdfLaTeX\else \ifLuaTeX\LuaLaTeX\else \XeLaTeX\fi\fi. Il programma di composizione \XeLaTeX\ presenta numerosi vantaggi su \prog*{pdflatex} per quel che riguarda l'uso dei font, anche per la matematica, ma non è ancora (2017) in grado di produrre l'uscita direttamente nel formato PDF, anche se apparentemente lo fa. In realtà la sua uscita è in un formato intermedio che viene poi trasformato automaticamente in PDF. L'esperienza mi insegna che in realtà le limitazioni di \XeLaTeX\ sono pochissime e, con la classe \pack*{toptesi}, la limitazione forse più importante, ma risolvibile, riguarda il formato PDF archiviabile che non è ottenibile direttamente, tanto che bisogna procedere come indicato nel paragrafo~\ref{sec:XePDFA}. Con \LuaLaTeX\ non ci sono le limitazioni di \XeLaTeX, quindi nel seguito si darà sempre la preferenza a \LuaLaTeX.} +Ringrazio gli studenti del Politecnico di Torino che mi hanno sollecitato a mettere la mia esperienza a loro disposizione per predisporre e rendere disponibile il software necessario per preparare le loro tesi, monografie o dissertazioni con la qualità che solo \pdfLaTeX, \XeLaTeX\ o \LuaLaTeX\ riescono a produrre.\footnote{La composizione di questo testo di documentazione è stata eseguita con \ifPDFTeX\pdfLaTeX\else \ifLuaTeX\LuaLaTeX\else \XeLaTeX\fi\fi. Il programma di composizione \XeLaTeX\ presenta numerosi vantaggi su \prog*{pdflatex} per quel che riguarda l'uso dei font, anche per la matematica, ma non è ancora (2020) in grado di produrre l'uscita direttamente nel formato PDF, anche se apparentemente lo fa. In realtà la sua uscita è in un formato intermedio che viene poi trasformato automaticamente in PDF. L'esperienza mi insegna che in realtà le limitazioni di \XeLaTeX\ sono pochissime e, con la classe \pack*{toptesi}, la limitazione forse più importante, ma risolvibile, riguarda il formato PDF archiviabile che non è ottenibile direttamente, tanto che bisogna procedere come indicato nel paragrafo~\ref{sec:XePDFA}. Con \LuaLaTeX\ non ci sono le limitazioni di \XeLaTeX, quindi nel seguito si darà sempre la preferenza a \LuaLaTeX.} \pagestyle{headings} \figurespagetrue @@ -357,7 +361,7 @@ Ringrazio gli studenti del Politecnico di Torino che mi hanno sollecitato a mett %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \chapter{Questo manuale: cosa fare e cosa non fare} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -Prima di prendere ironicamente l'aggettivo `rapida' attribuito a questa guida di più di 170 pagine, vorrei sottolineare che essa è lunga perché TOPtesi permette di svolgere moltissimi compiti. E per comporre bene la propria tesi, le cose da fare sono moltissime e non sono descritte tutte in questa guida. Ma c'è un altro aspetto: comporre tipograficamente non consiste solo nel seguire certe regole tali da far diventare questa operazione una cosa che potrebbe fare qualunque macchina; c'è di mezzo il gusto estetico personale; la materia di cui si tratta nella tesi; il fatto che ogni problema di composizione non ha mai un'unica soluzione; e via di questo passo. Non è un caso che il sistema \TeX offra una moltitudine di pacchetti per comporre tesi, ognuno di quali risolve certi problemi di composizione secondo i gusti di chi ha scritto quella classe, o quel pacchetto, o quel modello. +Prima di prendere ironicamente l'aggettivo `rapida' attribuito a questa guida di più di 170 pagine, vorrei sottolineare che essa è lunga perché \TOPtesi permette di svolgere moltissimi compiti. E per comporre bene la propria tesi, le cose da fare sono moltissime e non sono descritte tutte in questa guida. Ma c'è un altro aspetto: comporre tipograficamente non consiste solo nel seguire certe regole tali da far diventare questa operazione una cosa che potrebbe fare qualunque macchina; c'è di mezzo il gusto estetico personale; la materia di cui si tratta nella tesi; il fatto che ogni problema di composizione non ha mai un'unica soluzione; e via di questo passo. Non è un caso che il sistema \TeX offra una moltitudine di pacchetti per comporre tesi, ognuno di quali risolve certi problemi di composizione secondo i gusti di chi ha scritto quella classe, o quel pacchetto, o quel modello. Ecco, questa guida è lunga perché cerco di spiegare in dettaglio come certi problemi siano stati affrontati in modo che il laureando possa capire come li ho affrontati e quali alternative esistono. @@ -385,7 +389,7 @@ Detto in altre parole, non si cominci nemmeno a leggere questo manuale e non si \end{description} -\section{A cosa serve TOPtesi} +\section{A cosa serve \TOPtesi} Serve per comporre una tesi, sia essa la \emph{monografia} (detta anche \emph{elaborato finale} o \emph{tesi di laurea triennale}) preparata alla fine della laurea triennale, oppure la \emph{tesi di laurea} predisposta alla fine della laurea magistrale, o della laurea a ciclo unico, oppure la \emph{dissertazione di dottorato}. Ciascuna tesi può essere scritta in italiano o in un'altra lingua. @@ -403,13 +407,13 @@ Con la versione 6.x di \TOPtesi il pacchetto viene esteso anche alla compilazion Come tutti i pacchetti che estendono le funzionalità di \LaTeX, \TOPtesi definisce la geometria della pagina e dispone le informazioni accessorie come le testatine e i piedini. Queste impostazioni non sono modificabili né con \TOPtesi né con la maggior parte degli altri pacchetti destinati alle tesi. Più o meno vale il concetto “prendere o lasciare”. Questo è un aspetto importante: \textcolor{red}{la licenza \LaTeX Project Public Licence (LPPL), riportata per esteso nell'appendice della pagina~\pageref{ch:LPPL} consente di apportare modifiche ai file di questo pacchetto, ma solo a certe condizioni. Per non violare queste condizioni, nel caso che si vogliano apportare modifiche ai file del pacchetto, si veda il capitolo~\ref{ch:customise}}. -{\tolerance=3000 Prima di usare \TOPtesi si esaminino i semplici esempi contenuti nei file accessori di questo pacchetto: \file{toptesi-example.pdf}, \file{toptesi-example-luatex.pdf}, \file{topfront.example.pdf}, \texttt{toptesi-example-con-frontespizio.pdf}\index{file!toptesi-example-con-frontespizio.pdf@\texttt{toptesi\discretionary{-}{}{-}example\discretionary{-}{}{-}con\discretionary{-}{}{-}frontespizio.pdf}} e diversi altri che sono variazioni dei precedenti. Si potrà vedere se l'impaginazione aggrada oppure se si desidera un'altra impaginazione; in questo secondo caso ci si rivolga ad altre classi e ad altri pacchetti: in rete non è difficile usare un motore di ricerca per trovare il pacchetto \pack{frontespizio}, le classi \class{sapthesis}, \class {suftesi}, i modelli \file{TesiModerna}, \file{TesiClassica} e diverse altre classi che non cito per brevità, ma segnalo che sono prodotte specialmente nel mondo angloamericano e sono ancor meno adatte ad una personalizzazione multilingue. Alcune di queste classi sono dotate di eccellenti file di documentazione, altre sono usabili grazie a “template” o modelli di tesi scritte facendo uso di testo fittizio, ma tali da rendere immediatamente l'idea di come usare quei software.\par} +{\tolerance=3000 Prima di usare \TOPtesi si esaminino i semplici esempi contenuti nei file accessori di questo pacchetto: \file{toptesi-example.pdf}, \file{toptesi-example-luatex.pdf}, \file{topfront\discretionary{.}{}{.}example.pdf}, \texttt{toptesi-example-con-frontespizio.pdf}\index{file!toptesi-example-con-frontespizio.pdf@\texttt{toptesi\discretionary{-}{}{-}example\discretionary{-}{}{-}con\discretionary{-}{}{-}frontespizio.pdf}} e diversi altri che sono variazioni dei precedenti. Si potrà vedere se l'impaginazione aggrada oppure se si desidera un'altra impaginazione; in questo secondo caso ci si rivolga ad altre classi e ad altri pacchetti: in rete non è difficile usare un motore di ricerca per trovare il pacchetto \pack{frontespizio}, le classi \class{sapthesis}, \class {suftesi}, i modelli \file{TesiModerna}, \file{TesiClassica} e diverse altre classi che non cito per brevità, ma segnalo che sono prodotte specialmente nel mondo angloamericano e sono ancor meno adatte ad una personalizzazione multilingue. Alcune di queste classi sono dotate di eccellenti file di documentazione, altre sono usabili grazie a “template” o modelli di tesi scritte facendo uso di testo fittizio, ma tali da rendere immediatamente l'idea di come usare quei software.\par} Volendo, anche i file sorgente di questi esempi d'uso di \TOPtesi, elencati sopra con i nomi dei corrispondenti file PDF, possono essere usati come modelli; persino il file sorgente di questo manuale può essere usato come modello; basta cercare nelle cartelle dell'installazione di \TOPtesi i file \file{.tex}, copiarseli in una propria cartella personale, cambiare loro il nome (attenzione, questo è importantissimo) e modificarne il contenuto a proprio piacimento. Con un minimo di attenzione si possono eliminare quelle parti che non servono; si possono modificare le opzioni della classe, si possono compilare con diversi motori di tipocomposizione del sistema \TeX. Non è forse fuori luogo sottolineare che l'uso dei modelli può essere molto utile per cominciare, ma fa perdere di vista il fatto che \LaTeX può fare molte più cose di quelle che si inseriscono solitamente negli esempi. Per le tesi di dottorato da svolgere presso la \emph{SCUola di DOttorato} (ScuDo) del Politecnico di Torino esiste un'opzione specifica per invocare altri pacchetti, in aggiunta o al posto di alcuni presenti nella funzionamento ordinario di \TOPtesi, per impostare la lingua inglese per l'intero documento, e per soddisfare le specifiche richieste di questa scuola per il frontespizio e il retrofrontespizio. -Esistono opzioni specifiche anche per le normali tesi triennale, magistrale e dottorale (quest'ultima di tipo generico, non riferita alla scuola di dottorato del Politecnico di Torino), oltre all'opzione per la tesina e a un'opzione di personalizzazione quasi totale, che permette di comporre il frontespizio e il retrofrontespizio della tesi in modo assolutamente libero; questa personalizzazione quasi assoluta si riferisce al solo frontespizio, non agli altri aspetti della tesi, ma per usarla bisogna conoscere l'uso di \LaTeX molto bene. +{\tolerance=1000 Esistono opzioni specifiche anche per le normali tesi triennale, magistrale e dottorale (quest'ultima di tipo generico, non riferita alla scuola di dottorato del Politecnico di Torino), oltre all'opzione per la tesina e a un'opzione di personalizzazione quasi totale, che permette di comporre il frontespizio e il retrofrontespizio della tesi in modo assolutamente libero; questa personalizzazione quasi assoluta si riferisce al solo frontespizio, non agli altri aspetti della tesi, ma per usarla bisogna conoscere l'uso di \LaTeX molto bene.\par} \section{Cosa leggere} Un manuale di solito non è da leggere dalla prima pagina all'ultima. Se ne possono saltare diverse sezioni, ma è bene sapere che cosa si salta, quindi sfogliare rapidamente le pagine che si saltano non fa male. @@ -434,11 +438,15 @@ La codifica di entrata \opt{utf8} è consigliabile anche se si usa \pdfLaTeX, ma Infine il capitolo~\ref{cap:comandispecifici} contiene tutti i comandi e gli ambienti introdotti da \TOPtesi per la composizione del frontespizio e per la sua personalizzazione, per la composizione di strutture di testo o di figure in estensione a quelle normali di \LaTeX, e via di questo passo. +\ifLuaTeX +Questo testo è stato composto scrivendo sia in italiano sia in inglese con alcuni esempi in alte lingue compreso il greco che, appunto, non usa l'alfabeto latino. È stato composto con \LuaLaTeX usando font OpenType distribuiti con l'installazione \TeXLive del sistema \TeX. In particolare, non si sono usati i font di default, che sono costituiti dalla tre famiglie con grazie, senza grazie e a spaziatura fissa della collezione Latin Modern. Invece è stato composto con il Libertinus Serif per il font con grazie; il Libertinus Sans per il font senza grazie, e il New Computer Modern Mono per il font a spaziatura fissa. Più avanti si vedrà come sono stati invocati nel preambolo del file sorgente di questa documentazione. +\fi + \section{Errori da evitare} -Tuttavia si abbia anche cura di \textcolor{red}{non copiare nel preambolo di una tesi da comporre con \TOPtesi un preambolo recuperato dalla tesi di un amico o, peggio ancora, da siti generici della rete!}. Sarebbe una operazione fonte di molte delusioni, perché da una parte potrebbero venire caricati pacchetti incompatibili con \TOPtesi, dall'altro alcuni comandi di \TOPtesi ne potrebbero venire modificati con funzionalità diverse da quelle previste; infine nei siti “non certificati” della rete si trovano versioni obsolete, fonte di innumerevoli delusioni. Potrebbero anche manifestarsi dei conflitti fra pacchetti caricati nel preambolo e quelli già caricati da \TOPtesi. Un modello di tesi copiato da un amico può esporre anche a delusioni incredibili, mancanza di supporto on line e incomprensioni di vario genere e a notevoli perdite di tempo anche quando l'aiuto viene richiesto direttamente a me (per favore, passare sempre attraverso il Forum del \GuIT); a questo proposito si veda quanto scritto nel capitolo~\ref{ch:customise}. \emph{Per questo motivo da questa versione di \TOPtesi, viene fatto un controllo e se la classe non carica la giusta versione del modulo \pack{toptesi.sty}, emette un messaggio molto visibile e termina la compilazione immediatamente} +Tuttavia si abbia anche cura di \textcolor{red}{non copiare nel preambolo di una tesi da comporre con \TOPtesi un preambolo recuperato dalla tesi di un amico o, peggio ancora, da siti generici della rete!}. Sarebbe una operazione fonte di molte delusioni, perché da una parte potrebbero venire caricati pacchetti incompatibili con \TOPtesi, dall'altro alcuni comandi di \TOPtesi ne potrebbero venire modificati con funzionalità diverse da quelle previste; infine nei siti “non certificati” della rete si trovano versioni obsolete, fonte di innumerevoli delusioni. Potrebbero anche manifestarsi dei conflitti fra pacchetti caricati nel preambolo e quelli già caricati da \TOPtesi. Un modello di tesi copiato da un amico può esporre anche a delusioni incredibili, mancanza di supporto on line e incomprensioni di vario genere e a notevoli perdite di tempo anche quando l'aiuto viene richiesto direttamente a me (per favore, passare sempre attraverso il Forum del \GuIT); a questo proposito si veda quanto scritto nel capitolo~\ref{ch:customise}. \emph{Per questo motivo da questa versione~6 di \TOPtesi, viene fatto un controllo e se la classe non carica la giusta versione del modulo \pack{toptesi.sty}, emette un messaggio molto visibile e termina la compilazione immediatamente} -\section{Pacchetti già caricati da TOPtesi} +\section{Pacchetti già caricati da \TOPtesi} Vale la pena di elencare i pacchetti o moduli già caricati dalla classe \class{toptesi}, al fine di evitare di ricaricarli nel preambolo della propria tesi. \begin{description}[noitemsep]\def\Item[#1]{\item[\normalfont\pack{#1}]} \Item[toptesi] è il file di macro di \TOPtesi; potrebbe anche essere usato con una classe diversa da \class{toptesi}; la classe \class{toptesi} però lo carica specificandone la data in modo che se la versione presente sul proprio calcolatore fosse obsoleta, verrebbe almeno generato un avviso (Warning) che lo segnala. @@ -452,7 +460,8 @@ Vale la pena di elencare i pacchetti o moduli già caricati dalla classe \class{ % \Item[xparse] mette a disposizione dell'utente delle macro potentissime per definire altre macro; le sue funzionalità sono state usate in diversi moduli di questo pacchetto; un utente esperto, dopo averne letto la documentazione ed averla capita a fondo, può usare questo pacchetto senza bisogno di andarlo a cercare in rete. % -\Item[fancyvrb] serve per comporre testo verbatim in modo più personalizzabile che con i semplici comandi del nucleo di \LaTeX; tuttavia quando il laureando deve listare i programmi che ha scritto per svolgere le ricerche connesse con la sua tesi, è comodo disporre di un comando che importi un file esterno inserendolo direttamente in modo verbatim nel file della propria tesi. Esistono altri pacchetti che permettono di eseguire questa operazione, ma questo ha la proprietà di lavorare correttamente anche con testi codificati~\opz{utf8}. +\Item[fancyvrb] serve per comporre testo verbatim in modo più personalizzabile che con i semplici comandi del nucleo di \LaTeX; tuttavia quando il laureando deve listare i programmi che ha scritto per svolgere le ricerche connesse con la sua tesi, è comodo disporre di un comando che importi un file esterno inserendolo direttamente in modo verbatim nel file della propria tesi. Esistono altri pacchetti che permettono di eseguire questa operazione, ma questo ha la proprietà di lavorare correttamente anche con testi codificati~\opz{utf8}. In \TOPtesi serve anche per creare un ambiente \amb{pdfxmetadata} in grado di produrre il file che serve al pacchetto \pack{pdfx} per introdurre nel file PDF finale i metadati relativi al particolare documento che si vuole comporre; quei metadati sono richiesti dalle norme ISO sull'archiviabilità. Nel seguito si mostreranno degli esempi. + % \Item[xkeyval] serve per gestire le opzioni con la sintassi \emph{chiave\,$=$\,valore}; è funzionale al lavoro della classe, ma se l'utente sa come gestire queste cose, e ne ha letto la documentazione, può usarlo anche per la definizione di comandi personali dotati di opzioni a chiave. % @@ -466,12 +475,9 @@ Vale la pena di elencare i pacchetti o moduli già caricati dalla classe \class{ % \Item[babel] viene caricato con le opzioni \opt{english} e \opt{italian}, cosicché l'italiano risulta svolgere le funzioni della lingua principale; questo pacchetto viene caricato solo se si compone la tesi con \prog{pdflatex}, che \TOPtesi riconosce da solo grazie all'uso del pacchetto \pack{iftex}. Con l'opzione \chiave{tipotesi}{scudo}, invece, l'inglese viene impostato come lingua principale. % -\Item[polyglossia] viene caricato solo se la tesi viene composta con \XeLaTeX\ o \LuaLaTeX. L'italiano viene specificato come lingua principale, e l'inglese come altra lingua. Con l'opzione \chiave{tipotesi}{scudo} l'inglese viene viene invece impostato come lingua principale. - -% -\Item[pdfx] ora deve venire caricato esplicitamente dall'utente per produrre un file possibilmente conforme al formato PDF/A; nelle versioni precedenti esso veniva caricato specificando l'opzione \opt{pdfa}. Ora l'opzione è ancora attiva, ma il suo scopo è solo quello di emettere l'avviso di consultare la documentazione. Per usare correttamente \pack{pdfx} \TOPtesi carica anche il pacchetto che segue e lo fa indipendentemente dal fatto che si voglia usare \pack{pdfx}. +\Item[polyglossia] viene caricato solo se la tesi viene composta con \XeLaTeX\ o \LuaLaTeX. L'ita"liano viene specificato come lingua principale, e l'inglese come altra lingua. Con l'opzione \chiave{tipotesi}{scudo} l'inglese viene viene invece impostato come lingua principale. % -\Item[filecontents] serve per ridefinire gli ambienti \amb{filecontents} e \amb{filecontents*} in modo che non siano soggetti alle limitazioni degli omonimi ambienti del nucleo di \LaTeX. Quelli originali non si possono usare fuori del preambolo ma si possono usare anche prima della dichiarazione di classe; inoltre gli ambienti originali non permettono di ridefinire il loro contenuto se non dopo aver cancellato a mano il file che l'ambiente creerebbe. Per i file da comporre con \TOPtesi è necessario creare i corrispondenti file con i metadati; ad ogni modifica dei metadati diventerebbe troppo complesso ricordarsi di cancellare i file precedentemente creati; non che sia difficile, ma è facile dimenticarsene e finire con trovare messaggi d'errore incomprensibili oppure file non conformi con le norme PDF/A. +\Item[pdfx] ora deve venire caricato esplicitamente dall'utente per produrre un file possibilmen"te conforme al formato PDF/A; nelle versioni precedenti esso veniva caricato specifi"cando l'opzione \opt{pdfa}. Ora l'opzione è ancora attiva, ma il suo scopo è solo quello di emettere l'avviso di consultare la documentazione. Per usare correttamente \pack{pdfx} \TOPtesi carica anche il pacchetto che segue e lo fa indipendentemente dal fatto che si voglia usare \pack{pdfx}. % \Item[hyperref] serve per comporre i collegamenti ipertestuali. Non è il caso di preoccuparsi di quando \TOPtesi carica \pack{hyperref} perché ci pensa lui a usarlo al momento opportuno. Si veda più avanti per sapere come e quando eventualmente configurare \pack{hyperref} con le sue opzioni. \end{description} @@ -490,7 +496,7 @@ Si noti: usando \prog{pdflatex}, non sono precaricati i pacchetti \pack{inputenc È voluto: \pack{inputenc} non deve essere caricato se si usano \XeLaTeX\ o \LuaLaTeX, ma in entrambi i casi l'editor che si usa per comporre il file sorgente \emph{deve} essere configurato in modo che salvi i file sorgente con la codifica \opt{utf8}. Con \pdfLaTeX\ ci sarebbe una certa libertà nello scegliere la codifica d'entrata, ma, insisto, sarebbe meglio in ogni caso evitare di usare qualunque altra codifica diversa da \opt{utf8}. -Per i font di uscita la o le codifiche da specificare dipendono dalle lingue usate; ripeto la raccomandazione di preferire i font espressamente creati per l'uso con \pdfLaTeX, quando si compone con questo programma; se si usano i programmi \XeLaTeX\ o \LuaLaTeX\ si abbia l'accortezza di usare il pacchetto \pack{fontspec} (che \emph{non} è precaricato) specificandogli le opzioni giuste e caricando poi, mediante le sue funzionalità, i font OpenType di cui si sia accertata la presenza sulla propria macchina e si sia verificato che contengano tutti i glifi che si intendono usare nella tesi. Tanto per sottolineare l'importanza di questa verifica, questi programmi lavorano di default con i font Latin Modern, che, come dice il nome, contengono \emph{solo} i caratteri latini. Se ci fosse bisogno di scrivere in greco o in cirillico, per esempio, allora i font OpenType \Font{CMU}\footnote{Questi font sono distribuiti con il sistema \TeX completo e aggiornato; la sigla CMU sta per \Font{Computer Modern Unicode}; contiene un solo corpo che può essere ingrandito o rimpicciolito a piacere; contiene sia i font latini, sia quelli greci e quelli cirillici; sostanzialmente contiene tutti i glifi greci che sono disponibili con la collezione CBfonts, anche quelli insoliti come `qoppa", `stigma' e `sampi". I font OpenType CMU contengono gli stili Bright, Classical Serif, Concrete, Sans Serif, Sans Serif Demi Condensed, Serif, Serif Extra (sostanzialmente i font della forma slanted), Serif Upright Italic, Typewriter Text, Typewriter Text Variable Width. La collezione è quindi molto completa. Per caricarli con \pack{fontspec} bisogna farlo per nome dei singoli font, e non per famiglia, come si fa abitualmente; bisogna leggere attentamente la documentazione di \amb{fontspec}, perché la cosa non è difficile ma è delicata.} contengono anche questi alfabeti. +Per i font di uscita la o le codifiche da specificare dipendono dalle lingue usate; ripeto la raccomandazione di preferire i font espressamente creati per l'uso con \pdfLaTeX, quando si compone con questo programma; se si usano i programmi \XeLaTeX\ o \LuaLaTeX\ si abbia l'accortezza di usare il pacchetto \pack{fontspec} (che \emph{non} è precaricato) specificandogli le opzioni giuste e caricando poi, mediante le sue funzionalità, i font OpenType di cui si sia accertata la presenza sul proprio calcolatore e si sia verificato che contengano tutti i glifi che si intendono usare nella tesi. Tanto per sottolineare l'importanza di questa verifica, questi programmi lavorano di default con i font Latin Modern, che, come dice il nome, contengono \emph{solo} i caratteri latini. Se ci fosse bisogno di scrivere in greco o in cirillico, per esempio, allora i font OpenType \Font{CMU}\footnote{Questi font sono distribuiti con il sistema \TeX completo e aggiornato; la sigla CMU sta per \Font{Computer Modern Unicode}; contiene un solo corpo che può essere ingrandito o rimpicciolito a piacere; contiene sia i font latini, sia quelli greci e quelli cirillici; sostanzialmente contiene tutti i glifi greci che sono disponibili con la collezione CBfonts, anche quelli insoliti come `qoppa", `stigma' e `sampi". I font OpenType CMU contengono gli stili Bright, Classical Serif, Concrete, Sans Serif, Sans Serif Demi Condensed, Serif, Serif Extra (sostanzialmente i font della forma slanted), Serif Upright Italic, Typewriter Text, Typewriter Text Variable Width. La collezione è quindi molto completa. Per caricarli con \pack{fontspec} bisogna farlo per nome dei singoli font, e non per famiglia, come si fa abitualmente; bisogna leggere attentamente la documentazione di \amb{fontspec}, perché la cosa non è difficile ma è delicata.} contengono anche questi alfabeti. Ecco quindi che la specificazione delle codifiche dei font di uscita è importante per \pdfLaTeX\ perché con questo programma i font predefiniti sono i \Font{Computer Modern} codificati in \opt{OT1}; questi infatti mancano di qualunque segno accentato e non sono nemmeno completamente compatibili con la codifica \acro{ascii}. Questi font preimpostati potevano (forse) andare bene ai primordi dell'esistenza del sistema \TeX ma non vanno bene oggi nemmeno per l'inglese, visto che anche in inglese si fanno citazioni di testi o di nomi di persone o di luoghi in lingue straniere che usano caratteri latini accentati. @@ -502,24 +508,24 @@ Non si è caricato nulla per comporre la bibliografia (eccetto per il modulo Scu Non si sono caricati nemmeno i pacchetti per il disegno programmato come, per esempio, \pack{tikz}; a un laureando in ingegneria certamente servono, a un laureando in letteratura medievale difficilmente potrebbero servire. -Non venga in mente al laureando in discipline che fanno uso della matematica delle grandezze, di caricare quei font che non gli permettono di comporla secondo le norme ISO-UNI; fra questi font incompatibili con le norme ci sono i font \Font{euler}, certamente molto belli, ma non consentono di rispettare le norme ISO-UNI, perché i caratteri non sono sufficientemente inclinati come invece deve essere un buon corsivo matematico (\emph{math italics}) e molti caratteri non sono facilmente distinguibili da quelli da comporre in tondo (\emph{roman}). Le norme ISO-UNI, applicabili alle discipline che usano la matematica delle grandezze, prescrivono un uso molto specifico di font di famiglie e serie diverse, in quanto queste assumono significati particolari per questo tipo di matematica. +Non venga in mente al laureando in discipline che fanno uso della matematica delle grandezze, di caricare quei font che non gli permettono di comporla secondo le norme ISO-UNI; fra questi font incompatibili con le norme ci sono i font \Font{euler}, certamente molto belli, ma non consentono di rispettare le norme ISO-UNI, perché i caratteri non sono sufficientemente inclinati come invece deve essere un buon corsivo matematico (\emph{math italics}) e molti caratteri non sono facilmente distinguibili da quelli da comporre in tondo (\emph{roman}). Le norme ISO-UNI, applicabili alle discipline che usano la matematica delle grandezze, prescrivono un uso molto specifico di font di famiglie, serie e forme diverse, in quanto queste assumono significati particolari per questo tipo di matematica. \section{Pacchetti da non caricare affatto} \textcolor{red}{Non si devono assolutamente caricare pacchetti che modifichino l'aspetto della pagina, né caricare pacchetti che modifichino la composizione dei titoli o delle didascalie o delle note}; eccezionalmente si può caricare il pacchetto \pack{caption}; \TOPtesi verifica se tale pacchetto è stato effettivamente caricato e, nel caso, non definisce nemmeno le macro che esso userebbe per le sue didascalie. -Se si vuole fare questo genere di modifiche, stile della pagina, testatine, piedini, note,~\dots\ è meglio rivolgersi ad altre classi diversamente configurabili; cito fra le tante \class{suftesi}, \class{sapthesis}; ma quando si va a leggerne la documentazione si scopre che tutti vietano la modifica dell'aspetto della pagina o dei titoli o delle didascalie, a meno che quelle stesse classi non dispongano di comandi già predisposti per la personalizzazione di alcuni di quegli elementi. In particolare \class{sufftesi} consente moltissime personalizzazioni che riguardano prevalentemente il testo, oltre alla geometria della pagina; esso è una validissima alternativa a TOPtesi. +Se si vuole fare questo genere di modifiche, stile della pagina, testatine, piedini, note,~\dots\ è meglio rivolgersi ad altre classi diversamente configurabili; cito fra le tante \class{suftesi}, \class{sapthesis}, \class{unifith}; ma quando si va a leggerne la documentazione si scopre che tutti vietano la modifica dell'aspetto della pagina o dei titoli o delle didascalie, a meno che quelle stesse classi non dispongano di loro comandi già predisposti per la personalizzazione di alcuni di quegli elementi. In particolare \class{sufftesi} consente moltissime personalizzazioni che riguardano prevalentemente il testo, oltre alla geometria della pagina; esso è una validissima alternativa a \TOPtesi. Se il laureando va a cercare in rete altri pacchetti per comporre tesi, si trova davanti allo stesso ostacolo. Se la propria università prescrive stili di pagina diversi o mette a disposizione file di classe appositi (di solito piuttosto datati e costruiti male), si renderebbe necessario creare una classe apposita per soddisfare quelle esigenze. Non saprei cosa consigliare, se non ricorrere ad una classe generica, per esempio \class{book}, e caricare tutti i possibili pacchetti di configurazione che si considerino necessari, per arrivare ad un risultato come quello richiesto dalla propria sede universitaria; i pacchetti preconfezionati come \TOPtesi, e gli altri citati sopra, risparmiano questo lavoro, ma sono rigidi. In fondo anche \TOPtesi è costruito così: parte dalla classe \class{report} e vi costruisce attorno quello che si è voluto fare in base a prescrizioni valide per il Politecnico di Torino, ma lungamente discusse e concordate con l'ateneo e poi rese compatibili con le prescrizioni di diverse altre università. Non è certo perfetto, ma è un buon compromesso. -\goodpagebreak[5] +%\goodpagebreak[5] -\section{Comandi e ambienti di TOPtesi} +\section{Comandi e ambienti di \TOPtesi} Nel capitolo~\ref{cap:comandispecifici} sono descritti i comandi specifici e gli ambienti introdotti da \TOPtesi in aggiunta a quelli della classe \class{report} originali o modificati da \TOPtesi. -In particolare, anche se \TOPtesi è costruita sopra la classe \class{report}, dispone dei comandi di ‘super\-zionamento’ \cs{frontmatter},\cs{mainmatter} e \cs{backmatter}, specifici della classe \class{book}, e qui adattati per lo scopo della tesi. Vale la pena ricordare come sono adattati. +In particolare, anche se \TOPtesi è costruita sopra la classe \class{report}, dispone dei comandi di ‘super"zionamento’ \cs{frontmatter},\cs{mainmatter} e \cs{backmatter}, specifici della classe \class{book}, e qui adattati per lo scopo della tesi. Vale la pena ricordare come sono adattati. \begin{description}[noitemsep] \item[\cs{frontmatter}] è l'impostazione di default; non è necessario specificare questo comando; la differenza rispetto alla definizione della classe \class{book} consiste nel fatto che per impostazione predefinita \emph{non} usa la numerazione romana per le pagine; questo tipo di numerazione si può ottenere solo con l'opzione della classe \chiave{numerazioneromana} che, se impostata, modifica l'aspetto dei numeri usando il maiuscoletto per quelli romani, invece delle cifre arabe. I comandi di sezionamento non asteriscati non sono numerati ma sono elencati nell'indice; tuttavia al primo comando \cs{chapter} che il compilatore incontra, passa automaticamente alla \cs{mainmatter}. Per questo i capitoli corrispondenti ai ringraziamenti e al sommario sono ottenuti mediante comandi specifici proprio per non commutare alla \cs{mainmatter}. % @@ -573,10 +579,9 @@ detti anche “word processor”, che fanno parte più o meno di default di ogni dotazione iniziale di qualsiasi PC di qualunque marca e con qualunque sistema operativo. -Fra i vari programmi disponibili, uno in particolare spicca per la sua particolarità: \LaTeX. Veramente esso non è un word processor, anche se a prima vista lo sembrerebbe; il suo scopo non è finalizzato al testo in quanto tale, bensì alla sua composizione tipografica; esso è un programma di \emph{tipocomposizione}. +Fra i vari programmi disponibili per la composizione di testi, uno in particolare spicca per la sua particolarità: \LaTeX. Veramente esso non è un word processor, ma è un programma di \emph{ipocomposizione}: il suo scopo non è finalizzato al testo in quanto tale, bensì alla sua composizione tipografica. Ma il processo avviene in modo sequenziale: l'autore scrive il suo testo badando al contenuto; successivamente il programma lo mette in forma tipografica. -\LaTeX è una specie di linguaggio di programmazione che viene interpretato da altri programmi, come \prog{pdftex}, \prog{xetex}, e \prog{luatex}. La prima versione del sistema \TeX è stata creata nel -1978, ma il programma è usatissimo ancora oggi, naturalmente molto aggiornato e ampliato, e questo fatto è una cosa insolita nel panorama turbolento di novità dell'informatica. +{\tolerance 3000 \LaTeX è un linguaggio di mark-up, una specie di linguaggio di programmazione, che viene interpretato da altri programmi, come \prog{pdftex}, \prog{xetex}, e \prog{luatex}. La prima versione del sistema \TeX è stata creata nel 1978, ma il programma è usatissimo ancora oggi, naturalmente molto aggiornato e ampliato, e questo fatto è una cosa insolita nel panorama turbolento di novità dell'informatica.\par} Secondo me, il suo successo è dovuto a due fatti: (a) esso è stato progettato e implementato da un matematico per comporre i suoi @@ -681,7 +686,7 @@ Si faccia però attenzione alle distribuzioni Debian; sono eccellenti e ne è ga Non solo; \TeXShop ha una impostazione, attivabile e disattivabile in qualunque momento, con la quale le due finestre, quella di editing e quella che mostra il file PDF composto, normalmente indipendenti, possono essere riunite in un unica finestra, ed essere spostate, ridimensionate, abbattute nella task bar, recuperate dalla task bar, come se fossero un oggetto solo. Personalmente trovo questa funzionalità molto comoda specialmente su un laptop. \end{description} -Merita segnalare che per tutte e tre le piattaforme è disponibile e, talvolta, è già installato di default anche l'editor \TeXworks (multipiattaforma) che, con il suo visualizzatore interno, consente di eseguire la ricerca diretta e inversa. Ad alcuni, abituati a interfacce grafiche fornite di molte barre piene di icone per eseguire il possibile e l'impossibile, \TeXworks piace poco perché la sua schermata è minimale, ma c'è un motivo: nei moderni schermi larghi, con rapporto di forma 16:9, lo schermo contiene accostate e senza sovrapposizioni sia la finestra di editing sia quella del testo composto; questo è molto comodo, più di quanto si possa immaginare, per “lavorare” agevolmente il documento da comporre. Benché anche Texmaker e TeXstudio siano in grado di accostare le due schermate, essi consumano molto spazio per le barre superiori, inferiori e laterali, cosicché le vere aree destinate all'editing o alla visualizzazione ne risultano corrispondentemente ristrette, tanto da far preferire \TeXworks sui laptop e ancor di più sui netbook. +Merita segnalare che per tutte e tre le piattaforme è disponibile e, talvolta, è già installato di default anche l'editor \TeXworks (multipiattaforma) che, con il suo visualizza"tore interno, consente di eseguire la ricerca diretta e inversa. Ad alcuni, abituati a interfacce grafiche fornite di molte barre piene di icone per eseguire il possibile e l'impossibile, \TeXworks piace poco perché la sua schermata è minimale, ma c'è un motivo: nei moderni schermi larghi, con rapporto di forma 16:9, lo schermo contiene accostate e senza sovrapposizioni sia la finestra di editing sia quella del testo composto; questo è molto comodo, più di quanto si possa immaginare, per “lavorare” agevolmente il documento da comporre. Benché anche Texmaker e TeXstudio siano in grado di accostare le due schermate, essi consumano molto spazio per le barre superiori, inferiori e laterali, cosicché le vere aree destinate all'editing o alla visualizzazione ne risultano corrisponden"temente ristrette, tanto da far preferire \TeXworks sui laptop e ancor di più sui netbook. Poi sono necessari i programmi accessori per visualizzare sullo schermo e/o stampare su carta i prodotti della composizione. Ognuna delle tre piattaforme tipo può avere già installati sia i visualizzatori dei file in formato \texttt{.dvi}, \texttt{.ps} o \texttt{.pdf}. Il formato \texttt{.dvi} è il formato nativo del sistema \TeX quindi il software per visualizzare e stampare arriva insieme alla distribuzione già installata, però oggi è un formato che non si usa quasi più. Per il formato \texttt{.ps} bisogna disporre di qualcosa come \prog{ghostscript} e/o \prog{GSView} o altri simili software che con Linux sono solitamente già disponibili insieme al sistema. In ogni caso non è difficile trovare in rete i luoghi da dove scaricarli anche per gli altri sistemi operativi. Per il formato \texttt{.pdf} Linux, come al solito, è già attrezzato, ma non è male per tutti e tre i tipi di piattaforma il programma \prog{Adobe Reader} che la Adobe mette a disposizione di chiunque gratuitamente e per tutte le possibili piattaforme\footnote{Sembra che con Linux le cose non siano più così, ma in rete si trovano ancora delle installazioni non recentissime, ma funzionanti, anche per Linux.}. Naturalmente l'\prog{Adobe Reader} è una specie di programma dimostrativo, per altro eccellente; ma credo che la Adobe lo metta a disposizione per far venire l'acquolina in bocca e per invogliare a comperare il prodotto commerciale completo \prog{Adobe Acrobat}; per gli studenti non costa molto in accordo con il programma Education di quell'azienda. Secondo me vale ogni dollaro che costa, ma ovviamente questo giudizio dipende dall'uso che se ne fa. @@ -691,7 +696,7 @@ Anche Emacs (ne esistono versioni per ogni piattaforma), arricchito con il plug- Per le piattaforme Windows il programma di installazione di \MiKTeX\ offriva la possibilità di installare \prog{TeXnicCenter}, ma lo sconsiglio vivamente, perché non è all'altezza delle distribuzioni moderne di \MiKTeX\ e di \TeXLive; oggi mi pare che \MiKTeX\ venga distribuito con TeXstudio. C'è anche lo \emph{shell editor} WinEdt (shareware), ottimo e dalla versione 8 in poi sembra che sia dotato di un visualizzatore integrato PDF (comunque è sincronizzabile con il visualizzatore SumatraPDF). -A me sembra che sul Mac il miglior editor di tutti sia \TeXShop, automaticamente installato quando si usa la distribuzione Mac\TeX. “Migliore” significa qui il giusto compromesso fra la semplicità e l'efficienza e la validissima integrazione con il suo visualizzatore interno che consente di eseguire con un semplice click del mouse il passaggio da un punto della finestra di composizione del file sorgente al punto corrispondente nella finestra del documento composto in formato PDF, e viceversa. Suo “figlio” \TeXworks (multipiattaforma) sembra avere qualche funzionalità in meno (non è così vero), ma ha una interfaccia comodissima per scoprire la codifica di un file \file{.tex} e per convertire il file in un'altra codifica; \TeXShop e \TeXworks sono auto"configurabili per ciascun file \file{.tex} grazie ad alcune righe di commenti speciali da scrivere in testa al file, cosa che rende il loro uso incredibilmente comodo. TeXstudio dalla versione 2.5 in poi è in grado di interpretare le stesse righe speciali di \TeXShop e di autoconfigurarsi di conseguenza (da settembre 2012). Anche \prog{emacs} con il plug in Auctex è in grado di usare righe di autoconfigurazione che però hanno una sintassi diversa da quelle di \TeXShop. Questa affermazione vale anche per \prog{Aquamacs}, che è una applicazione per Mac che integra direttamente \prog{emacs} e Auctex.\looseness=-1 +A me sembra che sul Mac il miglior editor di tutti sia \TeXShop, automaticamente installato quando si usa la distribuzione Mac\TeX. “Migliore” significa qui il giusto compromesso fra la semplicità e l'efficienza e la validissima integrazione con il suo visualizzatore interno che consente di eseguire con un semplice click del mouse il passaggio da un punto della finestra di composizione del file sorgente al punto corrispon"dente nella finestra del documento composto in formato PDF, e viceversa. Suo “figlio” \TeXworks (multipiattaforma) sembra avere qualche funzionalità in meno (è vero, ma sono poche le funzionalità mancanti), ma ha una interfaccia comodissima per scoprire la codifica di un file \file{.tex} e per convertire il file in un'altra codifica; \TeXShop e \TeXworks sono auto"configurabili per ciascun file \file{.tex} grazie ad alcune righe di commenti speciali da scrivere in testa al file, cosa che rende il loro uso incredibilmente comodo. TeXstudio dalla versione 2.5 in poi è in grado di interpretare le stesse righe speciali di \TeXShop e di autoconfigurarsi di conseguenza (da settembre 2012). Anche \prog{emacs} con il plug in Auctex è in grado di usare righe di autoconfigurazione che però hanno una sintassi diversa da quelle di \TeXShop. Questa affermazione vale anche per \prog{Aquamacs}, che è una applicazione per Mac che integra direttamente \prog{emacs} e Auctex.\looseness=-1 Per tutte e tre le piattaforme principali \prog{TeXStudio} offre certi vantaggi che è bene non trascurare; per esempio, la visualizzazione di parti composte del testo da comporre che richiedano più interazione fra il compositore e il software. Permette anche di disporre di una finestra laterale che contiene tutta la struttura ad albero del documento da comporre; cliccando su ogni ramo o rametto di questo albero, il programma sposta la finestra sul punto del file sorgente dove quella sezione comincia. Quasi tutti gli editor disponibili \emph{non} consentono di fare la ricerca inversa con il formato di uscita PDF, ma solo con il formato DVI. \prog{TeXShop} per Mac, e \prog{TeXworks}, \prog{TeXStudio} e \prog{TeXmaker} per tutte le piattaforme permettono di eseguire nativamente la ricerca inversa anche con il formato PDF, e questa particolarità è estremamente comoda. Per le piattaforme Windows esiste il visualizzatore PDF \prog{SumatraPDF} che può essere configurato per interagire con molti editor per poter essere usati assieme sia con la ricerca diretta sia con quella inversa. Va da sé, che se non ci sono esigenze diverse, il formato di uscita PDF è sicuramente quello da preferire. @@ -719,12 +724,13 @@ Il difetto maggiore di questi programmi di composizione sincrona è che distragg \textcolor{red}{Nel seguito partirò dal presupposto che si abbia già una certa conoscenza di \LaTeX e che si conosca la differenza fra \LaTeX, \pdfLaTeX, \XeLaTeX\ e \LuaLaTeX.} -È possibile che qualcuno non abbia conoscenze sufficientemente approfondite a proposito dei programma e del mark-up \XeLaTeX\ e \LuaLaTeX; è un tipo di mark-up molto simile a quello di \pdfLaTeX, ma ha una gestione dei font diversa e può usare anche i font del sistema operativo, senza dover fare nessuna acrobazia per installarli e configurarli. \XeLaTeX\ ha bisogno di attenzioni particolari per quel che riguarda la creazione dei file in formato PDF archiviabile, anche se l'uscita finale è in formato PDF, mentre con \LuaLaTeX\ non è necessaria nessuna specifica attenzione riferita a questo programma di composizione; si possono dare loro in pasto le figure nei formati PDF, PNG, JPG ed EPS ed altri meno noti. Per la gestione delle lingue dispongono di un loro pacchetto \pack{polyglossia} che è specifico per questi programmi. L'uso di \XeLaTeX\ sta guadagnando terreno specialmente fra i linguisti; certamente è un motore di composizione adatto alle tesi di carattere letterario, in particolare se contengono estesi brani composti con “lettere” non appartenenti all'alfabeto latino. Oggi \LuaLaTeX\ può sostituire completamente \XeLaTeX\ anche se talvolta è leggermente più lento nel suo lavoro; in compenso la sua integrazione con il linguaggio di scripting Lua gli permette di fare cose impossibili con gli altri programmi citati. Vedremo più avanti che \LuaLaTeX è indispensabile per creare file archiviabili. +È possibile che qualcuno non abbia conoscenze sufficientemente approfondite a proposito dei programma e del mark-up \XeLaTeX\ e \LuaLaTeX; è un tipo di mark-up molto simile a quello di \pdfLaTeX, ma ha una gestione dei font diversa e può usare anche i font del sistema operativo, senza dover fare nessuna acrobazia per installarli e configurarli. \XeLaTeX\ ha bisogno di attenzioni particolari per quel che riguarda la creazione dei file in formato PDF archiviabile, anche se l'uscita finale è in formato PDF, mentre con \LuaLaTeX\ non è necessaria nessuna specifica attenzione riferita a questo programma di composizione; si possono dare loro in pasto le figure nei formati PDF, PNG, JPG ed EPS ed altri meno noti. Per la gestione delle lingue dispongono di un loro pacchetto \pack{polyglossia} che è specifico per questi programmi. L'uso di \XeLaTeX\ sta guadagnando terreno specialmente fra i linguisti; certamente è un motore di composizione adatto alle tesi di carattere letterario, in particolare se contengono estesi brani composti con “lettere” non appartenenti all'alfabeto latino. Oggi \LuaLaTeX\ può sostituire completamente \XeLaTeX\ anche se talvolta è leggermente più lento nel suo lavoro; in compenso la sua integrazione con il linguaggio di scripting Lua gli permette di fare cose impossibili con gli altri programmi citati. Vedremo più avanti che \LuaLaTeX è praticamente insostituibile per creare file archiviabili. Merita qui segnalare con una tabellina le principali differenze fra \pdfLaTeX, \XeLaTeX\ e \LuaLaTeX, tabella~\ref{tab:pdflatex-vs-xelatex} nella pagina~\pageref{tab:pdflatex-vs-xelatex}. -\begin{table}[!tb]{\centering +\begin{table}[!tb]%\centering \caption[Le principali differenze fra \textsf{pdflatex}, \textsf{xelatex} e \textsf{lualatex}]{Le principali differenze fra \pdfLaTeX, \protect\XeLaTeX\ e \protect\LuaLaTeX }\label{tab:pdflatex-vs-xelatex} +\makebox[\textwidth]{ \begin{tabular}{lp{.3\textwidth}p{.35\textwidth}} \toprule & \centering pdf\LaTeX & \parbox{.35\textwidth}{\centering \XeLaTeX\\ \LuaLaTeX} \tabularnewline @@ -744,7 +750,7 @@ Possibilità di scontornare&\centering SI & \raggedright Ridotta per \XeLaTeX\ m Microgiustificazione& \centering Completa & {\centering Solo protrusione per \XeLaTeX;\par completa per \LuaLaTeX \par}\tabularnewline Formato archiviabile& \centering PDF/A-1b & \centering PDF/A laboriosa con \XeLaTeX;\newline normale con~\LuaLaTeX (*) \tabularnewline \bottomrule -\end{tabular}\par} +\end{tabular}}\par \vspace*{\medskipamount} \small \noindent (*) \XeLaTeX\ con la distribuzione 2016 di \TeXLive, consente la produzione diretta del formato PDF/A, ma richiede delle attenzioni particolari che verranno descritte nel seguito; con \LuaLaTeX\ non ci sono problemi. @@ -852,12 +858,12 @@ Era stata avanzata anche la richiesta di comporre frontespizi inusuali che conse Chiarito il modo di funzionare della versione 6.x di \TOPtesi, merita comunque rilevare ancora altri dettagli. -Ci si ricordi infatti che l'aspetto generale dalla pagina, i font usati o gli altri font alternativi che si possono usare, il frontespizio, e altri elementi che costituiscono il “look” della tesi composta con questa classe, sono abbastanza rigidi; non dico che questa classe sia rigorosamente del tipo “prendere o lasciare”, ma sicuramente non è una classe generica da poter personalizzare a piacere in ogni dettaglio. Ci sono altre classi disponibili già distribuite con il sistema \TeX (aggiornato e completo); ne cito alcune: la classe \class{sapthesis}, impostata sulle prescrizioni dell'università di Roma La~Sapienza, la classe \class{suftesi}, che in realtà non serve solo per comporre tesi, ma serve anche per comporre diversi altri tipi di documenti in diversi formati e con diversi stili. Nessuna di queste classi è configurabile a piacere, ma solo nei limiti delle personalizzazioni previste. Quella più configurabile mi pare sia la classe \class{suftesi}, ma anche questa, esplicitamente predisposta per tesi nel campo delle scienze umane, forse è meno flessibile per le scienze sperimentali. +Ci si ricordi infatti che l'aspetto generale dalla pagina, i font usati o gli altri font alternativi che si possono usare, il frontespizio, e altri elementi che costituiscono il “look” della tesi composta con questa classe, sono abbastanza rigidi; non dico che questa classe sia rigorosamente del tipo “prendere o lasciare”, ma sicuramente non è una classe generica da poter personalizzare a piacere in ogni dettaglio. Ci sono altre classi disponibili già distribuite con il sistema \TeX (aggiornato e completo); ne cito alcune: la classe \class{sapthesis}, impostata sulle prescrizioni dell'università di Roma La~Sapienza; la classe \class{unifith} impostata sulle prescrizioni dell'università di Firenze; la classe \class{suftesi}, che in realtà non serve solo per comporre tesi, ma serve anche per comporre diversi altri tipi di documenti in diversi formati e con diversi stili. Nessuna di queste classi è configurabile a piacere, ma solo nei limiti delle personalizzazioni previste. Quella più configurabile mi pare sia la classe \class{suftesi}, ma anche questa, esplicitamente predisposta per tesi nel campo delle scienze umane, forse è meno flessibile per le scienze sperimentali. \section{Impostazioni standard di \texorpdfstring{\TOPtesi}{TOPtesi}} L'insieme di macro contenute in \TOPtesi realizza esattamente -le specifiche di composizione per le monografie, tesi di laurea e +le specifiche di composi"zione per le monografie, le tesi di laurea e le dissertazioni di dottorato da comporre presso il Politecnico di Torino; l'acronimo TOP sta per \textcolor{red}{TO}rino \textcolor{red}{P}olitecnico e naturalmente gioca un po' anche sull'altro significato della parola inglese “top”. Tuttavia il pacchetto non è stato creato solo per il Politecnico @@ -917,16 +923,16 @@ La classe \class{toptesi} richiede un semplice preambolo e nient'altro. In altre Questo particolare documento contiene un lungo preambolo nel quale sono anche definiti molti comandi che mi sono serviti per comporlo. La parte essenziale, visto che ho compilato il documento con \LuaLaTeX, è la seguente: -\begin{verbatim} +\begin{Verbatim}[fontsize=\setfontsize{10.5}] \documentclass[% corpo=12pt, tipotesi=monografia, twoside ]{toptesi} -\ProvidesFile{toptesi-it.tex}[2019-07-01 v.0.9.42] +\ProvidesFile{toptesi-it.tex}[[2020-05-12 v.0.9.47 TOPtesi Italian Documentation] \usepackage{imakeidx}% Vedi documentazione \indexsetup{headers={\indexname}{\indexname}} -\usepackage[a-1b]{pdfx}%%%% Vedi documentazione +\usepackage[a-1b]{pdfx}%%%% oppure [a-2b] \usepackage{fontspec} \usepackage{xcolor} @@ -935,9 +941,10 @@ Questo particolare documento contiene un lungo preambolo nel quale sono anche de \newcommand\GuIT{{\fontfamily{lmr}\scshape \mbox{{g\raisebox{-0.308em}{\kern-0.562ex u}% \kern-0.15em{I}\kern-0.14em t}}}\xspace} -\setmainfont[Ligatures=TeX]{TeX Gyre Termes} -\setsansfont[Ligatures=TeX, Scale=MatchLowercase]{TeX Gyre Heros} -\setmonofont{UM Typewriter} + +\setmainfont[Ligatures=TeX]{Libertinus Serif} +\setsansfont[Ligatures=TeX]{Libertinus Sans} +\setmonofont{NewComputerModern Mono} \setmainlanguage[babelshorthands]{italian} \setotherlanguage[variant=ancient]{greek} @@ -948,9 +955,9 @@ Questo particolare documento contiene un lungo preambolo nel quale sono anche de \setmathfont{XITS Math} \usepackage{metalogo,longtable,booktabs,array,tabularx, -enumitem,ragged2e,siunitx,curve2e,microtype,wrapfig} +enumitem,ragged2e,siunitx,curve2e,microtype} -\usepackage{afterpage} +\usepackage{afterpage,wrapfig} \unless\ifcsname ver@hyperref.sty\endcsname\usepackage{hyperref}\fi \hypersetup{% @@ -964,7 +971,7 @@ enumitem,ragged2e,siunitx,curve2e,microtype,wrapfig} } ... \makeindex[intoc,columns=2] -\end{verbatim} +\end{Verbatim} Qualche commento non guasta. @@ -972,19 +979,17 @@ Qualche commento non guasta. % \item Le opzioni specificate oltre a \opz{twoside}, che fa parte delle opzioni proprie della classe \class{report}, sono le due nuove opzioni \chiave{tipotesi}{monografia} e \chiave{corpo}{12pt}. Il loro significato è ovvio; la prima specifica che si sta componendo una monografia e la seconda specifica il corpo normale per l'intero documento; i valori \tipotesi{monografia} e \tipotesi{triennale} sono equivalenti; ma siccome non sto scrivendo una tesi triennale, ho preferito usare il valore \tipotesi{monografia}. % -\item Per il corpo avrei potuto specificare un valore qualsiasi (compreso fra 9.5pt e 13.5pt - non per obbligo ma per decenza; usare corpi minori vuol dire rendere quasi illeggibile questa documentazione; usare valori maggiori significherebbe scrivere un testo adatto alla pratica di lettura di un bambino di seconda elementare). Piuttosto si noti che \TOPtesi accetta valori del corpo normale anche fratti; l'utente potrebbe voler specificare, per esempio il \verb|corpo=11.25| e \TOPtesi provvederebbe in merito senza protestare perché usa i font Latin Modern scalabili con continuità a tratti; lo stesso sarebbe possibile usando altri font vettoriali; non è possibile usando i font Computer Modern (codificati in \opz{OT1}) e i font CM-Super (codificati in \opz{T1}), che vengono usati da \pdfLaTeX di default. Con \pdfLaTeX è importantissimo usare almeno i font Latin Modern che, grazie ai corpi ottici, in generale sono migliori dei Times, dei Palatino e di tanti altri font commerciali o gratuiti. Non è vietato usare font diversi, ma lo sconsiglierei se la tesi contiene molta matematica; tutt'al più sarebbero interessanti i font Libertinus che sono associati a una collezione di font matematici in grado di rispettare le norme ISO per i documenti che vertono sulle scienze sperimentali. +\item Per il corpo avrei potuto specificare un valore qualsiasi (compreso fra 9.5pt e 13.5pt - non per obbligo ma per decenza; usare corpi minori vuol dire rendere molto faticosa la lettura di questa documentazione; usare valori maggiori significherebbe scrivere un testo adatto alla pratica di lettura di un bambino di seconda elementare). Piuttosto si noti che \TOPtesi accetta valori del corpo normale anche fratti; l'utente potrebbe voler specificare, per esempio il \verb|corpo=11.25| e \TOPtesi provvederebbe in merito senza protestare perché usa i font Latin Modern scalabili con continuità a tratti; lo stesso sarebbe possibile usando altri font vettoriali; non è possibile usando i font Computer Modern (codificati in \opz{OT1}) e i font CM-Super (codificati in \opz{T1}), che vengono usati da \pdfLaTeX di default. Con \pdfLaTeX è importantissimo usare almeno i font Latin Modern che, grazie ai corpi ottici, in generale sono migliori dei Times, dei Palatino e di tanti altri font commerciali o gratuiti. Non è vietato usare font diversi, ma lo sconsiglierei se la tesi contiene molta matematica; tutt'al più sarebbero interessanti i font Libertinus\footnote{È per questo che ho composto questa documentazione con i font Libertinus, salvo che per i font monospaziati.} che sono associati a una collezione di font matematici in grado di rispettare le norme ISO per i documenti che vertono sulle scienze sperimentali. % \item Il comando \cs{ProvidesFile} non è obbligatorio, ma è sempre conveniente usarlo per identificare non solo il nome del file, ma anche la data dell'ultima modifica e l'eventuale versione. Sono valori che per questa documentazione debbono essere recuperati e scritti nel frontespizio, proprio per l'utilità del lettore. Per una tesi non credo che siano interessanti, ma è buona abitudine scrivere sempre in ogni file queste informazioni che tornano utili all'autore in molte circostanze. % \item Il pacchetto \pack{imakeidx} serve per comporre uno o più indici analitici in modo sincrono; in altre parole basta una sola compilazione per ottenere il documento tipocomposto insieme al suo indice analitico aggiornato al momento della compilazione. -Va caricato prima di \pack{pdfx} perché questo ridefinisce alcune strutture sulle quali \pack{imakeidx} non può più intervenire. +Va caricato prima di \pack{pdfx} perché questo usa il pacchetto \pack{hyperref} e \pack{imakeidx} necessita di modificare alcune strutture che \pack{hyperef} modifica e sulle quali, quindi, \pack{imakeidx} non può più intervenire. % \item Il pacchetto \pack{pdfx} serve per introdurre nel file PDF di uscita anche i metadati richiesti per l'archiviabilità a lungo termine; sono necessari, ma non sono assolutamente sufficienti; essi vanno completati con i metadati specifici del documento da comporre. Si veda l'apposita sezione sull'archiviabilità. - -Tuttavia si noti che ad oggi questo pacchetto è incompatibile con \pack{imakeidx}; per aggirare questa incompatibilità, se si deve produrre un file archiviabile secondo le norme, si proceda come descritto poco sopra in merito all'uso di \pack{imakeidx} caricandolo prima di \pack{pdfx}. % -\item Il pacchetto \pack{fontspec} serve per caricare i font OpenType usati in questa documentazione. +\item Il pacchetto \pack{fontspec} serve per caricare i font OpenType usati in questa documenta"zione. % \item Il pacchetto \pack{xcolor} serve per gestire i colori in modo avanzato. % @@ -992,35 +997,36 @@ Tuttavia si noti che ad oggi questo pacchetto è incompatibile con \pack{imakeid % \item Un discorso simile vale per il comando \cs{GuIT}. % -\item Come font principale con grazie viene scelto un clone dei font \Font{Times}; quelli denominati \Font{TeX Gyre Termes} sono specifici del sistema \TeX. +\item Come font principale con grazie viene scelto il font Libertinus Serif, distribuito e installato con \TeXLive. % -\item Come font lineare, senza grazie, viene specificato un clone dei font \Font{Helvetica}; nuovamente i font \Font{TeX Gyre Heros} fanno parte del sistema \TeX. +\item Come font lineare, senza grazie, viene specificato il font Libertinus Sans, anche questo facente parte del sistema \TeX. % -\item Per i font a spaziatura fissa vengono invece invocati gli \Font{UM Typewriter}, una versione OpenType dei font standard del sistema \TeX; dispongono anche degli alfabeti cirillico e greco, oltre a numerosissimi simboli. +\item Per i font a spaziatura fissa vengono invece invocati i font New Computer Modern Mono che dispongono anche dei caratteri greci e cirillici; anche questi font fanno parte del sistema \TeX. % \item Il pacchetto \pack{polyglossia} per gestire le lingue è già caricato dalla classe; qui si specificano l'italiano e l'inglese, con la prima lingua dichiarata come principale. % \item Si specifica anche la lingua greca, nella sua varietà antica come lingua secondaria. Viene specificata anche questa lingua perché in questa documentazione si parla anche di tesi nelle scienze umane e si fanno esempi in greco antico. % -\item Il pacchetto \pack{amsmath} serve per comporre la matematica avanzata; \pack{unicode-math} serve per accedere non solo ai font matematici OpenType (in questo caso vengono selezionati i font \Font{XITS Math}) ma fornisce tutte le macro compatibili con quelli del sistema \TeX per scrivere la matematica; non occorre invocare altri pacchetti per font matematici, come sarebbe necessario fare se si usasse il programma di composizione \pdfLaTeX. L'opzione \chiave{math-style}{TeX} serve a questo pacchetto per comporre i vari simboli secondo lo standard del sistema \TeX; in alternativa si potrebbero specificare le opzioni \chiave{math-style}{ISO}, per comporre nello stile prescritto dalle norme ISO; \chiave{math-style}{french}, per comporre secondo lo stile francese; \chiave{math-style}{upright}, per comporre tutta la matematica con font non inclinati. Va da sé che gli ultimi due stili sono da evitare accuratamente; lo stile ISO è raccomandato per le tesi in discipline che fanno uso della matematica delle grandezze. +\item Il pacchetto \pack{amsmath} serve per comporre la matematica avanzata; \pack{unicode-math} serve per accedere non solo ai font matematici OpenType (in questo caso vengono selezionati i font \Font{Libertinus Math}) ma fornisce tutte le macro compatibili con quelli del sistema \TeX per scrivere la matematica; non occorre invocare altri pacchetti per font matematici, come sarebbe necessario fare se si usasse il programma di composizione \pdfLaTeX. L'opzione \chiave{math-style}{TeX} serve a questo pacchetto per comporre i vari simboli secondo lo standard del sistema \TeX; in alternativa si potrebbero specificare le opzioni \chiave{math-style}{ISO}, per comporre nello stile prescritto dalle norme ISO; \chiave{math-style}{french}, per comporre secondo lo stile francese; \chiave{math-style}{upright}, per comporre tutta la matematica con font non inclinati. Va da sé che gli ultimi due stili sono da evitare accuratamente; lo stile ISO è necessario per le tesi in discipline che fanno uso della matematica delle grandezze. % \item Si invocano altri pacchetti necessari per la composizione di questa documentazione; \pack{metalogo} serve per scrivere in modo corretto i loghi dei vari programmi; esso è particolarmente importante per il logo \XeLaTeX, che, come si vede, contiene un simbolo particolare, la `E' speculare rispetto alla `E' normale. -I pacchetti \pack{longtaable}, \pack{array}, \pack{booktabs}, \pack{tabularx} servono per gestire tabelle particolari in modo professionale. Il pacchetto \pack{enumitem} serve per configurare le liste; il lettore avrà notato, infatti, che le liste di questa documentazione, compresa quella che si sta leggendo, non hanno le varie voci distanziate verticalmente. Il pacchetto \pack{ragged2e} serve per configurare la composizione in bandiera, in modo che il margine non giustificato non sia troppo seghettato. Il pacchetto \pack{siunitx} serve per gestire i numeri e le unità di misura. Il pacchetto \pack{curve2e} serve per eseguire disegni avanzati nell'ambiente \amb{picture}. Il pacchetto \pack{microtype} serve per gli aggiustamenti fini della composizione dei capoversi. Il pacchetto \pack{wrapfig} mi è servito per includere il logo tondo del \GuIT, come mostrato nella figura~\ref{fig:logotondo}. +I pacchetti \pack{longtaable}, \pack{array}, \pack{booktabs}, \pack{tabularx} servono per gestire tabelle particolari in modo professio"nale. Il pacchetto \pack{enumitem} serve per configurare le liste; il lettore avrà notato, infatti, che le liste di questa documentazione, compresa quella che si sta leggendo, non hanno le varie voci distanziate verticalmente. Il pacchetto \pack{ragged2e} serve per configurare la composizione in bandiera, in modo che il margine non giustificato non sia troppo seghettato. Il pacchetto \pack{siunitx} serve per gestire i numeri e le unità di misura. Il pacchetto \pack{curve2e} serve per eseguire disegni avanzati nell'ambiente \amb{picture}. Il pacchetto \pack{microtype} serve per gli aggiustamenti fini della composizione dei capoversi. Il pacchetto \pack{wrapfig} è servito per includere il logo tondo del \GuIT circondato dal testo, come mostrato nella figura~\ref{fig:logotondo}. % \item Il pacchetto \pack{afterpage} serve per ritardare la composizione dell'argomento del comando \cs{afterpage} proprio alla fine della pagina corrente, prima che si inizi a comporre la pagina successiva. % -\item Successivamente si chiama il pacchetto \pack{hyperref}; in realtà potrebbe essere già stato chiamato dal pacchetto \pack{pdfx} ed è per questo che si usa quello strano test scritto con comandi primitivi di \eTeX, ma non succederebbe niente se lo si chiamasse in questa posizione purché la chiamata sia priva di opzioni; queste però si possono specificare con il successivo comando \cs{hypersetup}. +\item Successivamente si chiama il pacchetto \pack{hyperref}; in realtà è già stato chiamato dal pacchetto \pack{pdfx} ed è per questo che si usa quello strano test scritto con comandi primitivi di \eTeX, ma non succederebbe niente se lo si chiamasse in questa posizione purché la chiamata sia priva di opzioni; queste però si possono specificare con il successivo comando \cs{hypersetup}. % -\item Il preambolo termina con la configurazione dell'indice analitico di questa documentazione. Il comando \cs{makeindex} attiva la raccolta delle informazioni da mettere nell'indice analitico; le sue opzioni specificano alcune impostazioni che si vogliono per la composizione di questo indice; in particolare \opz{intoc} specifica che si desidera l'inserimento della voce “Indice analitico” nell'indice generale. Le opzioni sono per la configurazione sia del comando \cs{index} che raccoglie le voci da indicizzare, e il comando \cs{printindex} che provvede a comporre l'indice analitico e a spedirlo al file di uscita. +\item Il preambolo termina con la configurazione dell'indice analitico di questa documenta"zione. Il comando \cs{makeindex} attiva la raccolta delle informazioni da mettere nell'indice analitico; le sue opzioni specificano alcune impostazioni che si vogliono per la composizione di questo indice; in particolare \opz{intoc} specifica che si desidera l'inseri"mento della voce “Indice analitico” nell'indice generale. Le opzioni sono per la configurazione sia del comando \cs{index}, che raccoglie le voci da indicizzare, sia del comando \cs{printindex}, che provvede a comporre l'indice analitico e a spedirlo al file di uscita. \end{enumerate} In generale per una tesi di qualunque tipo non è necessario ricorrere al caricamento di tanti pacchetti. In ogni caso il laureando caricherà solo quelli che gli servono davvero, senza esagerare con cose del tipo “potrebbe servirmi”. \section{Le opzioni} La classe \class*{toptesi} accetta diverse opzioni sue specifiche, oltre a quelle che si possono specificare per la classe \class*{report}; esse seguono con la sintassi \emph{chiave${}={}$valore}; le chiavi booleane non richiedono espressamente il valore \texttt{true}; di default il loro stato è \texttt{false}. -\begin{description}[noitemsep]\let\Item\item +\begin{description}[noitemsep]%\let\Item\item +\def\Item[#1]{\item[\normalfont#1]} \Item[\chiave{corpo}] - Imposta il corpo del testo normale; il valore preimpostato è + Imposta il corpo del testo normale; il valore preimpostato è \texttt{10pt}, ma si può specificare qualunque valore, anche fratto, non troppo distante da \texttt{11pt}; sotto 9.5\,pt il testo diventa difficile da leggere; sopra 13.5\,pt il testo assume @@ -1033,8 +1039,8 @@ La classe \class*{toptesi} accetta diverse opzioni sue specifiche, oltre a quell nessun valore o specificando \chiave{tipotesi}{topfront}, il frontespizio viene composto con le funzionalità del modulo \pack{topfront}, quello tradizionale usato anche dalle versioni - precedenti di TOPtesi. Gli altri valori possibili sono: - \texttt{custom} per comporre il frontespizio in modo autonomo + precedenti di \TOPtesi. Gli altri valori possibili sono: + \texttt{custom} per comporre il frontespizio in modo autonomo; \texttt{frontespizio} per comporre il frontespizio facendo uso delle funzionalità del pacchetto esterno \pack{frontespizio}; \texttt{triennale} e \texttt{monografia}, alias l'uno dell'altro, @@ -1063,7 +1069,7 @@ La classe \class*{toptesi} accetta diverse opzioni sue specifiche, oltre a quell \Item[\chiave{oldstyle}] Chiave booleana che permette di comporre i numeri con le cifre minuscole, invece che con quelle maiuscole; si può usare solo se è in - vigore l'opzione \chiave{stile}{classica}. + vigore lo stile classico selezionato con l'opzione \chiave{stile}{classica}. \Item[\chiave{autoretitolo}] Chiave booleana che modifica le testatine in modo da farvi comparire il nome dell'autore e il titolo della tesi. Si può @@ -1071,9 +1077,9 @@ La classe \class*{toptesi} accetta diverse opzioni sue specifiche, oltre a quell \chiave{stile}{classica}. \Item[\chiave{numerazioneromana}] Chiave booleana che imposta la numerazione romana dei numeri di - pagina nella parte preliminare del corpo della tesi; la numerazione + pagina nella parte preliminare della tesi; la numerazione cambia in cifre arabe con il primo uso del comando \cs{chapter}. Per - questo motivo i ringraziamenti e il sommanrio vanno composti con i + questo motivo i ringraziamenti e il sommario vanno composti con i comandi appositi \cs{ringraziamenti} e \cs{sommario}; ricordo che i ringraziamenti non dovrebbero mai apparire in una tesi, se non in alcune situazioni particolari; il sommario non è inteso come @@ -1103,7 +1109,7 @@ La classe \class*{toptesi} accetta diverse opzioni sue specifiche, oltre a quell Se non viene specificato nulla, questa chiave non imposta nessuna “binding correction”; se impostata senza specificare un valore, imposta una correzione di 7\,mm (che è già tanto); se si - specifica un valore quello viene preso per spostare verso + specifica un valore, quello viene preso per spostare verso l'esterno la gabbia di stampa. Non usare questa correzione con l'opzione \chiave{libro} a meno che il “libro” non venga rilegato con cucitura trasversale; usare con valori @@ -1124,34 +1130,55 @@ La classe \class*{toptesi} accetta diverse opzioni sue specifiche, oltre a quell può usare questa opzione per impedire al modulo \pack{toptesi-scudo} di caricare automaticamente qualsiasi cosa riguardi la bibliografia; del resto qualunque altro laureando e diplomando deve provvedere - autonomamente ai pacchetti necessari per comporre la o le sue - bibliografie. + autonomamente ai pacchetti necessari per comporre la sua + bibliografia. \Item[\chiave{chapterbib}] Chiave booleana conservata per compatibilità con il passato; sarebbe servita per predisporre una bibliografia particolare alla fine di ogni capitolo. Andava bene all'inizio degli anni novanta; oggi si ottengono risultati migliori usando il pacchetto \pack{biblatex} con le sue particolari opzioni. +\Item[\chiave{nocenterfolio}] + Il numero della pagina (\emph{folio} in inglese) viene normalmente + inserito al centro del piedino; specificando questa opzione booleana il + numero della pagina viene collocato adiacente al margine esterno + nel piedino. +\Item[\chiave{nocenterhead}] + Normalmente il testo per le testatine viene composto centrato; se si + specifica questa opzione booleana quel testo viene composto adiacente + al margine esterno. +\Item[\chiave{folioinhead}] + Normalmente il numero della pagina si trova nel piedino; specificando + questa opzione booleana il numero della pagina viene composto nel + margine esterno fuori della testatina, distanziato ma allineato + col testo della testatina. Questa opzione è di utilità discutibile; + ma se il testo della testatina è centrato, si può usare questa + collocazione del numero della pagina, anche se sarebbe preferibile + non farlo; se invece il testo della testatina è adiacente al + margine esterno, il risultato è decisamente brutto, nonostante + lo spazio che separa il numero della pagina dalla testatina. + Perciò si raccomanda di non usare mai contemporaneamente le + opzioni booleane \chiave{folioinhead} e \chiave{nocenterhead}. \end{description} Di tutte queste chiavi si parlerà più diffusamente nell'ultimo capitolo dove si mostrano e si commentano tutti i comandi e le opzioni disponibili con \TOPtesi. Anche nei paragrafi dove si descrivono i vari tipi di tesi si esaminano alcune opzioni specifiche. -\section{I file accessori} +\section{I moduli accessori} -Qui verranno descritti alcuni usi del modulo \pack{topfront} e degli altri moduli specifici per determinati tipi di tesi; si descrive brevemente anche il modulo \pack{topcoman}. I primi servono per comporre il frontespizio; il secondo mette a disposizione alcuni comandi utili. Né gli uni né l'altro sono indispensabili, ma sono utili. Questi pacchetti sono sempre caricati da \TOPtesi, tranne in alcuni casi specificati meglio più avanti. Ma il fatto di venire o non venire caricati dipende dall'utente, cioè dalle opzioni che egli specifica alla classe \class{toptesi} e dai pacchetti aggiuntivi che egli vuole usare; in altre parole l'utente non ha mai bisogno di caricare esplicitamente questi due pacchetti ma può solo esplicitamente specificare azioni che ne impediscono il caricamento. +Qui verranno descritti alcuni usi del modulo \pack{topfront} e degli altri moduli specifici per determinati tipi di tesi; si descrive brevemente anche il modulo \pack{topcoman}. I primi servono per comporre il frontespizio; il secondo mette a disposizione alcuni comandi utili. Né gli uni né l'altro sono indispensabili, ma sono utili. Questi pacchetti sono sempre caricati da \TOPtesi, tranne in alcuni casi specificati meglio più avanti. Ma il fatto di venire o non venire caricati dipende dall'utente, cioè dalle opzioni che egli specifica alla classe \class{toptesi} e dai pacchetti aggiuntivi che egli vuole usare; in altre parole l'utente non ha mai bisogno di caricare esplicitamente questi moduli ma può solo esplicitamente specificare azioni che ne impediscono il caricamento. %\goodpagebreak \subsection{La composizione del frontespizio} Questo paragrafo tratta di diversi modi per comporre il frontespizio della tesi; per il frontespizio della tesi dottorale della ScuDo si rinvia ad un paragrafo specifico per tutto quanto riguarda la tesi di quella scuola (paragrafo~\ref{sec:scudo}). -Non è generalmente necessario inserire nel frontespizio il logo dell'ateneo; si controllino presso la propria segreteria competente le regole fissate per la composizione del frontespizio. Se il logo è richiesto, allora la segreteria dice anche quale logo usare e da dove scaricarne il file che ne contiene la descrizione grafica; \textcolor{red}{bisogna essere precisi nel richiedere le limitazioni legali per l'uso del logo dell'ateneo, perché esso è proprietà esclusiva dell'ateneo e l'uso indebito potrebbe essere fonte di problemi legali non indifferenti.} Siccome tali limitazioni esistono, il pacchetto \TOPtesi viene distribuito senza i file dei loghi di diversi atenei, come veniva fatto nelle prime edizioni. +Non è generalmente necessario inserire nel frontespizio il logo dell'ateneo; si controlli"no presso la propria segreteria competente le regole fissate per la composizione del frontespizio. Se il logo è richiesto, allora la segreteria dice anche quale logo usare e da dove scaricarne il file che ne contiene la descrizione grafica; \textcolor{red}{bisogna essere precisi nel richiedere le limitazioni legali per l'uso del logo dell'ateneo, perché esso è proprietà esclusiva dell'ateneo stesso e l'uso indebito potrebbe essere fonte di problemi legali non indifferenti.} Siccome tali limitazioni esistono, il pacchetto \TOPtesi viene distribuito senza i file dei loghi di diversi atenei, come veniva fatto nelle prime edizioni. Si controlli se il file del logo è vettoriale (estensione \file{.pdf} oppure \file{.eps}), oppure bitmapped (estensione \file{.jpg}, \file{.png}, \file{.bmp}, \file{.wmf}, \file{.tiff},~\dots). Ci si ricordi che \prog{pdflatex}, \prog{xelatex} e \prog{lualatex} possono incorporare solo i formati \file{.pdf}, \file{.eps}, \file{.jpg}, \file{.png} o \file{.mps}\footnote{I file vettoriali in formato \file{.mps} sono ottenuti con il programma \MP; il lettore potrà interessarsi a questo formato quando sarà un utente avanzato di \LaTeX; non se ne preoccupi per la tesi.}. Se il file bitmapped viene fornito in un formato diverso da questi cinque, è necessario convertirlo in uno dei formati accettati. -Vale la pena di ricordare che il formato \file{.jpg} va bene per immagini a colori sfumati come le fotografie, mentre il formato \file{.png} è più adatto per disegni al tratto con righe fortemente contrastate rispetto allo sfondo. Per le fotografie, tranne rarissime eccezioni, il formato \file{.jpg} va benissimo; è sconsigliabile, al contrario, usare il formato \file{.png} per una fotografia perché con la sua compressione lossless la sua dimensione in byte potrebbe essere anche una decina di volte maggiore della corrispondente fotografia nel suo formato \file{.jpg}, che beneficia di una compressione di tipo lossy, generalmente con pochi effetti su una immagine priva di forti contrasti di colore, come succede, invece, per un disegno al tratto. In generale, quindi, sarebbe meglio convertire nel formato \file{.png} un logo bitmapped fornito in un formato diverso da quelli elencati sopra, ma il formato \file{.png} potrebbe contenere delle “trasparenze” che non sono accettabili con le prescrizioni PDF/A dei documenti archiviabili e in questo caso bisogna ricorrere al formato \file{.jpg}. Potendone disporre, sarebbe sempre meglio usare un disegno veramente vettoriale del logo. +Vale la pena di ricordare che il formato \file{.jpg} va bene per immagini a colori sfumati come le fotografie, mentre il formato \file{.png} è più adatto per disegni al tratto con righe fortemente contrastate rispetto allo sfondo. Per le fotografie, tranne rarissime eccezioni, il formato \file{.jpg} va benissimo; è sconsigliabile, al contrario, usare il formato \file{.png} per una fotografia perché con la sua compressione lossless la sua dimensione in byte potrebbe essere anche una decina di volte maggiore della corrispondente fotografia nel suo formato \file{.jpg}, che beneficia di una compressione di tipo lossy; questo tipo di compressione generalmente ha pochi effetti su una immagine priva di forti contrasti di colore, come succede, invece, per un disegno al tratto. In generale, quindi, sarebbe meglio convertire nel formato \file{.png} un logo bitmapped fornito in un formato diverso da quelli elencati sopra, ma il formato \file{.png} potrebbe contenere delle “trasparenze” che non sono accettabili con le prescrizioni PDF/A di livello~1 dei documenti archiviabili e in questo caso bisogna ricorrere al formato \file{.jpg}. Potendone disporre, sarebbe sempre meglio usare un disegno veramente vettoriale del logo. -Merita segnalare che le tesi svolte nell'ambito di collaborazioni fra atenei possono richiedere i loghi dei diversi atenei partecipanti all'accordo; segnalo la Scuola Interpolitecnica di Dottorato condotta nell'ambito di un accordo fra i politecnici di Bari, Milano e Torino. Ricordo i programmi di doppia laurea condotti nell'ambito di accordi fra l'ateneo di appartenenza e un altro ateneo, generalmente europeo. Ricordo il programma europeo Erasmus Mundus dove il titolo di studio viene rilasciato da consorzi di almeno quattro atenei di nazioni europee diverse. In queste circostanze è spesso necessario inserire nel frontespizio i loghi di tutti gli atenei partecipanti alla convenzione. +Merita segnalare che le tesi svolte nell'ambito di collaborazioni fra atenei possono richiedere i loghi dei diversi atenei partecipanti all'accordo; segnalo la Scuola Interpolitec"nica di Dottorato condotta nell'ambito di un accordo fra i politecnici di Bari, Milano e Torino. Ricordo i programmi di doppia laurea condotti nell'ambito di accordi fra l'ateneo di appartenenza e un altro ateneo, generalmente europeo. Ricordo il programma europeo Erasmus Mundus dove il titolo di studio viene rilasciato da consorzi di almeno quattro atenei di nazioni europee diverse. In queste circostanze è spesso necessario inserire nel frontespizio i loghi di tutti gli atenei partecipanti alla convenzione. \subsection{Il logo dell'ateneo per l'uso con \TOPtesi}\label{ssec:loghi} @@ -1163,21 +1190,21 @@ oppure \medskip \cs{logosede}\oarg{altezza}\marg{lista di nomi di file di loghi separati da virgole} \end{flushleft} -dove il valore prefissato per l'\meta{altezza} del logo è 25\,mm per la carta A4, ed è scalato proporzionalmente per carte di formato diverso; con l'argomento facoltativo si può specificare un'altezza leggermente maggiore o minore del valore predefinito. L'argomento \meta{nome del file del logo} o \meta{lista di nomi di file di loghi separati da virgole} è costituito da un solo nome di file o da una lista di nomi di file separati da virgole, corrispondenti ciascuno al logo di un diverso ateneo. Questi file devono avere i formati corrispondenti a una delle cinque estensioni consentite, ma non è necessario specificare il nome del file completo di estensione; questa specificazione potrebbe essere necessaria solo nel caso in cui si disponga del logo di uno stesso ateneo in diversi formati grafici (o, cosa da non fare mai, immagini o loghi diversi con il nome del loro file uguale e l'estensione diversa; questo genere di pasticci è fonte di numerosi errori, facilmente evitabili se si mantiene in ordine la scelta dei nomi e delle estensioni). +dove il valore prefissato per l'\meta{altezza} del logo è 25\,mm per la carta A4, ed è scalato proporzionalmente per carte di formato diverso; con l'argomento facoltativo si può specificare una \meta{altezza} leggermente maggiore o minore del valore predefinito. L'argomento \meta{nome del file del logo} o \meta{lista di nomi di file di loghi separati da virgole} è costituito da un solo nome di file o da una lista di nomi di file separati da virgole, corrispondenti ciascuno al logo di un diverso ateneo. Questi file devono avere i formati corrispondenti a una delle cinque estensioni consentite, ma non è necessario specificare il nome del file completo di estensione; questa specificazione potrebbe essere necessaria solo nel caso in cui si disponga del logo di uno stesso ateneo in diversi formati grafici (o, cosa da non fare mai, immagini o loghi diversi con il nome del loro file uguale e l'estensione diversa; questo genere di pasticci è fonte di numerosi errori, facilmente evitabili se si mantiene in ordine la scelta dei nomi e delle estensioni). Il programma codificato nel modulo \pack{topfront} provvede a scalare tutti i loghi all'\meta{altezza} specificata e li compone affiancati su una sola riga distanziati mediante uno spazio predefinito di 3\,em; lo si può impostare ad un valore leggermente maggiore o minore tramite il comando \cs{setlogodistance}, per esempio: \begin{verbatim} \setlogodistance{2em} \end{verbatim} -Se la riga di loghi, eventualmente scalati in altezza e distanziati dello spazio predefinito o esplicitamente specificato, risultasse più larga della giustezza della pagina del titolo, il programma provvede ad uno scalamento dell'intera riga di loghi in modo che non superi la giustezza della pagina. Un solo logo viene composto centrato; due o più loghi vengono ugualmente composti centrati ma distanziati come si è detto. Seguono alcuni esempi, ma si tenga presente che i loghi usati per questi esempi sono solo dei disegni creati in modo tale da avere la forma di un logo; loghi veri di diverse università non sono distribuiti insieme a \TOPtesi, a causa delle restrizioni sulla loro proprietà legale; anche un logo \emph{finto} del Politecnico di Torino appare nel frontespizio; il logo è finto, ed è marcato nello sfondo con la dicitura “FAKE LOGO”, per i motivi legali detti sopra. Un solo logo appare come nel frontespizio di questo manuale; due loghi appaiono così:\\*[2pt] +Se la riga di loghi, eventualmente scalati in altezza e distanziati dello spazio predefinito o esplicitamente specificato, risultasse più larga della giustezza della pagina del titolo, il programma provvede ad uno scalamento dell'intera riga di loghi in modo che non superi la giustezza della pagina. Un solo logo viene composto centrato; due o più loghi vengono ugualmente composti centrati ma distanziati come si è detto. Seguono alcuni esempi, ma si tenga presente che i loghi usati per questi esempi sono solo dei disegni creati in modo tale da avere la forma di un logo; loghi veri di diverse università non sono distribuiti insieme a \TOPtesi, a causa delle restrizioni sulla loro proprietà legale; anche il logo del Politecnico di Torino che appare nel frontespizio è finto, ed è marcato nello sfondo con la dicitura “FAKE LOGO”, per i motivi legali detti sopra. Un solo logo appare come nel frontespizio di questo manuale; due loghi appaiono così:\\*[2pt] \makebox[\textwidth]{\logosede{logouno.pdf,logodue.pdf}\printloghi} \noindent Tre loghi appaiono così:\\*[\medskipamount] \makebox[\textwidth]{\logosede{logodue.pdf,logotre.pdf,logoquattro.pdf} \printloghi} -\noindent Quattro loghi, nonostante sia stata conservata l'\meta{altezza} predefinita, producono automaticamente una riga di loghi di altezza e larghezza ridotte per consentire che appaiano tutti e quattro nella stessa riga:\\*[\medskipamount] +\noindent Quattro loghi, nonostante sia stata conservata l'\meta{altezza} predefinita, producono automati"camente una riga di loghi di altezza e larghezza ridotte per consentire che appaiano tutti e quattro nella stessa riga:\\*[\medskipamount] \makebox[\textwidth]{\logosede{logoquattro.pdf,logouno.pdf,logotre.pdf,logodue.pdf} \printloghi} @@ -1193,13 +1220,13 @@ Di \tipotesi{custom} si è già detto; però nel seguito si mostrerà un esempio Lo si ripete: il modulo \pack{topfront} rimane per compatibilità con il passato; secondo me è più comodo servirsi dei moduli dedicati, ma nessuno vieta di usarlo. Tuttavia, visto che è onnicomprensivo e servirebbe per comporre i frontespizi di tutti e tre i tipi di tesi universitarie, \tipotesi{triennale}, \tipotesi{magistrale} e \tipotesi{dottorale}, esso ha un codice complesso per gestire correttamente tre varietà diverse. -Gli altri moduli hanno il codice decisamente più semplice, quindi più facile da tenere in ordine, correggere e aggiornare; ma sono anche più semplici da usare per l'utente finale. +Gli altri moduli hanno il codice decisamente più semplice, quindi più facile da tenere in ordine, correggere e aggiornare e, ancora più importante, sono anche più semplici da usare per l'utente finale. \subsection{Comporre il frontespizio con topfront}\label{sec:frontespizi} -Il pacchetto \TOPtesi contiene fra le sue parti il file \pack{topfront} che serve solo per comporre il frontespizio; può essere usato per comporre il solo frontespizio separatamente dalla tesi, ma in questo caso, talvolta, può essere meglio ricorrere a quanto esposto nel paragrafo~\ref{sec:solofrontespizio}. Attenzione: qui si sta parlando del modulo \pack{topfront} non degli altri moduli specializzati. +Il pacchetto \TOPtesi contiene fra le sue parti il file \pack{topfront} che serve solo per comporre il frontespizio; può essere usato per comporre il solo frontespizio separatamente dalla tesi, ma in questo caso, talvolta, può essere meglio ricorrere a quanto esposto nel paragrafo~\ref{sec:solofrontespizio}. Attenzione: qui si sta parlando del modulo \pack{topfront} non degli altri moduli specializzati. -In questo paragrafo, comunque, spiego come comporre il frontespizio indipendentemente dal fatto che rappresenti il frontespizio isolato della tesi o sia quello della tesi intera. Questo pacchetto in effetti, oltre a leggere l'eventuale file di configurazione, contiene solo i comandi per definire gli elementi del frontespizio e per comporlo. +In questo paragrafo, comunque, spiego come comporre il frontespizio indipendente"mente dal fatto che rappresenti il frontespizio isolato della tesi o sia quello della tesi intera. Questo pacchetto in effetti, oltre a leggere l'eventuale file di configurazione, contiene solo i comandi per definire gli elementi del frontespizio e per comporlo. Basta predisporre un piccolo file come questo, salvandolo con un nome a piacere, per esempio, con grande fantasia, \file{myfile.tex}: @@ -1211,7 +1238,7 @@ un nome a piacere, per esempio, con grande fantasia, \file{myfile.tex}: \verb|%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%| \% Impostazioni per comporre con XeLaTeX o LuaLaTeX \verb|\setmainfont[Ligatures=TeX]{TeX Gyre Termes}% o altro font| -\verb|\setotherlanguage{french}% o altra lingua| +\verb|\setotherlanguage{french}% o altra lingua| \verb|%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%| ~ \meta{\color{red}il resto del preambolo} @@ -1239,24 +1266,23 @@ un nome a piacere, per esempio, con grande fantasia, \file{myfile.tex}: La parte che ho indicato con \meta{il resto del preambolo} e \meta{il resto della tesi} sono facoltative; certo sono necessarie quando si compone l'intera tesi; per comporre il solo frontespizio si possono omettere. -Perciò bisogna fare attenzione: se si compone il frontespizio separatamente dalla tesi, la riga \cs{documentclass} deve essere identica alla corrispondente riga del main file della tesi; siccome \pack{toptesi} può usare diversi formati di carta, è necessario che il frontespizio sia composto su carta dello stesso formato. Non è invece necessario usare come font normale un font dello stesso corpo della tesi; con carte particolarmente piccole potrebbe essere più opportuno usare il corpo di 10\,pt invece che quello di 12\,pt. Se si deve scrivere in un'altra lingua diversa dall'italiano e dall'inglese lo si specifica con \cs{setotherlanguage} con le modalità che verranno esposte più avanti. Si noti che l'esempio precedente è impostato per comporre il frontespizio con \XeLaTeX o con \LuaLaTeX, ma se si lavora con \pdfLaTeX, allora vanno specificati i font da usare, e le codifiche di entrata e di uscita; bisogna anche impostare la lingua nella maniera specifica di \pack{babel}. Non scendo nei dettagli, perché fra i vari modelli forniti con il pacchetto \TOPtesi, ce ne sono alcuni predisposti per lavorare con \pdfLaTeX\ e altri con \XeLaTeX\ o \LuaLaTeX. +Perciò bisogna fare attenzione: se si compone il frontespizio separatamente dalla tesi, la riga \cs{documentclass} deve essere identica alla corrispondente riga del main file della tesi; siccome \pack{toptesi} può usare diversi formati di carta, è necessario che il frontespizio sia composto su carta dello stesso formato. Non è invece necessario usare come font normale un font dello stesso corpo della tesi; con carte particolarmente piccole potrebbe essere più opportuno usare il corpo di 10\,pt invece che quello di 12\,pt. Se si deve scrivere in un'altra lingua diversa dall'italiano e dall'inglese lo si specifica con \cs{setotherlanguage} con le modalità che verranno esposte più avanti. Si noti che l'esempio precedente è impostato per comporre il frontespizio con \XeLaTeX o con \LuaLaTeX, ma se si lavora con \pdfLaTeX, allora vanno specificati i font da usare, e le codifiche di entrata e di uscita; bisogna anche impostare la lingua nella maniera specifica di \pack{babel}. Non scendo nei dettagli, perché fra i vari modelli forniti con \TOPtesi, ce ne sono alcuni predisposti per lavorare con \pdfLaTeX\ e altri con \XeLaTeX\ o \LuaLaTeX. -Comunque, se si vuole usare \prog{pdflatex}, la parte fra le prime due righe \verb|%%%| -va sostituita, per esempio, con: +Comunque, se si vuole usare \prog{pdflatex}, la parte fra le prime due righe \verb|%%%| va sostituita, per esempio, con: \begin{verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Impostazioni per comporre con pdfLaTeX \usepackage[utf8]{inputenc} \usepackage[T1]{fontenc} -\usepackage{newtxtext}% o altro font +\usepackage{newtxtext}% o altro font %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \end{verbatim} -Ma se si deve scrivere il frontespizio in un'altra lingua bisogna agire come spiegato poco più avanti. +Se si deve scrivere il frontespizio in un'altra lingua bisogna agire come spiegato poco più avanti. In realtà il pacchetto \pack{topfront} lavora bene in italiano e distingue i singolari dai plurali, i maschili dai femminili; non fa nulla di particolare se la lingua di composizione del frontespizio è l'inglese o un'altra lingua; ci si ricordi che l'inglese è già impostato ma non attivato (tranne per le tesi della ScuDo, per le quali la lingua principale è l'inglese, ovviamente già attivata); lo si attiva nel main file con il comando \cs{english}. Se si vuole comporre il frontespizio in un'altra lingua, diversa dalle due preimpostate, allora, usando \prog{xelatex} o \prog{lualatex}, la si specifica mediante il comando \cs{setotherlanguage}; invece usando \pdfLaTeX\ la si indica fra le opzioni di \cs{documentclass} e poi, prima di usare l'ambiente \amb{frontespizio} o \amb{frontespizio*} o i comandi corrispondenti, la si imposta con \cs{selectlanguage}. Poi si inseriscono i seguenti comandi, modificando gli argomenti in accordo con le restrizioni burocratiche per i frontespizi delle tesi nella propria università\footnote{Le parole fisse in questo esempio sono in inglese; bisogna fare altrettanto per qualunque altra lingua.}: \begin{Verbatim}[fontsize=\small] \retrofrontespizio{This work is subject to the Creative Commons Licence} -\DottoratoIn{Ph.D.\ Course in} +\DottoratoIn{Ph.D.\ Course in } \NomeMonografia{Bachelor Degree Thesis} \TesiDiLaurea{Master Degree Thesis} \NomeDissertazione{Ph.D.\ Dissertation} @@ -1339,18 +1365,18 @@ un programma sconosciuto\fi\fi\fi\ il \today \vspace*{5\baselineskip}} \end{verbatim} -Tutti i test che compaiono nell'ultimo capoverso sono funzionali per questa documentazione il cui file è predisposto per essere compilato con tutti e tre i programmi disponibili. Chiaramente una tesi non deve avere questa versatilità e può avere il preambolo concepito per un solo tipo di programma di composizione. +Tutti i test che compaiono nell'ultimo capoverso sono funzionali per questa documen"tazione il cui file è predisposto per essere compilato con tutti e tre i programmi disponibili. Chiaramente una tesi non deve avere questa versatilità e può avere il preambolo concepito per un solo tipo di programma di composizione. Non bisogna dimenticare che, se si vuole usare \prog{xelatex} o \prog{lualatex}, l'editor con cui vengono scritti i file sorgente deve essere configurato per registrarli sul disco fisso con la codifica \texttt{UTF-8}. Mi sono ripetuto? Sì, l'ho fatto apposta, perché è molto facile dimenticarsene. -Nell'esempio di frontespizio presentato nella pagina~\pageref{fig:altri4frontespizi} si è usato l'ambiente \amb{frontespizio*} che è disponibile a partire dalla versione~ 5.85 del pacchetto \TOPtesi. I comandi omonimi \cs{frontespizio} e \cs{frontespizio*} funzionano ancora, ma si suggerisce di usare gli ambienti. +Nell'esempio presentato nella pagina~\pageref{fig:altri4frontespizi} si è usato l'ambiente \amb{frontespizio*} che è disponibile a partire dalla versione~ 5.85 del pacchetto \TOPtesi. I comandi omonimi \cs{frontespizio} e \cs{frontespizio*} funzionano ancora, ma si suggerisce di usare gli ambienti. I moduli speciali per i vari tipi di tesi definiscono un ambiente speciale che si chiama \amb{ThesisTitlePage} configurato apposta per quei tipi di tesi e solo per quelli. Il modulo \pack{topfront} coi suoi ambienti \amb{frontespizio} e \amb{frontespizio*} è generico e non contiene la definizione dell'ambiente \amb{ThesisTitlePage} disponibile, invece, con gli altri moduli disponibili con \TOPtesi. Vediamo le differenze: nella figura~\ref{fig:4frontespizi} si vedono sempre i loghi all'inizio della pagina; non ci sono filetti di nessun genere, il nome dell'università ci può essere o può mancare, le diverse tipologie di tesi hanno informazioni diverse. La differenza di posizione dei loghi dipende dall'usare l'ambiente \amb{frontespizio} che mette i loghi in testa, o l'ambiente \amb{frontespizio*} che mette i loghi nella parte inferiore della pagina; la figura~\ref{fig:frontespizi} nella pagina~\pageref{fig:frontespizi}, infatti, mostra i frontespizi di sinistra che sono stati composti con l'ambiente \amb{frontespizio} e quelli di destra composti con l'ambiente \amb{frontespizio*}. Il nome dell'ateneo appare o non appare a seconda che il comando \cs{ateneo} contenga un argomento vuoto o un argomento con un nome esplicito. Le altre informazioni dipendono da quali comandi si sono usati per caratterizzare la tesi triennale, magistrale o dottorale. Questi comandi verrano descritti dettagliatamente più avanti. Si noti che lo stile dei frontespizi di destra della figura~\ref{fig:frontespizi} nella pagina~\pageref{fig:frontespizi} è stato composto con l'ambiente asteriscato; salvo alcuni dettagli esso è quello che si ottiene indifferentemente con entrambi gli ambienti quando si imposta \chiave{stile}{classica}; la piccola differenza che si vede nel frontespizio eseguito con questa opzione è che l'etichetta che appare sopra il nome del candidato è “Laureando”, mentre senza l'opzione essa è “Candidato”. Si nota invece che nei frontespizi di sinistra il blocco dei relatori e quello dei candidati sono disallineati, mentre a destra sono allineati. Volendo averli allineati anche senza l'opzione \chiave{stile}{classica} basta aggiungere l'opzione \opz{evenboxes} alle opzioni date alla classe. -Pertanto per comporre i frontespizi, il modulo \pack{topfront} con le varie opzioni e l'asterisco permette di avere molte varianti: +Pertanto per comporre i frontespizi, il modulo \pack{topfront} con le varie opzioni e con o senza l'asterisco permette di avere molte varianti: \begin{enumerate}[noitemsep] \item L'asterisco manca: i loghi sono in testa, tranne con l'opzione @@ -1453,7 +1479,7 @@ filetti & assenti & presenti \tabularnewline Gli ambienti \amb{ThesisTitlePage} e \amb{FrontespizioTesina} definiti negli altri moduli, si comportano come l'ambiente \amb{frontespizio}; in alcuni di questi moduli l'ambiente accetta anche l'asterisco, con una sintassi particolare, ma con la stessa funzione che svolge nell'ambiente \amb{frontespizio*}. \end{table} -\goodpagebreak[6] +%\goodpagebreak[6] \begin{figure}[p]\centering @@ -1461,7 +1487,7 @@ Gli ambienti \amb{ThesisTitlePage} e \amb{FrontespizioTesina} definiti negli alt \caption[Frontespizi composti con lo stile \texttt{classica}]{Frontespizi composti con lo stile \texttt{classica}. Con questo stile si ha una disposizione diversa delle varie informazioni e i loghi sono sempre posti nella parte inferiore della pagina. Il nome dell'università è sempre presente.}\label{fig:altri4frontespizi} \end{figure} -\clearpage +%\clearpage \subsection{Comporre il frontespizio della tesi di dottorato della ScuDo} @@ -1502,9 +1528,8 @@ Prof.~I.J., University of \dots} \end{ThesisTitlePage} \end{verbatim} - \subsection{Il frontespizio della tesi triennale} -Per la tesi triennale il frontespizio viene composto specificando alla classe l'opzione \chiave{tipotesi}{triennale} (oppure \chiave{tipotesi}{monografia} -- il nome di questa seconda opzione è conservato per retrocompatibilità, ma in questo manuale viene usato proprio il secondo valore). +Per la tesi triennale il frontespizio viene composto specificando alla classe l'opzione \chiave{tipotesi}{triennale} (oppure \chiave{tipotesi}{monografia} -- il nome di questa seconda opzione è conservato per retrocompatibilità, ma in questo manuale viene usato proprio questo secondo valore). I comandi usabili per impostare le parole fisse e i dati variabili sono sostanzialmente gli stessi indicati per il modulo \pack{topfront}; un cambiamento importante è costituito dal fatto che il titolo della tesi si descrive con lo stesso comando \cs{titolo} usato per le altre tesi, al posto del comando \cs{monografia} (che però è conservato per retrocompatibilità e quindi è ancora usabile con questo modulo). @@ -1552,20 +1577,20 @@ un programma sconosciuto\fi\fi\fi\ il \today \end{ThesisTitlePage} \end{verbatim} -Naturalmente in una vera tesi triennale la composizione del frontespizio e dell'eventuale retrofrontespizio è in generale molto più semplice; ma anche nel frontespizio di questo documento sono bastati meno di una dozzina di comandi per definire tutto il frontespizio e il retro del frontespizio. +Naturalmente in una vera tesi triennale la composizione del frontespizio e, se presente, del retrofrontespizio è in generale molto più semplice; ma anche nel frontespizio di questo documento sono bastati meno di una dozzina di comandi per definire tutto il frontespizio e il retro del frontespizio. \subsection{Il frontespizio della tesi magistrale} Per la tesi magistrale il frontespizio viene composto specificando alla classe l'opzione \chiave{tipotesi}{magistrale}. I comandi usabili sono sostanzialmente gli stessi che fornisce il modulo \pack{topfront}, con alcune differenze. Innanzi tutto, e in modo del tutto ovvio, non sono disponibili i comandi di \pack{topfront} che si riferiscono specificatamente agli altri tipi di tesi triennale e dottorale. Poi è disponibile l'ambiente \amb{ThesisTitlePage} con le stesse caratteristiche descritte per l'omonimo ambiente per il modulo relativo alla tesi triennale. Si richiama l'attenzione sull'uso dell'asterisco da usare facoltativamente come primo token dopo l'apertura dell'ambiente. -In realtà per retro compatibilità gli ambienti \amb{frontespizio} con o senza asterisco e i comandi \cs{frontespizio} con o senza asterisco, sarebbero ancora disponibili, ma se ne sconsiglia l'uso, raccomandando la preferenza per il nuovo ambiente \amb{ThesisTitlePage}. +In realtà per retro compatibilità gli ambienti \amb{frontespizio} con o senza asterisco e i comandi \cs{frontespizio} con o senza asterisco, sarebbero ancora disponibili, ma se ne sconsiglia l'uso, raccomandando di dare la preferenza al nuovo ambiente \amb{ThesisTitlePage}. Nulla cambia in merito all'opzione \chiave{stile}{classica} e all'opzione specificata con \opz{evenboxes} e ai diversi aspetti che queste opzioni, unite all'asterisco facoltativo, producono sul frontespizio della tesi magistrale. \subsection{Il frontespizio della tesi dottorale} -La tesi dottorale di cui si parla in questa sezione non riguarda la tesi della scuola di dottorato del Politecnico di Torino, per la quale esiste l'apposita opzione e l'apposito modulo. Qui si parla di tesi dottorali da comporre secondo regole di altri atenei, se queste sono compatibili con gli stili disponibili in \TOPtesi; qualora non lo fossero, bisogna ricorrere a un frontespizio completamente personalizzato mediante l'opzione \chiave{tipotesi}{custom}. +La tesi dottorale di cui si parla in questa sezione non riguarda la tesi della scuola di dottorato del Politecnico di Torino, per la quale esiste l'apposita opzione e l'apposito modulo. Qui si parla di tesi dottorali da comporre secondo regole di altri atenei, se queste sono compatibili con gli stili disponibili di \TOPtesi; qualora non lo fossero, bisogna ricorrere a un frontespizio completamente personalizzato mediante l'opzione \chiave{tipotesi}{custom}. In ogni caso il modulo per la composizione delle tesi dottorali “generiche” si invoca specificando l'opzione \chiave{tipotesi}{dottorale}. Questo modulo non differisce granché dal modulo generico \pack{topfront}, salvo il fatto che manca di tutti i comandi che si riferiscono specificatamente alle tesi triennali e magistrali. @@ -1584,7 +1609,8 @@ Per la tesina da presentare all'esame di stato per il conseguimento del diploma Per comporre la tesina bisogna specificare l'opzione \chiave{tipotesi}{sss}; questa chiave implica il caricamento di alcuni pacchetti aggiuntivi e la necessità di usare dei comandi specifici per immettere i dati necessari. -Senza specificare altro \TOPtesi usa i font CM-Super; sarebbe meglio richiedere nel preambolo i font Latin Modern mediante il pacchetto \pack{lmodern}; meglio ancora con il pacchetto \pack{cfr-lm} che dispone di molte opzioni e usa meglio le potenzialità dei font Latin Modern. Abituati come sono ad usare i comuni word processor, i maturandi preferiscono usare i font Times; in questo caso raccomanderei di usare i Times extended, mediante il pacchetti \pack{newtxtext} e \pack{newtxmath}, rispettivamente per i font testuali e per quelli matematici; invece, preferendo un font più facilmente leggibile e un pochino più largo, suggerirei i font Palatino extended da richiamare con i pacchetti \pack{newpxtext} e \pack{newpxmath}. +Senza specificare altro e se si vuole comporre la tesi con il programma \prog{pdflatex}, \TOPtesi usa i font CM-Super; sarebbe meglio richiedere nel preambolo i font Latin Modern mediante il pacchetto \pack{lmodern}; meglio ancora con il pacchetto \pack{cfr-lm} che dispone di molte opzioni e usa meglio le potenzialità dei font Latin Modern. Abituati come sono ad usare i comuni word processor, i maturandi preferiscono usare i font Times; in questo caso raccomanderei di usare i Times extended, mediante il pacchetti \pack{newtxtext} e \pack{newtxmath}, rispettivamente per i font testuali e per quelli matematici; invece, preferendo un font più facilmente leggibile e un pochino più largo, suggerirei i font Palatino extended da richiamare con i pacchetti \pack{newpxtext} e \pack{newpxmath}. +Componendo la tesi con il programma \prog{lualatex} i font OpenType Latin Modern e Latin Modern Math vengono usati di default. Volendo se ne possono specificare altri, ma questi dovrebbero essere quelli che offrono le prestazioni migliori. Va notato subito che è possibile inserire il logo della scuola, ma ovviamente bisogna richiederlo alla scuola, la quale potrebbe negarlo; non è cattiveria; semplicemente il logo è un suo simbolo legale e potrebbe venirne fatto un uso improprio; la scuola potrebbe però disporre di un logo secondario per l'inserimento nel frontespizio della tesina. Nella figura~\ref{fig:frontepizio-tesina} è stato usato un disegno di fantasia, solo per mostrare dove verrebbe inserito; se non si usa il logo, lo spazio inutilizzato viene automaticamente ridistribuito fra gli altri spazi. @@ -1633,7 +1659,7 @@ Vediamo subito i pacchetti aggiuntivi che bisogna \emph{evitare di ricaricare}. \textcolor{red}{Non si sono caricati pacchetti particolari per la composizione della bibliografia}; lo studente ha comunque tre - possibilità: + possibilità:\enlargethispage*{1\baselineskip} \begin{enumerate}[noitemsep] \item Compone la bibliografia a mano servendosi dell'ambiente \amb{thebibliography}; non è complicato se la bibliografia @@ -1643,11 +1669,12 @@ Vediamo subito i pacchetti aggiuntivi che bisogna \emph{evitare di ricaricare}. disuniformità della composizione delle singole voci. \item Usa il pacchetto \pack{natbib} e crea un database bibliografico con il programma \prog{jabref} o con - \prog{bibdesk} (quest'ultimo, solo per il Mac; è già - installato solo per il fatto di avere installato il sistema - \TeX usando Mac\TeX). Predisposto il database bibliografico, + \prog{bibdesk} (quest'ultimo, solo per il Mac\footnote{Con la + distribuzione 2020 di Mac\TeX l'app \prog{bibdesk.app} non è + preinstallata, ma la documentazione di Mac\TeX dice da dove + la si può scaricare.}). Predisposto il database bibliografico, usa il programma \prog{bibtex} per estrarre i riferimenti - e usa il comando \cs{printbibliography} per comporre la + e usa \cs{printbibliography} per comporre la bibliografia; userà poi i vari tipi di comandi \cs{cite} predisposti da \pack{natbib} che permettono di citare correttamente le opere elencate. Conviene leggere la documentazione relativa ai database @@ -1656,7 +1683,7 @@ Vediamo subito i pacchetti aggiuntivi che bisogna \emph{evitare di ricaricare}. \item Usa il database bibliografico come nel caso precedente, ma usa il pacchetto \pack{biblatex} e l'elaboratore di database \prog{biber} per ottenere un risultato impeccabile; - la documentazione di \pack{biblatex} va letta con attenzione, + la documenta"zione di \pack{biblatex} va letta con attenzione, perché questo è un pacchetto dotato di moltissime funzionalità e perciò richiede di essere usato con assoluta precisione. \end{enumerate} @@ -1672,7 +1699,7 @@ Qui si ripetono con una descrizione a parole, non nella forma stringata delle ta non viene dato, non viene inserito nulla nel frontespizio. Il file può avere solo certi formati di immagine corrispondenti alle estensioni \file{.pdf}, \file{.eps}, \file{.png}, e - \file{.ipg}; i primi due formati possono essere vettoriali + \file{.jpg}; i primi due formati possono essere vettoriali e, se lo sono davvero\footnote{Potrebbero contenere al loro interno una matrice di punti colorati, come i formati del secondo tipo, quindi non sarebbero dei veri formati @@ -1695,7 +1722,7 @@ Qui si ripetono con una descrizione a parole, non nella forma stringata delle ta \end{sintassi} \Item[NomeCandidato] Imposta l'indicazione da scrivere sopra il nome dello studente; - l'impostazione di default scrive “Studente” oppure + l'impo"stazione di default scrive “Studente” oppure “Studentessa” a seconda che il nome del maturando venga introdotto mediante il comando \cs{studente} o \cs{studentessa}; l'utente che usa questo comando @@ -1704,19 +1731,19 @@ Qui si ripetono con una descrizione a parole, non nella forma stringata delle ta scrivere comandi complessi per distinguere il maschile dal femminile; il maturando sa sicuramente di che genere è, quindi mette un nome del genere corrispondente. - La sintassi è: + La sintassi~è: \begin{sintassi} \cs{NomeCandidato}\marg{Etichetta del maturando} \end{sintassi} \Item[IndirizzoMiur] imposta l'indirizzo speciale della scuola come risulta al Ministero. Questa indicazione è facoltativa. - Se si vuole impostare questo indirizzo, la sintassi è: + Se si vuole impostare questo indirizzo, la sintassi~è: \begin{sintassi} \cs{IndirizzoMiur}\marg{Indirizzo speciale del Ministero} \end{sintassi} \Item[OpzioneMiur] è un'indicazione facoltativa che specifica la destinazione culturale - come risulta al Ministero; se la si vuole indicare, la sintassi è: + come risulta al Ministero; se la si vuole indicare, la sintassi~è: \begin{sintassi} \cs{OpzioneMiur}\marg{opzione ministeriale} \end{sintassi} @@ -1776,7 +1803,7 @@ Qui si ripetono con una descrizione a parole, non nella forma stringata delle ta \end{sintassi} Di nuovo si raccomanda di andare a capo solo prima di articoli, preposizioni, congiunzioni e simili brevi - parole usando esplicitamente il comando\verb|\\|. + parole usando esplicitamente il comando~\verb|\\|\,. \Item[studente] o \textbf{\cs{studentessa}} imposta il nome e cognome del maturando; si raccomanda di mettere sempre il cognome dopo il nome; la sintassi valida per entrambi @@ -1836,9 +1863,9 @@ Per seguire questa strada, qui posso dare solo delle indicazioni generiche. \end{flushleft} dove \meta{stile} è stato precedentemente definito usando il pacchetto \pack{geometry} o altri pacchetti. Sarebbe opportuno ridefinire i due margini interno ed esterno in modo che siano uguali. Qualcuno desidera apportare un piccolo spostamento verso l'esterno di non più di 5\,mm per compensare la curvatura della prima pagina; questa curvatura dipenderebbe dal modo di confezionare/legare la tesi; di solito con una brossura ben eseguita o una legatura a filo, non è necessario apportare questa correzione; con una tesi spillata con punti metallici, probabilmente una piccola correzione non guasterebbe; però questa correzione è concepita per le pagine interne e, siccome il frontespizio è la prima pagina della tesi, la curvatura della pagina è irrilevante e questo piccolo spostamento è del tutto superfluo. % -\item Non è necessario che i margini laterali siano complessivamente equivalenti ai margini del corpo della tesi, ma non guasta se lo sono. +\item Non è necessario che la gabbia di stampa sia uguale a quella del corpo della tesi, ma non guasta se lo è. In realtà sarebbe preferibile che la gabbia di stampa del frontespizio comprendesse anche lo spazio che nel corpo della tesi viene occupato dalla testatina e dal piedino. % -\item Per la disposizione verticale del testo, sarebbe preferibile che i margini superiore e inferiore siano otticamente equivalenti; questo dipende dal fatto che il primo elemento in alto sia, per esempio, il nome dell'ateneo scritto con caratteri relativamente alti e neri, oppure sia il logo dell'università, che può essere alto, ma di solito non è tanto largo. Inoltre lo stile della pagina non deve presentare né testatina con il suo spazio di separazione del testo, né piedino, con il suo spazio di separazione dal testo, e non deve contenere il numero della pagina. +\item Per la disposizione verticale del testo, sarebbe preferibile che i margini superiore e inferiore siano otticamente equivalenti; questo dipende dal fatto che il primo elemento in alto sia, per esempio, il nome dell'ateneo scritto con caratteri relativa"men"te alti e neri, oppure sia il logo dell'università, che può essere alto, ma di solito non è tanto largo. Inoltre lo stile della pagina non deve presentare né testatina con il suo spazio di separazione dal testo, né piedino, con il suo spazio di separazione dal testo, e non deve contenere il numero della pagina. % \item Il laureando deve provvedere autonomamente alle spaziature verticali fra un elemento e l'altro; deve decidere se certe parti siano da comporre in modo centrato, oppure in bandiera col palo a sinistra o a destra, se certe parti debbano essere affiancate e come debbano essere distanziate. % @@ -1846,7 +1873,7 @@ dove \meta{stile} è stato precedentemente definito usando il pacchetto \pack{ge \begin{flushleft}\ttfamily \cs{fontsize}\Marg{15}\Marg{17}\cs{usefont}\Marg{T1}\Marg{iwona}\Marg{m}\Marg{n} \end{flushleft} -quando compone quell'informazione; dovrebbe curare di fare questa operazione dentro un gruppo al fine di mantenere queste impostazioni solo per la scrittura di quella informazione. Sarebbe meglio definirsi un comando personale per evitare di dover ogni volta introdurre quella serie di istruzioni, con il rischio di commettere anche il più piccolo errore di battitura e quindi di generare fastidiosi messaggi d'errore. +quando compone quell'informazione; dovrebbe curare di fare questa operazione dentro un gruppo al fine di mantenere queste impostazioni solo per la scrittura di quella informazione. Sarebbe meglio definirsi un comando personale per evitare di dover ogni volta introdurre quella serie di istruzioni, con il rischio di commettere anche il più piccolo errore di battitura e quindi di generare fastidiosi messaggi d'errore. Naturalmente se il laureando compone la tesi con il programma \prog{pdflatex}, segue le indicazioni appena date; se usa uno dei programmi \prog{lualtex} o \prog{xelatex} deve scegliere autonomamente i font da usare nel frontespizio e da dichiarare con il comando \cs{fontfamily} del pacchetto \pack{fontspec}; per le impostazioni di serie, forme, corpi e scartamenti deve procedere come indicato sopra. \end{enumerate} Non scendo in ulteriori dettagli; l'utente che volesse comporre un frontespizio molto personalizzato per questa via, deve sapere quello che sta facendo e deve farlo con la dovuta competenza tipografica e del linguaggio \LaTeX. I risultati estetici dipendono fortemente da queste sue capacità. @@ -1919,7 +1946,7 @@ Un esempio di un frontespizio costruito per questa via è quello che un utente h \end{document} \end{verbatim} -Nel codice precedente appaiono alcuni comandi per i font i cui nomi per le corrispondenti dichiarazioni sono ispirati a quelli contenuti nel pacchetto \pack{frontespizio}, ma i nomi sono irrilevanti, nel senso che qualunque altro nome sarebbe stato altrettanto valido; però è utile che i nomi dei dei comandi relativi ai font siano scelti in modo che ricordino la funzione per la quale sono stati definiti. +Nel codice precedente appaiono alcuni comandi per i font i cui nomi per le corrispon"den"ti dichiarazioni sono ispirati a quelli contenuti nel pacchetto \pack{frontespizio}, ma i nomi sono irrilevanti, nel senso che qualunque altro nome sarebbe stato altrettanto valido; però è utile che i nomi dei dei comandi relativi ai font siano scelti in modo che ricordino la funzione per la quale sono stati definiti. La pagina che l'utente ha ottenuto è contenuta nella figura~\ref{fig:frontespizio-landscape}. Per inserirla come frontespizio della tesi egli ha poi usato il pacchetto @@ -1943,7 +1970,7 @@ Potrebbe essere necessario comporre il frontespizio in modo diverso da come vien Ci sono diversi motivi per i quali un laureando o dottorando vorrebbe comporre un frontespizio diverso da quelli predefiniti dai moduli di \TOPtesi. \begin{enumerate}[noitemsep] -\item Le specifiche per le tesi di una data università sono inconciliabili con quelle impostate da tutti i moduli di \TOPtesi. +\item Le specifiche per le tesi di una data università sono inconciliabili con quelle impostate da qualsiasi modulo di \TOPtesi. \item Le informazioni da inserire nel frontespizio sono diverse da quelle impostate dai moduli di \TOPtesi. \item Il laureando non deve soddisfare a specifiche particolari ma vuole comporre un frontespizio personalizzato a suo piacimento. \end{enumerate} @@ -1954,19 +1981,19 @@ Questa seconda via può dare risultati buoni, grazie alla possibilità di person Esistono altri pacchetti, oltre a \pack{frontespizio}, per comporre pagine di titoli; ma per le tesi questo pacchetto sembra il più indicato. Definisce comandi per inserire virtualmente qualsiasi informazione necessaria per un frontespizio di tesi di laurea triennale, magistrale o dottorale; per impostazione predefinita tutte le informazioni fisse sono in italiano, ma ciascuna può essere modificata come si vuole in qualsiasi lingua. -Per seguire questa strada bisogna specificare l'opzione \chiave{tipotesi}{frontespizio} alla classe. Questa opzione imposta tutte le variabili booleane necessarie per evitare dimenticanze e possibili errori, impedisce il caricamento di ogni altro modulo relativo ai vari tipi di tesi, e richiama il pacchetto esterno \pack{frontespizio} di cui è necessario conoscere i dettagli dalla sua documentazione. +Per seguire questa strada bisogna specificare l'opzione \chiave{tipotesi}{frontespizio} alla classe. Questa opzione imposta tutte le variabili booleane necessarie per evitare dimenticanze e possibili errori, impedisce il caricamento di ogni altro modulo relativo ai vari tipi di tesi, e invece carica il pacchetto esterno \pack{frontespizio}, di cui è necessario conoscere i dettagli d'uso dalla sua documentazione. Questo pacchetto \pack{frontespizio} produce un file ausiliario \meta{nome del main file della tesi}\file{-frn.tex} per comporre il frontespizio vero e proprio; questo implica che per disporne come frontespizio del documento finito, bisogna comporre anche questo file ausiliario. Precisamente tutte le informazioni riguardanti il frontespizio devono essere messe dentro un ambiente \amb{frontespizio} collocato dopo l'istruzione \Bambiente{document}. Qui si metteranno i comandi per definire il nome del o dei candidati, il nome del o dei relatori e degli eventuali correlatori, il nome dell'università, il nome del corso di laurea, il nome del tipo di tesi, il titolo e il sottotitolo della tesi, eccetera. -Eseguendo \prog{pdflatex} oppure \prog{xelatex} o \prog{lualatex} viene prodotto il file ausiliario; se la tesi ha il main file che si chiama \texttt{MarioRossiTesiMagistrale.tex}, dopo averlo compilato, nella cartella di lavoro ci sarà anche il file ausiliario \texttt{MarioRossiTesi\discretionary{}{}{}Magistrale-frn.tex}; bisognerà dunque compilare questo file ausiliario, e poi ricompilare il documento che \emph{riscriverà il file ausiliario} con i nuovi eventuali dati modificati, ma intanto ingloberà il file PDF appena prodotto. La sequenza delle compilazioni sarà dunque: +Eseguendo \prog{pdflatex} oppure \prog{xelatex} o \prog{lualatex} viene prodotto il file ausiliario; se la tesi ha il main file che si chiama \texttt{MarioRossiTesiMagistrale.tex}, dopo averlo compilato, nella cartella di lavoro ci sarà anche un altro file che serve solo per comporre il frontespizio: \texttt{MarioRossiTesiMagistrale-frn.tex}; bisognerà dunque compilare questo file ausiliario, e poi ricompilare il documento che \emph{riscriverà il file ausiliario} con i nuovi eventuali dati modificati, ma intanto ingloberà il file PDF appena prodotto. La sequenza delle compilazioni sarà dunque: \begin{verbatim} pdflatex MarioRossiTesiMagistrale pdflatex MarioRossiTesiMagistrale-frn pdflatex MarioRossiTesiMagistrale \end{verbatim} -Queste operazioni generalmente sono semplificate dall'uso di uno shell editor adeguato. Ancor meglio, disponendo di un editor adeguato, si può usare il programma Java \prog{arara}, di Paulo Massa Cereda, che provvede da solo ad eseguire tutte le operazioni necessarie; nella documentazione di \pack{arara} (terminale: texdoc arara; \tasto{invio}) c'è scritto come fare; leggere in dettaglio la regola “frontespizio” descritta nella pagina~112 della documentazione di \prog{arara}~4.0. +Queste operazioni generalmente sono semplificate dall'uso di uno shell editor adeguato. Ancor meglio, disponendo di un editor adeguato, si può usare il programma \prog{arara}, di Paulo Massa Cereda, già installato insieme al sistema \TeX, che provvede da solo ad eseguire tutte le operazioni necessarie; nella documentazione di \pack{arara} (terminale: texdoc arara; \tasto{invio}) c'è scritto come fare; leggere in dettaglio la regola “frontespizio” descritta nella pagina~112 della documentazione di \prog{arara}~4.0. Se il frontespizio deve essere composto con font diversi da quelli di default, con codifiche particolari, con altre impostazioni particolari è meglio che il file ausiliario sia dotato di un preambolo \emph{ad hoc}; quindi il file principale avrà la struttura seguente: @@ -2005,13 +2032,13 @@ Se il frontespizio deve essere composto con font diversi da quelli di default, c \end{flushleft} -Il contenuto dell'ambiente \amb{Preambolo*} può essere molto vario e dipende dal programma usato per la compilazione del frontespizio, da scelte particolari dei font, da comandi da ridefinire, eccetera. La documentazione di \pack{frontespizio} espone diversi esempi che danno un'ottima visione d'insieme per tutte le operazioni che si possono fare e dei risultati che si possono ottenere. +Il contenuto dell'ambiente \amb{Preambolo*} può essere molto vario e dipende dal program"ma usato per la compilazione del frontespizio, da scelte particolari dei font, da comandi da ridefinire, eccetera. La documentazione di \pack{frontespizio} espone diversi esempi che danno un'ottima visione d'insieme per tutte le operazioni che si possono fare e dei risultati che si possono ottenere. Però, come già detto, questo pacchetto compone di default il frontespizio in una pagina A4, e in due stili, quello “standard” e quello per lo stile “elements” della classe \class{suftesi}. -Se si volesse comporre la tesi in formato B5, per esempio, bisogna sfruttare adeguatamente il contenuto dell'ambiente \amb{Preambolo*}. +Se si volesse comporre la tesi in formato B5, per esempio, bisogna sfruttare adeguata"mente il contenuto dell'ambiente \amb{Preambolo*}. -La procedura da seguire, dunque dovrebbe essere modificata come segue. Assumiamo che non si debbano apportare modifiche al contenuto del frontespizio; in caso contrario bisogna ripetere la procedura dopo ogni modifica del suo contenuto all'interno dell'ambiente \amb{frontespizio}. +La procedura da seguire, dunque dovrebbe essere modificata come segue. Assumiamo che non si debbano apportare modifiche al contenuto del frontespizio; in caso contrario bisogna ripetere la procedura dopo ogni modifica del suo contenuto all'interno dell'am"biente \amb{frontespizio}. \begin{Verbatim}[fontsize=\normalsize] \documentclass [11pt,b5paper]{book} @@ -2051,7 +2078,7 @@ In questi casi se il nome dell'ateneo va in testa al frontespizio in corpo \verb Questa operazione funziona automaticamente in modo decisamente accettabile se il nome dell'ateneo eccede la giustezza di 10 o 15 punti percentuali, ma con nomi così lunghi come quelli elencati sopra, il meccanismo funziona ma il risultato lascia molto a desiderare perché i font con cui è composto il nome dell'ateneo, ridotti di una grossa percentuale, diventano più chiari e inaccettabilmente piccoli per la funzione che il nome dell'ateneo svolge nel frontespizio di una tesi. -In questi casi sarebbe più consono usare una immagine, come quella del logo dell'Università di Bolzano dove, accanto al “timbro” dell'università, i tre nomi sono elencati in colonna invece che su un'unica riga. Sono scritti con un carattere piccolo, ma affiancando il “timbro” l'insieme è giusto. Ovviamente, usando il logo, non è poi necessario usarlo di nuovo come simbolo dell'ateneo a metà della pagina. +In questi casi sarebbe più consono usare una immagine, come quella del logo dell'Uni"versità di Bolzano dove, accanto al “timbro” dell'università, i tre nomi sono elencati in colonna invece che su un'unica riga. Sono scritti con un carattere piccolo, ma affiancando il “timbro” l'insieme è giusto. Ovviamente, usando il logo, non è poi necessario usarlo di nuovo come simbolo dell'ateneo a metà della pagina. Con i nomi in due sole lingue, come per l'università valdostana, si potrebbe anche pensare ad una soluzione di questo tipo: \begin{verbatim} @@ -2089,22 +2116,22 @@ usando poi \cs{uniModenaReggio} come argomento del comando \cs{ateneo}; il nome è inserito in una scatola \LaTeX di larghezza pari alla giustezza, per cui la sua larghezza vera viene mascherata da quella della scatola e il meccanismo di ridimensionamento non entra in funzione. \section{Il comando \cs*{chapter}} -The comand \cs{chapter} was redefined in a global way in this package \TOPtesi. The purpose of the redefinition was to extend its native functionalites and to accept a syntax such as this: +Il comando\cs{chapter} è stato ridefinito In \TOPtesi in modo globale. Lo scopo della ridefinizione è stato quella di estenderne le funzionalità in modo che accetti una sintassi come questa: \begin{sintassi} \cs{chapter}\meta{$\star$}\oarg{indice}\oarg{testatina}\marg{titolo}\oarg{stile} \end{sintassi} -dove i vari parametri hanno i significati e le funzioni seguenti; cominciamo dal fondo. +dove i vari parametri hanno i significati e le funzioni seguenti; cominciando dal fondo si ha quanto segue. \begin{description}[noitemsep] % \item[\meta{stile}] è facoltativo; esso specifica lo stile di composizione della pagina iniziale di un capitolo; il valore predefinito è \texttt{plain}, ma spesso è richiesta una prima pagina priva del numero di pagina; in questo caso si specifica \texttt{empty}. Senza questa funzionalità la definizione originale richiedeva complicati trucchi per ottenere il risultato. % \item[\meta{titolo}] è evidentemente obbligatorio, e serve per comporre il titolo nella pagina iniziale del capitolo. % -\item[\meta{testatina}] è facoltativo e specifica la stringa da inserire nella testatina; di default è la stessa stringa che può essere inviata all'indice generale. Di default, però, con gli stili di pagina “normali”, cioè che accettano informazioni correnti nelle testatine di destra o di sinistra, questo nuovo comando le intesta entrambe; ciò è utile sia per capitoli della parte iniziale che possono prevedere, per esempio, un sommario relativamente lungo, sia per cose come l'indice general, di diverse pagine, o la bibliografia di diverse pagine. Questo `ha implicato la ridefinizione dei comandi nativi \cs{tableofcontents}, \cs{listoftables} e \cs{listoffigures}, oltre che gli ambienti \amb{theindex} e \amb{thebobliography}. L'utente, quindi, deve fare un poco di attenzione come si specificherà qui nel seguito. +\item[\meta{testatina}] è facoltativo e specifica la stringa da inserire nelle testatine delle pagine pari (se si compone fronte"/retro) all'interno del capitolo; di default è la stessa stringa che può essere inviata all'indice generale. Di default, però, con gli stili di pagina “normali”, cioè che accettano informazioni correnti nelle testatine di destra o di sinistra, questo nuovo comando le intesta entrambe; ciò è utile sia per capitoli della parte iniziale che possono prevedere, per esempio, un sommario relativamente lungo, sia per oggetti di diverse pagine come l'indice generale o la bibliografia. Questo ha implicato la ridefinizione dei comandi nativi \cs{tableofcontents}, oltre a \cs{listoftables} e \cs{listoffigures}, e gli ambienti \amb{theindex} e \amb{thebobliography}. L'utente, quindi, deve fare un poco di attenzione come si specificherà qui nel seguito. % \item[\meta{indice}] è facoltativo e contiene la stringa da inviare all'indice generale; di default è la stessa stringa da usare per il titolo della pagina iniziale del capitolo. % -\item[\meta{$\star$}] è facoltativo, ma gioca lo stesso ruolo che l'asterisco svolgeva nel comando nativo del nucleo di \LaTeX, cioè serve per non numerare il capitolo e non mandarne le informazioni all'indice generale. Benché il comando asteriscato accetti tutti gli altri parametri del comando non asteriscato, non li usa tutti; in particolare basta inserire uno solo dei due \meta{indice} o \meta{testatina}, ma non è vietato specificarli entrambi; se le stringhe sono diverse viene usata solo quella per la \meta{testatina}; se si specifica uno solo dei due argomenti facoltativi, esso viene inteso come il primo, che per suo conto trasferisce la sua stringa al secondo, quini, la stringa non trasferisce nulla all'indice, ma ha trasferito la sua stringa a entrambe testatine. Perciò i comandi \cs{section} (se presenti) devono essere usati nella forma asteriscata, altrimenti i loro numeri sono errati. +\item[\meta{$\star$}] è facoltativo, ma gioca lo stesso ruolo che l'asterisco svolgeva nel comando nativo del nucleo di \LaTeX, cioè serve per non numerare il capitolo e non mandarne le informazioni all'indice generale. Benché il comando asteriscato accetti tutti gli altri parametri del comando non asteriscato, non li usa tutti; in particolare basta inserire uno solo dei due \meta{indice} o \meta{testatina}, ma non è vietato specificarli entrambi; se le stringhe sono diverse viene usata solo quella per la \meta{testatina}; se si specifica uno solo dei due argomenti facoltativi, esso viene inteso come il primo, che per suo conto trasferisce la sua stringa al secondo, quindi, la stringa non trasferisce nulla all'indice, ma trasferisce la sua stringa a entrambe testatine. Perciò i comandi \cs{section} (se presenti) devono essere usati nella forma asteriscata, altrimenti i loro numeri sono errati; d'altra parte un capitolo non numerato non deve contenere sezioni numerate che poi saranno elencate nell'indice. Inoltre, se si vuole mandare l'informazione del capitolo non numerato all'indice, bisogna farlo con i comandi nativi; per esempio: \begin{verbatim} @@ -2119,14 +2146,14 @@ Analogamente si deve procedere per capitoli non numerati nella front matter: \chapter*{Prologo}} \addcontentsline{toc}{chapter}{Prologo} \end{verbatim} -dove \cs{frontmattertrue} mantiene lo stile di composizione della front matter, anche se\cs{chapter} di suo farebbe passare dalla parte inziale a quella centrale. +dove \cs{frontmattertrue} mantiene lo stile di composizione della front matter, anche se\cs{chapter} di suo farebbe passare dalla parte inziale a quella principale. -Queste osservazioni non dipendono tanto dalla nuova definizione del comando \cs{chapter}, perché anche nelle precedenti versioni era così, mon non era sottolineato abbastanza. +Queste osservazioni non dipendono tanto dalla nuova definizione del comando \cs{chapter}, perché anche nelle precedenti versioni era così, ma non era sottolineato abbastanza. \end{description} -I comandi \cs{sommario} e \cs{ringraziamenti}, come i loro alias, in teroria funziano come descritto; ma siccome sono composti nella parte inziale della tesi, composta con lo stile di pagina \texttt{plain}, non si rimarca nessun effetto dalla nuova funzionalità del comando \cs{chapter}. -Se però si vuole scrivere un capitolo non numerato nella parte centrale della tesi, l'argomento facoltativo del comando asteriscato passa nelle testatine, ma nulla vien inviato all'indice. Inoltre, nella parte centrale della tesi, non viene numerato il capitolo, ma eventuali opzioni sono numerate +I comandi \cs{sommario} e \cs{ringraziamenti}, come i loro alias, in teoria funzionano come descritto; ma siccome sono composti nella parte iniziale della tesi, composta con lo stile di pagina \texttt{plain}, non si rimarca nessun effetto dalla nuova funzionalità del comando \cs{chapter}. +Se però si vuole scrivere un \textcolor{red}{capitolo non numerato} nella parte centrale della tesi, l'argomento facoltativo del comando asteriscato passa nelle testatine, ma nulla viene inviato all'indice. Inoltre, nella parte centrale della tesi, non viene numerato il capitolo, ma eventuali \textcolor{red}{sezioni sono numerate, ma come già detto e lo si ripete, con numeri errati se non si usano i comandi asteriscati}. \section{Il file accessorio \texorpdfstring{\pack*}{}{topcoman}} @@ -2149,14 +2176,14 @@ ancora, fuori dalla carta, sarebbe opportuno che le righe del programma non fossero più lunghe di una ottantina di caratteri per la carta A4, proporzionalmente di meno per formati di carta più piccoli. -Più avanti, nella descrizione del codice, si è abbandonata la definizione iniziale di \cs{listing}, ma la si è ridefinita come sostituto per lanciare un comando del pacchetto \pack{fancyvrb}; si è scelto questo piuttosto che il pacchetto \pack{listings} perché lavorando con \LuaLaTeX o \XeLaTeX non si hanno problemi con i caratteri con codifica multibyte. \pack{listings}, invece, lavora bene solo con caratteri \sigla{ascii} codificati a 7~bit e ha certe rigidezze con le codifiche a 8~bit; può lavorare con \LuaLaTeX o \XeLaTeX, ma bisogna che il programma da listare contenga solo caratteri \sigla{ascii}. +Più avanti, nella descrizione del codice, si è abbandonata la definizione iniziale di \cs{listing}, ma la si è ridefinita come sostituto per lanciare un comando del pacchetto \pack{fancyvrb}; si è scelto questo piuttosto che il pacchetto \pack{listings} perché lavorando con \LuaLaTeX o \XeLaTeX non si hanno problemi con i caratteri con codifica multibyte. \pack{listings}, invece, lavora bene solo con caratteri \sigla{ascii} codificati a 7~bit e per codifiche a 8~bit deve essere espressamente abilitato con la sua opzione \opz{extendedchars=true}; può lavorare con \LuaLaTeX o \XeLaTeX, ma bisogna che il programma da listare contenga solo caratteri \sigla{ascii}; per listare caratteri di lingue orientali ha bisogno di trattamenti speciali descritti nella sua documentazione. In sostanza la soluzione trovata ricorrendo a \pack{fancyvrb} sembra molto più semplice da usare, anche se manca dei molti abbellimenti di \pack{listings}. \begin{otherlanguage}{english} \section[Doctoral dissertation for the ScuDo school of Politecnico di Torino]{\raggedright Doctoral dissertation for~the~ScuDo school of~Politecnico di~Torino} \label{sec:scudo} When you specify the \chiave{tipotesi}{scudo} option to the class, some extra files are loaded and the \pack{topfront} module loading is inhibited. -The main module file is \pack{toptesi-scudo.sty} which, differently from other \TOPtesi modules, loads several other packages. +The main module file is \pack{toptesi-scudo.sty} which, differently from other \TOPtesi modules, sets English as the main language and loads several other packages. \subsection{Further packages loaded for typesetting ScuDo theses} @@ -2172,7 +2199,7 @@ The \chiave{tipotesi}{scudo} option loads some other packages. If it was for me, % \Item[xparse] allows advanced definitions of commands and environments; it is functional for the definitions of some internal bundle macros, but may be used also by the end user, provided s/he reads with great attention its documentation. % -\Item[lscape] allows to typeset full pages in landscape orientation. It may be useful to insert large tables and/or figures; when typesetting with a LuaTeX engine version lower than 1.0.4, this landscape orientation does not work. +\Item[lscape] allows to typeset full pages in landscape orientation. It may be useful to insert large tables and/or figures. When typesetting with a LuaTeX engine version lower than 1.0.4, this landscape orientation does not work. % \Item[setspace] is used to typeset draft versions of the dissertation, but it should not be used at all for the final version; if a particular paragraph required some extra leading, the regular \amb{interlinea} environment of \TOPtesi will do the job. But remember: the paragraph must be really special to require extra leading. In general extra leading is poor typography. @@ -2194,7 +2221,7 @@ The example file \file{toptesi-scudo-example.tex} shows how to avoid the use of % \Item[siunitx] offers special functionalities to handle units of measure and to format numerical fractional values; it also defines some efficient facilities to format numerical table columns so as to align the numerical data on the basis of their decimal separator. % -\Item[float] allows to define other floating environments in addition to \amb{figure} and \amb{table}. Unfortunately it defines also the \texttt{H} position option that kills the floating property and produces typographic results that are absolutely not acceptable. +\Item[float] allows to define other floating environments in addition to \amb{figure} and \amb{table}. Unfortunately it defines also the \texttt{H} position that kills the floating property and produces typographic results that are \textcolor{red}{absolutely not acceptable}. % \Item[imakeidx] allows to generate one or more indices in a synchronous way. This means that the indices are produced with one run of the typesetting program, thus avoiding any manual intervention. % @@ -2224,7 +2251,7 @@ Among real new commands it is better to recall that the ISO standards on math ty \end{verbatim} were the first argument is the \LaTeX function macro, while the second argument is the actual name that is being typeset with the “operators” font (roman). -For what concerns the base of natural logarithms and the imaginary unit, commands \cs{eu} and \cs{gei} are already provided; \cs{iu} is an alias to \cs{gei}; if you do not like “j” as the symbol of the imaginary unit (in spite of the fact the “j” is generally used in engineering disciplines), you can redefine \cs{iu} to generate “i” and avoiding the math Greek \texttt{\string\iota} that is not an ISO official symbol. +For what concerns the base of natural logarithms and the imaginary unit, commands \cs{eu} and \cs{gei} are already provided; \cs{ju} is an alias to \cs{gei}; if you do not like “j” as the symbol of the imaginary unit (in spite of the fact the “j” is generally used in engineering disciplines), you can use \cs{iu} to produce “i”; please avoid the math Greek \texttt{\string\iota} that is not an ISO official symbol. For the differential symbol this extension file contains the definition: \begin{verbatim} @@ -2251,7 +2278,7 @@ This extension file contains also some patches for composing a nomenclature; the \end{verbatim} It can be used as a model to define a larger collection of nomenclature groups. -The user may not be interested in the fine points of automatic rendering of the nomenclature list; but it is sufficient to know that to print it out, it is necessary to use a new defined command that extends the original \cs{printnomenclature} one; this new extension is called simply \cs{printnomencl} and accepts an optional argument, as the original command does, but provides the necessary variants to let \pdfLaTeX\ and \XeLaTeX\ exploit the typesetting program functionality \emph{shell escape}, while letting \LuaLaTeX\ exploit its particular Lua interpreter to do the same job. Whatever these tricks, the user finds out that the nomenclature list appears where it should, with just one typesetting run, in the back matter section where the \cs{printnomencl} command was used. +The user may not be interested in the fine points of automatic rendering of the nomenclature list; but it is sufficient to know that to print it out, it is necessary to use a new defined command that extends the original \cs{printnomenclature} one; this new extension is called simply \cs{printnomencl} and accepts an optional argument, as the original command does, but provides the necessary variants to let \pdfLaTeX\ and \XeLaTeX\ exploit the typesetting program functionality \emph{shell escape}, while letting \LuaLaTeX\ exploit its particular Lua interpreter to do the same task. Whatever these tricks, the user finds out that the nomenclature list appears where it should, with just one typesetting run, in the back matter section where the \cs{printnomencl} command was used. For the ScuDo title page see section~\ref{sec:frontescudo}. @@ -2259,20 +2286,18 @@ For the ScuDo title page see section~\ref{sec:frontescudo}. \section{Come si comincia}\label{sec:cominciare} -Non dico niente su come si scrive una tesi; so per -esperienza che all'inizio ci si sente sperduti davanti allo -schermo vuoto. +Non dico niente su come si scrive una tesi; so per esperienza che all'inizio ci si sente sperduti davanti allo schermo vuoto. -Ma i laureandi possono scaricare dal sito -del \GuIT\footnote{Fino a qualche anno fa questo opuscoletto, prodotto da un'apposita commissione di docenti del Politecnico, era scaricabile dal portale della didattica del Politecnico di Torino. Ora un'altra commissione è al lavoro per fornire ai suoi studenti un manuale completamente nuovo che, però, non è ancora disponibile; nel frattempo la versione di \emph{Saper comunicare} presente nel portale della didattica è ormai diventata obsoleto in alcune sue parti. La versione presente nel sito del \GuIT, invece, continua ad essere aggiornata.} \url{https://www.guitex.org/home/images/doc/} l'opuscoletto \emph{Saper Comunicare --- Cenni di scrittura tecnico-scientifica} dove c'è scritto più o meno tutto quel che bisogna sapere per impostare e scrivere un rapporto tecnico-scientifico qual è la tesi, la monografia o la dissertazione. +Ma i laureandi possono scaricare dal sito +del \GuIT\footnote{Fino a qualche anno fa questo opuscoletto, prodotto da un'apposita commissione di docenti del Politecnico, era scaricabile dal portale della didattica del Politecnico di Torino. Ora un'altra commissione è al lavoro per fornire ai suoi studenti un manuale completamente nuovo che, però, non è ancora disponibile; nel frattempo la versione di \emph{Saper comunicare} presente nel portale della didattica è ormai diventata obsoleta in alcune sue parti. La versione presente nel sito del \GuIT, invece, continua ad essere aggiornata.} \url{https://www.guitex.org/home/images/doc/} l'opuscoletto \emph{Saper Comunicare --- Cenni di scrittura tecnico-scientifica} dove c'è scritto più o meno tutto quel che bisogna sapere per impostare e scrivere un rapporto tecnico-scientifico qual è la tesi, la monografia o la dissertazione. -Qui dirò solo come si comincia a scrivere il file sorgente della tesi. Ci sono essenzialmente due vie, ognuna delle quali offre vantaggi e svantaggi, quindi non si può dire a priori quale sia la via più indicata. +Qui dirò solo come si comincia a scrivere il file sorgente della tesi. Ci sono essenzial"mente due vie, ognuna delle quali offre vantaggi e svantaggi, quindi non si può dire a priori quale sia la via più indicata. \begin{enumerate}[noitemsep] \item {\tolerance=3000 Si compone un unico file come esemplificato con i file \file{toptesi-example.tex}, \file{toptesi-example-xetex.tex} e \texttt{toptesi-example-con-frontespizio\discretionary{}{.}{.}tex}\index{file!toptesi-example-con-frontespiziotex@\texttt{toptesi\discretionary{}{-}{-}example\discretionary{}{-}{-}con\discretionary{}{-}{-}frontespizio\discretionary{}{.}{.}tex}} - allegati alla documentazione di \TOPtesi. Questi file permettono + alle"gati alla documentazione di \TOPtesi. Questi file permettono di sperimentare diverse cose semplicemente mettendo o togliendo dei segni di commento all'inizio delle righe del preambolo che contengono alcuni comandi particolari. Essi sono completi di @@ -2312,7 +2337,7 @@ si predispone un master file con un nome “diverso” da mnemonico e ricordi subito a che cosa ci si riferisce. Questo master file sarà dunque composto, per esempio, così: \begin{flushleft}\ttfamily\obeyspaces\obeylines -\cs{documentclass}\Oarg[\% +\cs{documentclass}[\% \quad b5paper, \% carta B5 \quad corpo=11pt, \% corpo normale 11pt \quad tipotesi=triennale \% laurea triennale @@ -2323,7 +2348,7 @@ master file sarà dunque composto, per esempio, così: \qquad capitolo1,\% \qquad capitolo2,\% \qquad capitolo3,\% -\qquad appendici,\% +\qquad appendici,\% \textnormal{oppure} appendice,\% \qquad bibliografia\% \quad} \Bambiente{document} @@ -2331,8 +2356,7 @@ master file sarà dunque composto, per esempio, così: \quad \cs{ateneo}\Marg{Università di Bengodi} \quad \cs{nomeateneo}\Marg{La Saggezza} \quad \cs{titolo}\Marg{Studi di tricotetratomia applicata} -\quad \cs{sottotitolo}\Marg{Cosa succede quando si spacca -\qquad un capello in quattro} +\quad \cs{sottotitolo}\Marg{Cosa succede quando si spacca un capello in quattro} \quad \cs{candidata}\Marg{Maria Chiomafolta} \quad \cs{relatore}\Marg{prof.\ Piero Scapigliati} \quad \cs{sedutadilaurea}\Marg{Maggio 2345} @@ -2343,14 +2367,14 @@ master file sarà dunque composto, per esempio, così: \quad \cs{include}\Marg{capitolo2} \quad \cs{include}\Marg{capitolo3} \quad \cs{appendix} -\quad \cs{include}\Marg{appendici}% diverse appendici +\quad \cs{include}\Marg{appendici}\% diverse appendici \cs{backmatter} -\quad \cs{include}\Marg{appendice}% una sola appendice +\quad \cs{include}\Marg{appendice}\% una sola appendice \quad \cs{include}\Marg{bibliografia} \Eambiente{document} \end{flushleft} -L'\meta{ambiente per la pagina del titolo} sarà uno dei vari ambienti descritti nei paragrafi precedenti; nell'esempio della laurea triennale riportato sopra, l'ambiente è \amb{ThesisTitlePage}. +L'\meta{ambiente per la pagina del titolo} sarà uno dei vari ambienti descritti nei paragrafi precedenti; nell'esempio della laurea triennale riportato sopra, esso è \amb{ThesisTitlePage}. È da osservare in particolare che l'aver scritto l'argomento di \cs{includeonly} nel modo esemplificato sopra, cioè con un solo nome di file in ogni riga, permette di inserire dei segni di commento all'inizio di alcune delle righe in modo da eseguire, per esempio, la compilazione selettiva di un solo capitolo conservando tutte le informazioni incrociate relative agli altri capitoli già compilati. Con i PC di oggi la compilazione è rapidissima, quindi lo scopo di risparmiare tempo di compilazione non è il motivo per il quale raccomando di seguire questa procedura; faccio invece notare che tenere separate le varie parti della tesi permette di lavorare con più ordine e di risparmiare non poco tempo per la gestione dei vari file sorgente e per le loro correzioni. @@ -2364,9 +2388,9 @@ vale la pena di ripassare l'argomento nella guida \emph{L'Arte di scrivere con LaTeX} da scaricare dalla sezione Documentazione del sito \url{https://www.guitex.org}. -Il file \texttt{preliminari.tex} conterrà presumibilmente il sommario, molto facoltativamente i ringraziamenti\footnote{I ringraziamenti in una tesi non sono quasi mai necessari; lo sono quando bisogna ringraziare una istituzione o una o più persone \emph{esterne} alla propria università che hanno messo a disposizione le loro strutture o le loro competenze per lo svolgimento della tesi. Non si ringraziano genitori, fidanzati/e, amici, e tutti i parenti di ogni grado, il quali saranno più che contenti di sapervi laureati, piuttosto che vedere il loro nome scritto sulla tesi\dots\ Inoltre rappresenta un atto di piaggeria ringraziare il o i propri relatori; essi hanno svolto un loro compito istituzionale, non vi hanno fatto un piacere. Naturalmente questo non vieta che la consuetudine del lavoro assieme non abbia dato origine a sentimenti di reciproca stima e anche di amicizia, ma questa è un'altra faccenda.} e gli indici. +\noindent Il file \texttt{preliminari.tex} conterrà presumibilmente il sommario, molto facoltativamente i ringraziamenti\footnote{I ringraziamenti in una tesi non sono quasi mai necessari; lo sono quando bisogna ringraziare una istituzione o una o più persone \emph{esterne} alla propria università che hanno messo a disposizione le loro strutture o le loro competenze per lo svolgimento della tesi. Non si ringraziano genitori, fidanzati/e, amici, e tutti i parenti di ogni grado, il quali saranno più che contenti di sapervi laureati, piuttosto che vedere il loro nome scritto sulla tesi\dots\ Inoltre rappresenta un atto di piaggeria ringraziare il o i propri relatori; essi hanno svolto un loro compito istituzionale, non vi hanno fatto un piacere. Naturalmente questo non vieta che la consuetudine del lavoro assieme non abbia dato origine a sentimenti di reciproca stima e anche di amicizia, ma questa è un'altra faccenda.} e gli indici. -Mentre per i ringraziamenti si è già sottolineata la loro utilità solo in certe circostanze e la loro inutilità quando quelle circostanze non sussistono; per il “sommario” la questione è diversa. Infatti in italiano la parola “sommario” può voler dire diverse cose; può indicare una breve descrizione del contenuto di un documento e in questo caso la lingua inglese è più precisa perché indica questa descrizione col nome di \emph{abstract}. “Sommario” può indicare un riassunto o una sinossi piuttosto approfonditi e in questo caso l'inglese usa il nome di \emph{summary}. Inoltre “sommario” può essere usato in italiano come sinonimo di “indice generale”, mentre l'inglese usa solamente la locuzione nominale \emph{table of contents}. Con \TOPtesi l'abstract si crea con l'ambiente \amb{abstract} con un'avvertenza: se lo si scrive in italiano bisogna cambiargli il nome da “Sommario” in qualcosa d'altro che personalmente non saprei come scegliere; se lo si volesse chiamare “Breve descrizione”, per esempio, bisognerebbe aggiungere nel preambolo l'istruzione +Per i ringraziamenti si è già sottolineata la loro utilità solo in certe circostanze e la loro inutilità quando quelle circostanze non sussistono; per il “sommario” la questione è diversa. Infatti in italiano la parola “sommario” può voler dire diverse cose; può indicare una breve descrizione del contenuto di un documento e in questo caso la lingua inglese è più precisa perché indica questa descrizione col nome di \emph{abstract}. “Sommario” può indicare un riassunto o una sinossi piuttosto approfonditi e in questo caso l'inglese usa il nome di \emph{summary}. Inoltre “sommario” può essere usato in italiano come sinonimo di “indice generale”, mentre l'inglese usa solamente la locuzione nominale \emph{table of contents}. Con \TOPtesi l'abstract si crea con l'ambiente \amb{abstract} con un'avvertenza: se lo si scrive in italiano bisogna cambiargli il nome da “Sommario” in qualcosa d'altro che personalmente non saprei come scegliere; se lo si volesse chiamare “Breve descrizione”, per esempio, bisognerebbe aggiungere nel preambolo l'istruzione \begin{sintassi} \cs{addto}\Marg{\cs{captionsintalian}}\Marg{\cs{renewcommand}\cs{abstractname}\Marg{Breve descrizione}} \end{sintassi} @@ -2374,7 +2398,7 @@ mentre componendo in inglese (e probabilmente anche in altre lingue) non è nece Per l'indice generale e gli altri indici non occorre fare nulla se non quanto è descritto più avanti in merito al comando \cs{indici}. -Per il riassunto o la sinossi approfonditi (da comporsi solo se \emph{non} si è usato l'ambiente \amb{abstract}) lo si introduce con il comando \cs{sommario}, che compone un capitolo non numerato intitolato Sommario in italiano e Summary in inglese. Un capitolo implica non solo un titolo ma anche alcune pagine di testo; il capitolo può anche essere strutturato in paragrafi, sottoparagrafi e contenere anche delle figure; sarebbe preferibile evitare qualunque numerazione. In ogni caso un riassunto deve essere significativamente più breve della tesi. Se il sommario è lungo abbastanza da meritare di essere strutturato in paragrafi, sottoparagrafi, eccetera, allora il tutto deve essere adeguatamente numerato; per quel che si ègià detto in precedenza, se il sommario è inserito nella parte iniziale (front matter) i comandi \cs{chapter} asteriscati non numerano niente e non inviano nulal all'indice generale; quindi sarebbe meglio che un sommario strutturato sia composto come un capitolo ordinario avente per titolo la parola “Sommario”; inoltre va inserito nella parte principale. +Per il riassunto o la sinossi approfonditi (da comporsi solo se \emph{non} si è usato l'ambiente \amb{abstract}) lo si introduce con il comando \cs{sommario}, che compone un capitolo non numerato intitolato Sommario in italiano e Summary in inglese. Un capitolo implica non solo un titolo ma anche alcune pagine di testo; il capitolo può anche essere strutturato in paragrafi, sottoparagrafi e contenere anche delle figure; sarebbe preferibile evitare qualunque numerazione. In ogni caso un riassunto deve essere significativamente più breve della tesi. Se il sommario è lungo abbastanza da meritare di essere strutturato in paragrafi, sottoparagrafi, eccetera, allora il tutto deve essere adeguatamente numerato; per quel che si è già detto in precedenza, se il sommario è inserito nella parte iniziale (front matter) i comandi \cs{chapter} asteriscati non numerano niente e non inviano nulla all'indice generale; quindi sarebbe meglio che un sommario strutturato sia composto come un capitolo ordinario avente per titolo la parola “Sommario”; inoltre va inserito nella parte principale. In alcuni corsi di studio il riassunto è richiesto come documento separato da consegnare in segreteria insieme alla tesi, affinché sia distribuito fra i commissari dell'esame di laurea insieme alla convocazione per lo svolgimento di questo esame. I commissari hanno quindi la possibilità di sapere con una certa precisione quello che sentiranno esposto dal laureando durante l'esame e avranno quindi anche il tempo e la possibilità di annotarsi possibili domande da rivolgere al candidato dopo la sua esposizione. Presso il Politecnico di Torino, alcuni corsi di studi richiedono questo riassunto ma raccomandano che non superi le due o tre pagine. Il laureando dovrebbe informarsi dettagliatamente presso la segreteria competente. @@ -2384,7 +2408,7 @@ Il file \texttt{capitolo1.tex} conterrà l'introduzione e in pratica esporrà lo I file \texttt{capitolo2.tex}, \texttt{capitolo3.tex}, eccetera, conterranno la descrizione del lavoro svolto e l'analisi critica dei risultati via via ottenuti; l'ultimo file prima delle appendici conterrà i commenti finali, quali ad esempio un sunto dei risultati raggiunti, una breve esposizione degli ulteriori sviluppi, possibili approfondimenti, eccetera. -Per e appendici il discorso è delicato: se, come evidenziato nel modello il file ne contiene una sola, sta bene che esso sia caricato dopo \cs{backmatter} dove i «capitoli» non sono numerati in nessun modo; se invece sono più d'una, è necessario che siano numerate, quindi il file che le contiene deve essere incluso fra \cs{appendix} e \cs{backmatter}. Il comando \cs{appendix} cambia il nome dell «capitolo» da “Capitolo” ad “Appendice” (nella lingua principale della tesi) e ne cambia la numerazione da numerica ad alfabetica. +Per le appendici il discorso è delicato: se, come evidenziato nel modello, il file ne contiene una sola, sta bene che esso sia caricato dopo \cs{backmatter} dove i «capitoli» non sono numerati in nessun modo; se invece sono più d'una, è necessario che siano numerate, quindi il file che le contiene deve essere incluso fra \cs{appendix} e \cs{backmatter}. Il comando \cs{appendix} cambia il nome dell «capitolo» da “Capitolo” ad “Appendice” (nella lingua principale della tesi) e ne cambia la numerazione da numerica ad alfabetica. Nelle varie appendici verranno raccolte le misure eseguite, gli sviluppi matematici, i listati dei programmi, le note critiche, le lunghe citazioni e tutte le altre cose che rovinerebbero la fluidità del testo, se fossero inserite direttamente nel corpo della tesi. @@ -2392,14 +2416,15 @@ La bibliografia conclude la tesi. A seconda del campo disciplinare in cui si svo Dopo la bibliografia possono trovare posto la nomenclatura, l'indice analitico e altri simili sezioni di consultazione particolare. +\goodpagebreak[5] \subsection{La scelta della codifica per il file sorgente}\label{sec:codifica} -Si noti che per comporre i file del corpo della tesi si possono usare direttamente le lettere accentate della tastiera italiana o quelle che si possono ottenere con combinazioni di tasti sia sotto Windows sia sotto Linux o Mac~OS~X; per default \textsf{TOPtesi} non specifica nessuna particolare codifica per l'input; ma perché il programma di tipocomposizione elabori correttamente i file sorgente, o si usa \prog{xelatex} o \prog{lualatex} ricordando di salvare i file con la codifica UTF-8\footnote{Ci si ricordi che UTF-8\index{UTF-8} è il nome della codifica, mentre \opz{utf8} è la sua sigla da usare come opzione per il pacchetto \pack{inputenc}; in linguaggio corrente anche \opz{utf8} viene chiamata codifica, ma è solo una transcodifica.}, oppure non si specifica nessuna particolare codifica ma si usano solo i caratteri ASCII a 7~bit; oppure ancora si usano i caratteri nazionali direttamente da tastiera ma si specifica la codifica che l'editor ha impiegato per salvare nei file i codici dei caratteri non ASCII, per esempio le lettere accentate; se si usa \prog{pdflatex}, suggerisco di specificare esplicitamente la codifica mediante il comando +Si noti che per comporre i file del corpo della tesi si possono usare direttamente le lettere accentate della tastiera italiana o quelle che si possono ottenere con combinazioni di tasti sia sotto Windows sia sotto Linux o Mac~OS~X; per default \textsf{TOPtesi} non specifica nessuna particolare codifica per l'input; ma perché il programma di tipocomposizione elabori correttamente i file sorgente, o si usa \prog{xelatex} o \prog{lualatex} ricordando di salvare i file con la codifica UTF-8\footnote{Ci si ricordi che UTF-8\index{UTF-8} è il nome della codifica, mentre \opz{utf8} è la sua sigla da usare come opzione per il pacchetto \pack{inputenc}; in linguaggio corrente anche \opz{utf8} viene chiamata codifica, ma è solo una transcodifica.}, oppure non si specifica nessuna particolare codifica ma si usano solo i caratteri ASCII a 7~bit; oppure ancora si usano i caratteri nazionali direttamente da tastiera ma si specifica la codifica che l'editor ha impiegato per salvare nei file i codici dei caratteri non ASCII, per esempio le lettere accentate; se si usa \prog{pdflatex}, suggerisco di specificare esplicitamente la codifica sempre mediante il comando \begin{verbatim} \usepackage[utf8]{inputenc} \end{verbatim} -che va bene sia per le macchine Windows, sia per quelle basate su UNIX. Dal 2018 il sistema \TeX\ parte dal presupposto che i file siano codificati in UTF-8\index{UTF-8}, ma bisogna comunque dirlo al programma di composizione perché \prog{pdflatex} non lo sa non è in grado di ricavarlo dal contenuto dei file -- se si usa \prog{xelatex} o \prog{lualatex} questa codifica è necessaria ma non bisogna esplicitarla nel file sorgente. +che va bene sia per le macchine Windows, sia per quelle basate su UNIX. Dal 2018 il sistema \TeX\ parte dal presupposto che i file siano codificati in UTF-8\index{UTF-8}, ma bisogna comunque dirlo al programma di composizione perché, se \prog{pdflatex} non lo sa, non è in grado di ricavarlo dal contenuto dei file -- se si usa \prog{xelatex} o \prog{lualatex} questa codifica è necessaria ma non bisogna esplicitarla nel file sorgente. Gli editor \TeXShop, \TeXworks, TeXstudio, Texmaker, e qualcun altro, consentono di usare la codifica \opt{utf8} che permette di inserire qualunque segno fra le decine o centinaia di migliaia che la codifica UNICODE consente. @@ -2423,7 +2448,7 @@ L'uso del pacchetto \pack{xspace} fa sì che esso, tramite il comando \cs{xspace Se l'editor consente di selezionare le maiuscole accentate da una tabella oppure consente di usare combinazioni di tasti per inserire direttamente le maiuscole accentate nel file sorgente, se ne faccia uso, perché la lettura del file sorgente ne guadagna moltissimo. Se si vuole o si deve usare \prog{pdflatex}, si deve caricare nel -preambolo tutto quello che è necessario per gestire quelle lingue scritte con alfabeti diversi, ma non mi si chieda come si fa, perché so dirlo solo per il greco. Per questa lingua, se si usa l'ortografia monotonica, basta inserire l'opzione della lingua \opt{greek} fra le opzioni \emph{della classe}; se si usa l'ortografia politonica\footnote{Il greco moderno può essere politonico o monotonico; quello antico è sempre e solo politonico, però le regole di sillabazione sono diverse; con \pack{polyglossia} non ci sono problemi; con \pack{babel} a tutt'oggi (2019) esiste l'attributo \opt{ancient} per selezionare la sillabazione antica oltre alla grafia politonica, ma non è ancora possibile disporre effettivamente della sillabazione antica completa.}, allora si deve richiedere per \pack{babel} lo specifico attributo seguendo questo procedimento (per \pack{polyglossia} si veda più avanti): +preambolo tutto quello che è necessario per gestire quelle lingue scritte con alfabeti diversi, ma non mi si chieda come si fa, perché so dirlo solo per il greco. Per questa lingua, se si usa l'ortografia monotonica, basta inserire l'opzione della lingua \opt{greek} fra le opzioni \emph{della classe}; se si usa l'ortografia politonica\footnote{Il greco moderno può essere politonico o monotonico; quello antico è sempre e solo politonico, però le regole di sillabazione sono diverse; con \pack{polyglossia} non ci sono problemi; con \pack{babel} esiste l'attributo \opt{ancient} per selezionare, tra l'altro, la sillabazione antica oltre alla grafia politonica, ma fino al 2019 non era ancora possibile disporre effettivamente della sillabazione antica completa.}, allora si deve richiedere per \pack{babel} lo specifico attributo seguendo questo procedimento (per \pack{polyglossia} si veda più avanti): \begin{verbatim} \documentclass[...,greek.ancient,...]{toptesi} ... @@ -2442,13 +2467,13 @@ oppure \end{verbatim} Al posto di \opt{ancient} si può specificare \opt{polutoniko}; \opt{polutoniko} si riferisce al greco moderno scritto con tutta la varietà di accenti e diviso in sillabe con i criteri adatti alla lingua moderna; \opt{ancient} si riferisce al greco classico che, oltre ad usare la solita varietà di accenti, usa altre regole per la sillabazione di questa varietà di lingua. -Per una tesi che tratti il greco antico in forma filologica, consiglio l'uso del pacchetto \pack{teubner}; visto che l'ho scritto io, un po' di réclame non guasta~\dots\ Bisogna però leggerne la documentazione con attenzione. In particolare conviene ricordare che \pack{teubner} non viene caricato se non è stato precedentemente specificata la lingua greca fra le opzioni, ma poi provvede da solo ad impostare l'attributo \opt{ancient} e tutte le altre caratteristiche necessarie per comporre in greco con il \emph{mark-up} filologico. A tutt'oggi (2019) il pacchetto \pack{teubner} non è stato adeguatamente controllato sotto \XeLaTeX\ e \LuaLaTeX. Probabilmente non è completamente compatibile, ma non sono ancora in grado di dire niente né in positivo né in negativo. +Per una tesi che tratti il greco antico in forma filologica, consiglio l'uso del pacchetto \pack{teubner}; visto che l'ho scritto io, un po' di réclame non guasta~\dots\ Bisogna però leggerne la documentazione con attenzione. In particolare conviene ricordare che \pack{teubner} non viene caricato se non è stato precedentemente specificata la lingua greca fra le opzioni, ma poi provvede da solo ad impostare l'attributo \opt{ancient} e tutte le altre caratteristiche necessarie per comporre in greco con il \emph{mark-up} filologico. A tutt'oggi (\the\year) il pacchetto \pack{teubner} non è stato adeguatamente controllato sotto \XeLaTeX\ e \LuaLaTeX. Probabilmente non è completamente compatibile, ma non sono ancora in grado di dire niente né in positivo né in negativo. %%% MODIFICARE LA FRASE PRECEDENTE QUANDO TEUBNER SARÀ A POSTO!!!! Immagino che per usare le lingue che si scrivono in cirillico, basti specificare l'opzione della lingua, come si fa per il greco. Per alcune altre lingue bisogna invece caricare l'apposito pacchetto, il quale provvede a tutte le impostazioni necessarie; in questi casi bisogna leggere con attenzione la documentazione di quel pacchetto. -Suggerisco di riferirsi al documento \emph{L'Arte di scrivere in diverse lingue con (Xe|Lua)LaTeX}, liberamente scaricabile dalla sezione Documentazione del sito \url{www.guitex.org}. Questa guida tratta molti argomenti utili per comporre in lingue straniere comprese alcune di quelle che si scrivono con insiemi di caratteri diversi da quelli latini; descrive anche molte caratteristiche delle tradizioni tipografiche in uso in nazioni diverse dall'Italia oltre, ovviamente, quelle della tradizione italiana. +Suggerisco di riferirsi al testo \emph{L'Arte di scrivere in diverse lingue con (Xe|Lua)LaTeX}, liberamente scaricabile dalla sezione Documentazione del sito \url{www.guitex.org}. Questa guida tratta molti argomenti utili per comporre in lingue straniere comprese alcune di quelle che si scrivono con insiemi di caratteri diversi da quelli latini; descrive anche molte caratteristiche delle tradizioni tipografiche in uso in nazioni diverse dall'Italia oltre, ovviamente, quelle della tradizione italiana. Ma, tornando alla codifica UTF-8, il problema non è tanto l'editor che consenta o non consenta di usare quella codifica; quasi tutti i sistemi operativi consentono di installare diversi driver per la tastiera del PC, cosicché con un semplice click del mouse si può passare da un alfabeto all'altro; il problema sono i tasti della tastiera sulla cui faccia è riportato il segno che si ottiene premendo quel tasto quando è attivo il driver corrispondente a quella specifica tastiera. Non è ovviamente possibile cambiare il disegno che appare sui tasti semplicemente cliccando per cambiare driver; forse lo si può fare con le tastiere virtuali dei PC \emph{touch screen}, ma con i PC normali questo non è possibile. Ecco quindi che la difficoltà di scrivere con un alfabeto diverso richiede una memoria ferrea per ricordare a quale segno dell'altro alfabeto corrisponda il tasto della propria tastiera. @@ -2464,13 +2489,13 @@ Sembra che sulle macchine Linux l'editor \prog{Vim} e, su tutte le macchine, l'e \subsection{La scelta della codifica per il file di uscita} -Quando si usa \prog{pdflatex}, solo per scrivere in inglese non è necessario specificare nessuna codifica per i font da usare per comporre la tesi; questo è parzialmente vero in quanto l'inglese, fra le lingue più comuni nel mondo occidentale, è l'unica che non fa uso di accenti o altri segni diacritici. Perciò la codifica di default \opt{OT1} per i font di uscita adatti per scrivere in inglese va benissimo e non è necessario specificare nulla. Ma attenzione: come ho già detto, se si deve inserire anche una sola parola diversa dall'inglese e che contenga un accento, o se si deve scrivere in “middle English”, che usava gli accenti, questa vecchia codifica non va assolutamente bene per produrre file PDF/A compatibili. Quindi anche per l'inglese sarebbe opportuno usare una codifica più avanzata. +Quando si usa \prog{pdflatex}, solo per scrivere in inglese non è necessario specificare nessuna codifica per i font da usare per comporre la tesi; questo è parzialmente vero in quanto l'inglese, fra le lingue più comuni nel mondo occidentale, è l'unica che non fa uso di accenti o altri segni diacritici. Perciò la codifica di default \opt{OT1} per i font di uscita adatti per scrivere in inglese va benissimo e non è necessario specificare nulla. Ma attenzione: come ho già detto, se si deve inserire anche una sola parola diversa dall'inglese e che contenga un accento, oppure se si deve scrivere in “middle English”, che usava gli accenti, questa vecchia codifica non va assolutamente bene per produrre file PDF composti con la cesura in fin di riga efficacemente eseguita. Quindi anche per l'inglese sarebbe opportuno usare una codifica più avanzata. Inoltre con la codifica \opt{OT1} la presenza di macro per gli accenti impedisce la divisione in sillabe o ne riduce molto l'efficacia; per l'italiano il problema è relativamente modesto perché normalmente gli accenti compaiono solo sull'ultima vocale delle parole \emph{tronche}. Quindi con questa codifica la parola \emph{qualità} viene divisa in “qua-lità” invece che in “qua-li-tà”. Invece in francese una parola come \emph{électricité} non viene divisa per niente a causa dell'accento sulla prima vocale. -Allora per tutte le lingue diverse dall'inglese, ma anche per l'inglese, è quanto mai opportuno specificare per i font di uscita la codifica \opt{T1}. C'è però un problemino, facilmente risolubile, ma bisogna pensarci: fino ad oggi (2018) i font di default usati da \pdfLaTeX\ sono i font della collezione Computer Modern con codifica \opt{OT1}; e ogni installazione del sistema \TeX li può usare sia nella versione “bitmapped” sia in quella PostScript Type~1. Quest'ultimo formato dei font dovrebbe essere quello da usare sempre con qualunque font per il formato PDF del file di uscita, perché questo formato è portabile da una macchina all'altra, indipendentemente dal sistema operativo usato. Se poi il file deve essere archiviato, esso deve essere in formato PDF, quindi, di fatto, non ci sono scelte. +Allora per tutte le lingue diverse dall'inglese, ma anche per l'inglese, è quanto mai opportuno specificare per i font di uscita la codifica \opt{T1}. C'è però un problemino, facilmente risolubile, ma bisogna pensarci: fino ad oggi (\the\year) i font di default usati da \pdfLaTeX\ sono i font della collezione Computer Modern con codifica \opt{OT1}; e ogni installazione del sistema \TeX li può usare sia nella versione “bitmapped” sia in quella PostScript Type~1. Quest'ultimo formato dei font dovrebbe essere quello da usare sempre con qualunque font per il formato PDF del file di uscita, perché questo formato è portabile da una macchina all'altra, indipendentemente dal sistema operativo usato. Se poi il file deve essere archiviato, esso deve essere in formato PDF, quindi, di fatto, non ci sono scelte. -I file della collezione Computer Modern con codifica \opt{T1}, conosciuti anche come font EC, sono invece distribuiti solo nella forma bitmapped, la quale, oltre ad essere vietata nei file PDF archiviabili, si legge molto male sullo schermo, se il programma di visualizzazione non è molto ben adattato ai font bitmapped. Esiste la collezione di font \Font{CM-Super} per ovviare a questo inconveniente (questa collezione è installata di default in ogni installazione \emph{completa} del sistema \TeX), ma questi font soffrono di un inconveniente che i font Latin Modern non hanno. Perciò è meglio usare i font della collezione Latin Modern, per cui nel preambolo del file da gestire con \prog{pdflatex} si specificherà: +I file della collezione Computer Modern con codifica \opt{T1}, conosciuti come font EC, sono invece distribuiti solo nella forma bitmapped, la quale, oltre ad essere vietata nei file PDF archiviabili, si legge molto male sullo schermo, se il programma di visualizzazione non è molto ben adattato ai font bitmapped. Esiste la collezione di font \Font{CM-Super} per ovviare a questo inconveniente (questa collezione è installata di default in ogni installazione \emph{completa} del sistema \TeX), ma questi font soffrono di un inconveniente che i font Latin Modern non hanno. Perciò è meglio usare i font della collezione Latin Modern, per cui nel preambolo del file da gestire con \prog{pdflatex} si specificherà: \begin{verbatim} \documentclass[...]{toptesi} ... @@ -2486,9 +2511,10 @@ Se invece il file viene gestito con \prog{xelatex} o \prog{lualatex}, oltre alla Naturalmente per gli utenti esperti di \LaTeX ci sono anche altri pacchetti usabili per impiegare altri font diversi da quelli della collezione Latin Modern; questi comunque, secondo me, sono i migliori per la loro completezza; inoltre, grazie al diverso disegno dei corpi minori, la lettura dei pedici e degli apici ne risulta agevolata. -Qui, per la composizione della tesi con \prog{pdflatex} segnalo solo la collezione dei font Times eXtended, richiamabili con i pacchetti \pack{newtxtext} e \pack{newtxmath}, e la collezione dei font Palatino eXtended, richiamabili con i pacchetti \pack{newpxtext} e \pack{newpxmath}. I Times sono font più stretti di quelli della collezione Latin Modern e sono forse indicati per rendere più compatta una tesi un po' voluminosa. I Palatino sono un po' più larghi dei font della collezione Latin Modern e talvolta allungano la tesi di qualche pagina. I nuovi pacchetti \pack{newtx...} e \pack{newpx...} sono configurabili con diverse opzioni; li consiglio a coloro che vogliono usare i font Times o Palatino, ma se posso dare un consiglio, direi che sia sempre preferibile usare i font Latin Modern dalle prestazioni migliori grazie ai corpi ottici; volendo si può usare il pacchetto \pack{cfr-lm} che consente di personalizzare fortemente le proprietà dei font Latin Modern da usare, per esempio permettendo l'uso delle cifre minuscole \ifPDFTeX\oldstylenums{1234567890}\else {\addfontfeature{Numbers=OldStyle}{1234567890}}\fi\ nel testo, e le cifre maiuscole 1234567890 nella composizione della matematica. +Qui, per la composizione della tesi con \prog{pdflatex} segnalo solo la collezione dei font Times eXtended, richiamabili con i pacchetti \pack{newtxtext} e \pack{newtxmath}, e la collezione dei font Palatino eXtended, richiamabili con i pacchetti \pack{newpxtext} e \pack{newpxmath} e la collezione dei font Libertinus testuali e matematici richiamabili con i pacchetti \pack{libertinus} e \pack{linetrtinust1math}. I Times sono font più stretti di quelli della collezione Latin Modern e sono forse indicati per rendere più compatta una tesi un po' voluminosa. I Palatino sono un po' più larghi dei font della collezione Latin Modern e talvolta allungano la tesi di qualche pagina. I nuovi pacchetti \pack{newtx...} e \pack{newpx...} sono configurabili con diverse opzioni; li consiglio a coloro che vogliono usare i font Times o Palatino, ma se posso dare un consiglio, direi che sia sempre preferibile usare i font Latin Modern dalle prestazioni migliori grazie ai corpi ottici; volendo si può usare il pacchetto \pack{cfr-lm} che consente di personalizzare fortemente le proprietà dei font Latin Modern da usare, per esempio permettendo l'uso delle cifre minuscole \ifPDFTeX\oldstylenums{1234567890}\else {\addfontfeature{Numbers=OldStyle}{1234567890}}\fi\ nel testo, e le cifre maiuscole 1234567890 nella composizione della matematica. I font Libertinus testuali e matematici, sono quelli usati nella composizione di questa guida. Sono molto compatti; la famiglia dei font a spaziatura fissa non si distingue tanto dai normali font tondi, anche se a ben guardare la spaziatura fissa è visibile; è che le singole lettere non sono sufficientemente diverse da quelle del tondo normale; in questo documento ho preferito sostituirli con i font New Computer Modern Mono, e mi pare che la scelta sia abbastanza funzionale; inoltre contengono anche i caratteri greci e cirillici. + -Tanto per confronto, questo testo di documentazione su \TOPtesi, quando è composto con il motore di composizione \prog{lualatex}, usa i font OpenType TeX Gyre Termes con codifica UNICODE presenti nella distribuzione \emph{completa} del sistema \TeX; come si vede la divisione delle parole in fin di riga non presenta inconvenienti particolari; forse con un testo di altro genere, con composizione in colonne strette o all'interno di tabelle, si potrebbe verificare la presenza di righe molto lasche, dove è stato allargato troppo lo spazio interparola. Per questa eventualità di ottenere righe lasche, quando si usa il programma di composizione \prog{pdflatex}, si consiglia sempre di usare la codifica \opt{T1}, perché certamente con questa codifica si hanno meno inconvenienti e le lettere accentate sono disegnate meglio. Se inoltre si usano i programmi \prog{pdflatex} o \prog{lualatex}, è conveniente invocare anche il pacchetto di estensione \pack{microtype} che consente di comporre ancora meglio le righe del testo; invece con \prog{xelatex} le funzionalità di questo pacchetto sono solo parzialmente usabili; comunque si può usare \pack{microtype} anche compilando con \prog{xelatex} sebbene i miglioramenti siano meno “vistosi” che con \prog{pdflatex} o \prog{lualatex}\footnote{“Vistosi” è fra virgolette, perché il compito di \pack{microtype} è quello di \emph{non far vedere} i piccolissimi difetti che si hanno quando non lo si usa; troppe righe con cesura alla fine, ruscelletti bianchi che serpeggiano fra le righe; spazi interparola disomogenei e altri simili difettucci. Voglio segnalare che con i normali word processor la divisione in sillabe in fin di riga è consentita, ma di solito non viene attivata dall'utente; inoltre anche impostando questa funzionalità, lavorando in italiano l'apostrofo impedisce la sillabazione, quindi in certe circostanze gli spazi interparola diventano immensi. Ecco perché con i word processor il risultato della composizione non è di qualità tipografica.}. +Se si usano i programmi \prog{pdflatex} o \prog{lualatex}, è conveniente invocare anche il pacchetto di estensione \pack{microtype} che consente di comporre ancora meglio le righe del testo; invece con \prog{xelatex} le funzionalità di questo pacchetto sono solo parzialmente usabili; comunque si può usare \pack{microtype} anche compilando con \prog{xelatex} sebbene i miglioramenti siano meno “vistosi” che con \prog{pdflatex} o \prog{lualatex}\footnote{“Vistosi” è fra virgolette, perché il compito di \pack{microtype} è quello di \emph{non far vedere}, eliminandoli, i piccolissimi difetti che si hanno quando non lo si usa; troppe righe con cesura alla fine, ruscelletti bianchi che serpeggiano fra le righe; spazi interparola disomogenei e altri simili difettucci. Voglio segnalare che con i normali word processor la divisione in sillabe in fin di riga è consentita, ma di solito deve essere esplicitamente attivata dall'utente; inoltre anche impostando questa funzionalità, lavorando in italiano l'apostrofo impedisce la sillabazione, quindi in certe circostanze gli spazi interparola diventano immensi. Ecco un altro motivo per il quale con i word processor il risultato della composizione non è di qualità tipografica.}. %\enlargethispage{\baselineskip} @@ -2500,17 +2526,17 @@ In un foglio A4, di 210\unit{mm} per 297\unit{mm} quello spazio lascia complessi Quelle erano le prescrizioni della segreteria del Politecnico; e continuano ad essere valide, specialmente in vista dell'archiviazione elettronica che viene fatta per tutte le tesi. In altri Atenei vengono accettati anche altri formati, specialmente il formato B5 in molte facoltà umanistiche. \TOPtesi, pertanto accetta anche altre opzioni di formato di carta e provvede alle giuste impostazioni anche per quel che riguarda questo tipo di informazioni all'interno del file PDF di uscita; questo in vista della stampa, ma più ancora per le lettura a video. Ovviamente con i formati di carta più piccoli le dimensioni sono ridotte proporzionalmente, tranne lo scartamento delle righe di testo che viene mantenuto uguale a quello che si sarebbe usato con la carta~A4; il numero di righe di una pagina di solo testo, evidentemente, su fogli di minori dimensioni diminuisce quasi proporzionalmente. -Per questi motivi \TOPtesi, qualunque sia il formato della carta, divide lo spazio complessivo in parti uguali fra i margini laterali quando si desidera produrre una versione del file PDF da leggere a video. Invece divide lo spazio complessivo in parti diverse se il file PDF deve essere stampato; in particolare la proporzioni fra il margine interno e quello esterno sono uguali a quelle fra la giustezza e la larghezza della carta e questa stessa proporzione viene usata fra il margine superiore e quello inferiore; ne consegue che, se non si usano caratteri troppo grandi, una delle diagonali dello specchio di stampa coincide con la corrispondente diagonale della pagina. Questa disposizione coincide con uno dei disegni classici del layout di pagina. +Per questi motivi \TOPtesi, qualunque sia il formato della carta, divide lo spazio complessivo in parti uguali fra i margini laterali quando si desidera produrre una versione del file PDF da leggere a video. Invece divide lo spazio complessivo in parti diverse se il file PDF deve essere stampato; in particolare la proporzioni fra il margine interno e quello esterno sono uguali a quelle fra la giustezza e la larghezza della carta e questa stessa proporzione viene usata fra il margine superiore e quello inferiore; ne consegue che, se non si usano caratteri troppo grandi, una delle diagonali dello specchio di stampa coincide con la corrispondente diagonale della pagina. Questa disposizione coincide con uno dei disegni classici del layout di pagina\footnote{Si veda la documentazione del pacchetto \pack{dlassiclayout}; le disposizioni del Politecnico di Torino non sono quindi quelle solite legate alla tradizione dattilografica, ma sono piuttosto classiche. Certo esistono pacchetti che permettono di ottenere pagine che possono piacere di più, e proprio per questo si sono indicate nella prefazione altre classi con cui si possono ottenere stili diversi.}. -Ora si tenga presente che per la leggibilità confortevole del testo sarebbe opportuno che in ogni riga fossero presenti tanti caratteri, spazi e segni di interpunzione compresi, in numero compreso nella fascia di $66\pm6$. Ovviamente a pari giustezza del testo il numero di caratteri varia a seconda del loro corpo e del loro disegno; una buona indicazione approssimata della “larghezza” di un font è dato dalla lunghezza della stringa che contiene l'alfabeto minuscolo. Secondo Bringhurst (vedi la guida tematica \url{https://guitex.org/home/images/doc/GuideGuIT/IntroPageDesign.pdf} nella pagina~6) la lunghezza ottima di una riga di stampa (la giustezza) dovrebbe essere pari a due volte e mezza la lunghezza dell'alfabeto; si vede anche nella figura~1.1 di quella guida, che i font di default di \TOPtesi, i Latin Modern, sono lunghi 128\unit{pt} pari a 45\unit{mm}; quindi la giustezza ottimale dovrebbe essere di 113\unit{mm} invece dei 150\unit{mm} prescritti dalla segreteria\footnote{Questi conti e quelli immediatamente successivi sono arrotondati al millimetro; non è importantissimo fare i conti con grande precisione, visto che la regola di Bringhurst concede circa il 10\% di tolleranza.}. Con i Times che hanno una larghezza dell'alfabeto di 119\unit{pt} pari a 42\unit{mm} la giustezza ottimale dovrebbe essere di 105\unit{mm}; con i Palatino l'alfabeto è lungo 133\unit{pt} pari a 47\unit{mm} e la giustezza ottimale sarebbe di 118\unit{mm}. Aumentando il corpo a 12\unit{pt} le tre giustezze ottimali appena determinate diventano rispettivamente di 136\unit{mm}, 126\unit{mm} e 142\unit{mm}. come si vede solo componendo in corpo 12\unit{pt} con i font Palatino si resterebbe dentro i margini indicati (verso il limite superiore) dalla regola di Bringhurst; con i Times usati in questo testo e la giustezza di 150\unit{mm} si arriva ad una numero medio di caratteri per ogni riga di circa 79 caratteri, fuori del margine superiore indicato dalla regola di Bringhurst. Non è un eccesso terribile, ed è sopportabile; ma le esigenze di archiviazione dell'Ateneo richiedono di non sprecare spazio nelle pagine senza però sacrificare il contenuto. +Ora si tenga presente che per la leggibilità confortevole del testo sarebbe opportuno che in ogni riga fossero presenti tanti caratteri, spazi e segni di interpunzione compresi, in numero compreso nella fascia di $66\pm6$. Ovviamente a pari giustezza del testo il numero di caratteri varia a seconda del loro corpo e del loro disegno; una buona indicazione approssimata della “larghezza” di un font è dato dalla lunghezza della stringa che contiene l'alfabeto minuscolo. Secondo Bringhurst (vedi la guida tematica \url{https://guitex.org/home/images/doc/GuideGuIT/IntroPageDesign.pdf} nella pagina~6) la lun"ghezza ottimale di una riga di stampa (la giustezza) dovrebbe essere pari a due volte e mezza la lunghezza dell'alfabeto; si vede anche nella figura~1.1 di quella guida, che i font di default di \TOPtesi, i Latin Modern, sono lunghi 128\unit{pt} pari a 45\unit{mm}; quindi la giustezza ottimale dovrebbe essere di 113\unit{mm} invece dei 150\unit{mm} prescritti dalla segreteria\footnote{Questi conti e quelli immediatamente successivi sono arrotondati al millimetro; non è importantissimo fare i conti con grande precisione, visto che la regola di Bringhurst concede circa il 10\% di tolleranza.}. Con i Times che hanno una larghezza dell'alfabeto di 119\unit{pt} pari a 42\unit{mm} la giustezza ottimale dovrebbe essere di 105\unit{mm}; con i Palatino l'alfabeto è lungo 133\unit{pt} pari a 47\unit{mm} e la giustezza ottimale sarebbe di 118\unit{mm}; con i Libertinus l'alfabeto è lungo 122\unit{pt} pari a 43\unit{mm} e la giustezza ottimale sarebbe di 108\unit{mm.} Aumentando il corpo a 12\unit{pt} le quattro giustezze ottimali appena determinate diventano rispettivamente di 136\unit{mm}, 126\unit{mm}, 142\unit{mm} e 130\unit{mm}. Come si vede solo componendo in corpo 12\unit{pt} con i font Palatino si resterebbe dentro i margini indicati (verso il limite superiore) dalla regola di Bringhurst; con i Libertinus usati in questo testo e la giustezza di 150\unit{mm} si arriva ad un numero medio di caratteri per ogni riga di circa 76 caratteri, fuori del margine superiore indicato dalla regola di Bringhurst. Non è un eccesso terribile, ed è sopportabile; ma le esigenze di archiviazione dell'Ateneo richiedono di non sprecare spazio nelle pagine senza però sacrificare il contenuto. Queste sarebbero le regole; naturalmente le impostazioni della classe permettono di scegliere il corpo normale come si desidera entro limiti ragionevoli in modo da avvicinarsi alle dimensioni ottimali legate alla regola di Bringhurst; visto che non si archivia più in forma cartacea, fissare il formato della pagina al B5 per la versione da depositare in segreteria sarebbe forse la soluzione migliore; per la stampa ognuno si regoli come preferisce. -Con il formato B5 i problemi di leggibilità indicati sopra non esistono; meno che mai con il formato A5; tuttavia i formati più piccoli a pari contenuto richiedono più pagine, quindi i problemi di archiviazione “cartacea” si ripresentano. Inoltre i formati più piccoli richiedono una paziente messa a punto delle singole pagine, perché in una tesi con molta matematica ed altri oggetti “ingombranti” potrebbero esserci molte pagine mal composte; suggerirei di non scendere mai sotto il formato~B5. +Con il formato B5 i problemi di leggibilità indicati sopra non esistono; meno che mai con il formato A5; tuttavia i formati più piccoli a pari contenuto richiedono più pagine. Inoltre i formati più piccoli richiedono una paziente messa a punto delle singole pagine, perché in una tesi con molta matematica ed altri oggetti “ingombranti” potrebbero esserci molte pagine mal composte; suggerirei di non scendere mai sotto il formato~B5. Insomma \TOPtesi sacrifica un poco la leggibilità, ma viene incontro ad altre esigenze. Altre classi possono avere layout più consoni alle regole di Bringhurst, ma anche in formato A4 usano più pagine. -Alla luce di quanto sopra descritto, \TOPtesi non solo usa uno scartamento leggermente minore di quello ritenuto ottimale per i font in uso, ma richiede che l'utente non metta mano ad allontanare le righe; per lo stesso motivo \TOPtesi invita gli utenti a servirsi della stampa fronte/retro. +Alla luce di quanto sopra descritto, \TOPtesi non solo usa uno scartamento leggermente minore di quello ritenuto ottimale per i font in uso, ma richiede che l'utente non metta mano ad allontanare le righe; per questo ed altri motivi \TOPtesi invita gli utenti a servirsi della stampa fronte/retro. -Il pacchetto \textsf{TOPtesi} accetta anche l'opzione di composizione in \emph{bianca e volta}, ma di default compone su una facciata sola della pagina cartacea (impostazione di default della sottostante classe \class{report}; anche il formato della carta, di default \texttt{letter}) richiama i formati di carta americani; resta responsabilità dell'utente quella di specificare l'opzione \opz{twoside} al fine di ottimizzare lo spazio disponibile stampando su entrambe le facciate di ogni pagina, e una delle opzioni \opz{a4paper} (default di \textsf{TOPtesi}) o \opz{b5paper}, o qualsiasi altra opzione di formato di carta accettata dalla classe \class{report} per confezionare lo specchio di stampa in modo più consono al formato della carta; in realtà \TOPtesi provvede a realizzare uno specchio di stampa che si adatta particolarmente bene ai formati ISO, mentre non rispetta i formati americani, anche se gli specchi di stampa tutto sommato vanno bene anche per questi formati. In Italia i formati americani non sono in commercio, però potrebbero servire per gli studenti che seguono un programma di doppio titolo in congiunzione con un'università statunitense. +Il pacchetto \textsf{TOPtesi} accetta anche l'opzione di composizione in \emph{bianca e volta}, ma di default compone su una facciata sola della pagina cartacea, impostazione di default della sottostante classe \class{report}; resta responsabilità dell'utente quella di specificare l'opzione \opz{twoside} al fine di ottimizzare lo spazio disponibile stampando su entrambe le facciate di ogni pagina, e una delle opzioni \opz{a4paper} (default di \textsf{TOPtesi}) o \opz{b5paper}, o qualsiasi altra opzione di formato di carta accettata dalla classe \class{report} per confezionare lo specchio di stampa in modo più consono al formato della carta; in realtà \TOPtesi provvede a realizzare uno specchio di stampa che si adatta particolarmente bene ai formati ISO, mentre lo è n o' di meno con i formati americani. In Italia i formati americani non sono in commercio, però potrebbero servire per gli studenti che seguono un programma di doppio titolo in congiunzione con un'università statunitense. Inoltre qual è la differenza fra la stampa in bianca e quella in bianca e volta? È quella che si osserva nei libri composti meglio: cioè, nelle testatine delle pagine stampate solo in bianca compare sempre e solo il titolo del capitolo corrente, mentre stampando in bianca e volta nelle testatine delle pagine \emph{pari} compare il titolo del capitolo, mentre nelle pagine \emph{dispari} compare il titolo del paragrafo con cui comincia quella pagina. Cercare qualche argomento nel testo stampato risulta molto più facile se le testatine delle pagine pari e di quelle dispari contengono tutta l'informazione necessaria. @@ -2537,13 +2563,7 @@ lingue ci si vuole servire \textcolor{red}{oltre all'italiano e all'inglese che \subsection{Configurazione iniziale} -Per la prima parte, cioè per configurare il sistema \TeX per -gestire diverse lingue, subito dopo l'installazione si lanci -\LaTeX su un file di prova qualunque, per esempio -\file{sample.tex} (facente parte della distribuzione del sistema \TeX), poi se ne apra il file \texttt{.log}, -nell'esempio: \texttt{sample.log}; nelle prime righe di questo file -si trovano le lingue per le quali il sistema \TeX è già -configurato. +Per la prima parte, cioè per configurare il sistema \TeX per gestire diverse lingue, subito dopo l'installazione si lanci \LaTeX su un file di prova qualunque, per esempio \file{sample.tex} (facente parte della distribuzione del sistema \TeX), poi se ne apra il file \texttt{.log}, nell'esempio: \texttt{sample.log}; nelle prime righe di questo file si trovano le lingue per le quali il sistema \TeX è già configurato. Componendo con \prog{pdflatex} questo file di documentazione, il file \texttt{toptesi\discretionary{}{-}{-}it.log} nel 2012 conteneva nelle prime righe quanto segue: @@ -2578,20 +2598,20 @@ Babel <3.9k> and hyphenation patterns for 81 languages loaded. \end{verbatim} Non c'è bisogno di preoccuparsi; nella mia macchina sono installate alcune lingue in più rispetto a quelle di default, ma se il numero è così alto, vuol dire che sono installate tutte le lingue che i programmi di composizione del sistema \TeX sono capaci di gestire; fra queste c'è l'italiano, tre versioni di greco, tre versioni di latino, eccetera. L'elenco completo può venire letto nei file \file{pdflatex.log}, \file{xelatex.log} che si trovano in uno degli alberi del sistema \TeX. La lettura è un po' criptica, anche perché il file è piuttosto lungo, ma basta cercare la stringa \texttt{l@english}, e di lì in avanti è registrato tutto quello che serve conoscere per l'elenco delle lingue installate. \LuaLaTeX, diversamente da \pdfLaTeX\ e da \XeLaTeX, carica le impostazioni per le lingue del documento, sillabazione compresa, solo al momento di compilare quel dato documento; per questo compilatore solo l'inglese è precaricato, ma al momento opportuno esso si carica tutto ciò che è necessario per comporre il testo in ciascuna dell'ottantina di lingue che riesce a gestire, o meglio in ciascuna delle lingue specificate per la composizione di ogni particolare documento, massimo un'ottantina (dovrebbero essere sufficienti\dots). -Quel listato o quella riga è quanto appare sempre quando si usa la distribuzione \TeXLive completa o quando si usa la distribuzione \MiKTeX~2.9 (o successiva) completa; serve per dare un'idea di quello che contengono le prime righe del file in questione. Se, come è possibile, dopo la prima installazione il vostro primo file \texttt{.log} non contiene fra le lingue elencate anche l'italiano (oppure sono elencate solo una mezza dozzina di lingue, oppure si dice che le lingue installate sono in un numero molto inferiore a 80), allora questa è la cosa più urgente da fare; non vorrete mica che la vostra tesi, scritta in italiano, abbia le parole divise in sillabe in fin di riga con le regole angloamericane? Se poi siete su un programma di doppia laurea e dovete scrivere parte della tesi nella lingua dell'università straniera di cui prendete l'altro titolo, allora è necessario avere disponibile almeno anche quella lingua. Questo inconveniente si manifesta quando si installa una versione ridotta delle distribuzioni del sistema \TeX, oppure quando si usa la distribuzione \TeXLive/Debian (sempre sconsigliabile per vari motivi, non escluso il fatto che l'installazione di default di solito prevede solo la sillabazione per l'inglese). +Quel listato o quella riga è quanto appare sempre quando si usa la distribuzione \TeXLive completa o quando si usa la distribuzione \MiKTeX~2.9 (o successiva) completa; serve per dare un'idea di quello che contengono le prime righe del file in questione. Se, come è possibile, dopo la prima installazione il vostro primo file \texttt{.log} non contiene fra le lingue elencate anche l'italiano (oppure sono elencate solo una mezza dozzina di lingue, oppure si dice che il numero delle lingue installate è molto inferiore a 80), allora questa è la cosa più urgente da fare; non vorrete mica che la vostra tesi, scritta in italiano, abbia le parole divise in sillabe in fin di riga con le regole angloamericane? Se poi siete su un programma di doppia laurea e dovete scrivere parte della tesi nella lingua dell'università straniera di cui prendete l'altro titolo, allora è necessario avere disponibile almeno anche quella lingua. Questo inconveniente si manifesta quando si installa una versione ridotta delle distribuzioni del sistema \TeX, oppure quando si usa la distribuzione \TeXLive/Debian (sempre sconsigliabile per vari motivi, non escluso il fatto che l'installazione di default di solito prevede solo la sillabazione per l'inglese). -Le regole per inizializzare le lingue gestibili differiscono da distribuzione a distribuzione del sistema \TeX. Bisogna quindi leggere la documentazione che accompagna la distribuzione che si sta usando; qui darò alcuni cenni relativi alle distribuzioni che io conosco. +{\tolerance=3000 Le regole per inizializzare le lingue gestibili differiscono da distribuzione a distribu"zio"ne del sistema \TeX. Bisogna quindi leggere la documentazione che accompagna quella che si sta usando; qui darò alcuni cenni relativi alle distribuzioni che io conosco.\par} \subsubsection{\MiKTeX} Questa distribuzione è forse quella che più sovente viene installata nella forma “basic” (errore! mai installare la versione di base, perché è tutt'altro che completa) e perciò è fra quelle che hanno bisogno di essere gestite. Si apre il wizard da \texttt{Avvio\discretionary{}{|}{|}Programmi\discretionary{}{|}{|}MiKTeX\discretionary{}{|}{|}MiKTeX\textvisiblespace Settings}. Esso apre una finestra di dialogo con diverse linguette; si clicca sulla linguetta \textsf{Languages} e viene aperta un'altra finestra con l'elenco di tutte le lingue gestibili, alcune già con il segno di spunta alla loro sinistra nell'apposito quadratino, altre senza il segno di spunta. Potete cliccare per togliere il segno di spunta sulle lingue già spuntate ma che non userete mai (ma lo sconsiglio) e potete aggiungere il segno di spunta cliccando nel quadratino corrispondente alle lingue desiderate (ma consiglio di spuntarle tutte). -Poi, usciti dal dialogo per la scelta delle lingue, si clicca \texttt{OK} e si torna sulla linguetta \textsf{General}; qui si trovano due bottoni il primo dei quali serve per aggiornare il database dei nomi dei file, mentre il secondo serve per re-inizializzare i file di formato, cioè quei file che contengono già la traduzione in linguaggio macchina di tutte le operazioni che la distribuzione del sistema \TeX è capace di compiere con i suoi vari applicativi. La divisione in sillabe è una di quelle operazioni che deve essere inizializzata, perché richiede strutture dati particolari che sarebbe troppo lungo generare di volta in volta (\LuaLaTeX, però ci riesce). Si clicchi sul bottone per re-inizializzare i file di formato; alla fine di questa operazione si può chiudere il wizard e controllare, dopo aver ricomposto, per esempio, \file{sample.tex} che le prime righe del file \texttt{.log} contengano tutte le lingue che volete usare. +Poi, usciti dal dialogo per la scelta delle lingue, si clicca \texttt{OK} e si torna sulla linguetta \textsf{General}; qui si trovano due bottoni il primo dei quali serve per aggiornare il database dei nomi dei file, mentre il secondo serve per re-inizializzare i file di formato, cioè quei file che contengono già la traduzione in linguaggio macchina di tutte le operazioni che la distribuzione del sistema \TeX è capace di compiere con i suoi vari applicativi. La divisione in sillabe è una di quelle operazioni che deve essere inizializzata, perché richiede strutture dati particolari che sarebbe troppo lungo generare di volta in volta (\LuaLaTeX, però ci riesce). Si clicchi sul bottone per re-inizializzare i file di formato; alla fine di questa operazione si può chiudere il wizard e controllare, dopo aver ricomposto, per esempio, \file{sample.tex}, che le prime righe del file \texttt{.log} contengano tutte le lingue che volete usare. \subsubsection{\TeXLive} -La distribuzione \TeXLive completa distribuita sul circuito \sigla{ctan} nasce già configurata per tutte le lingue che \LaTeX è capace di gestire, quindi anche l'italiano; bisogna ricorrere ai suoi comandi di configurazione solo se si vuole aggiungere una lingua la cui sillabazione non sia distribuita insieme a \TeX Live. Questo evento è talmente raro che non vale la pena di insistervi sopra. Tuttavia un laureando che svolga la sua tesi sull'ostrogoto altomedievale e disponesse solo della sillabazione per l'ostrogoto classico e per l'ostrogoto contemporaneo, si troverebbe in difficoltà; infatti, prima ancora di inserire le regole per l'ostrogoto altomedievale, dovrebbe scriversi le regole di sillabazione e codificarle nel linguaggio specifico richiesto dal sistema \TeX; questo è tutt'altro che facile ed è riservato a specialisti molto avanzati. +La distribuzione \TeXLive completa distribuita sul circuito \sigla{ctan} nasce già configurata per tutte le lingue che \LaTeX è capace di gestire, quindi anche l'italiano. Bisogna ricorrere ai suoi comandi di configurazione solo se si vuole aggiungere una lingua la cui sillabazione non sia distribuita insieme a \TeX Live. Questo evento è talmente raro che non vale la pena di insistervi sopra. Tuttavia un laureando che svolga la sua tesi sull'ostrogoto altomedievale e disponesse solo della sillabazione per l'ostrogoto classico e per l'ostrogoto contemporaneo, si troverebbe in difficoltà; infatti, prima ancora di inserire le regole per l'ostrogoto altomedievale, dovrebbe scriversi le regole di sillabazione e codificarle nel linguaggio specifico richiesto dal sistema \TeX; questo è tutt'altro che facile ed è riservato a specialisti molto avanzati. -Per la distribuzione \TeXLive/Debian, che nella versione di base è predisposto solo per la sillabazione solo in inglese, basta caricare (con gli strumenti specifici della particolare piattaforma Linux conforme alle prescrizioni del consorzio Debian) il pacchetto di estensione delle lingue, l'installazione del quale permette di gestire l'insieme completo dele lingue che \LaTeX sa gestire. +Per la distribuzione \TeXLive/Debian, che nella versione di base è predisposto solo per la sillabazione in inglese, basta caricare (con gli strumenti specifici della particolare piattaforma Linux conforme alle prescrizioni del consorzio Debian) il pacchetto di estensione delle lingue, l'installazione del quale permette di gestire l'insieme completo dele lingue che \LaTeX sa gestire. \subsubsection{Mac\TeX} @@ -2609,8 +2629,7 @@ Poi nel corpo della tesi si includeranno i brani in francese dentro l'ambiente \ \begin{verbatim} I primi versi della Marsigliese sono i seguenti: «\begin{otherlanguage*}{french} -Allons enfants de la Patrie / Les jours de la gloire -sont arrivés. +Allons enfants de la Patrie / Les jours de la gloire sont arrivés. \end{otherlanguage*}» \end{verbatim} L'ambiente \amb{otherlanguage*}\marg{lingua} è definito sia da \pack{babel} sia da \pack{polyglossia}; la versione asteriscata attiva la sillabazione e altre peculiarità della lingua francese, ma non cambia le impostazioni generali valide per l'intero documento. @@ -2655,15 +2674,16 @@ Oppure, se la lingua richiede un alfabeto speciale, se ne può specificare il fo \newfontfamily{\greekfont}{GFS Bodoni} \end{verbatim} Ciò fatto si dispone per ogni lingua, tranne quella principale, di un ambiente col nome uguale alla lingua, che all'occorrenza seleziona anche il font specifico, la cui famiglia abbia un nome che comincia con lo stesso nome della lingua. Per esempio: -\begin{verbatim} -\begin{greek} +% Arrampicata sui vetri per ovviare a Inconsolata che non ha il greco +\begin{flushleft}\fontspec{CMU Typewriter Text Light}\obeylines +\Bambiente{greek} Οἰόνται τινές, βασιλεῦ Γέλων, τοῦ ψάμμον τὸν ἀριθμὸν ἄπειρον εἶμεν τῷ πλήθει· λέγω δὲ οὐ μόνον τοῦ περὶ Συρακούσας τε καὶ τὰν ἄλλαν Σικελίαν ὑπάρχοντος, ἀλλὰ καὶ τοῦ κατὰ πᾶσαν χώραν τάν τε οἰκημέναν καὶ τὰν ἀοὶκητον. -\end{greek} -\end{verbatim} -permette di comporre la citazione: +\Eambiente{greek} +\end{flushleft} +permette di comporre con il font associato alla lingua greca (\Font{GFS Bodoni}) la citazione: \begin{quote} \begin{greek} Οἰόνται τινές, βασιλεῦ Γέλων, τοῦ ψάμμον τὸν ἀριθμὸν ἄπειρον @@ -2672,7 +2692,7 @@ permette di comporre la citazione: χώραν τάν τε οἰκημέναν καὶ τὰν ἀοὶκητον. \end{greek} \end{quote} -con il font associato alla lingua greca: \Font{GFS Bodoni}. +. Anche usando \prog{xelatex} e \prog{lualatex} bisogna definire \cs{sommario} e \cs{ringraziamenti} nella stessa maniera illustrata qui di seguito per comporre con il programma \prog{pdflatex}. @@ -2708,7 +2728,7 @@ I programmi \prog{xelatex} e \prog{lualatex} sono in grado di gestire le lingue \subsubsection{Comporre la tesi di dottorato secondo il modello della Scuola di Dottorato del Politecnico di Torino} -La Scuola di Dottorato (ScuDo) del Politecnico di Torino richiede un ulteriore impostazione, che riguarda specialmente il frontespizio e il retrofrontespizio. Tuttavia in questi paragrafi che riguardano le lingue si precisa subito che in quella Scuola la tesi deve essere composta in inglese e solo in inglese. Per la classe \TOPtesi non ci sono problemi nel comporre in inglese, ma le altre particolari specifiche richiedono ulteriori pacchetti di estensione; nel crearli si è già impostata la lingua inglese per il corpo del documento. Tutto ciò è automatico quando si specifichi alla classe l'opzione \chiave{tipotesi}{scudo}. +La Scuola di Dottorato (ScuDo) del Politecnico di Torino richiede un ulteriore imposta"zione, che riguarda specialmente il frontespizio e il retrofrontespizio. Tuttavia in questi paragrafi che riguardano le lingue si precisa subito che in quella Scuola la tesi deve essere composta in inglese e solo in inglese. Per la classe \TOPtesi non ci sono problemi nel comporre in inglese, ma le altre particolari specifiche richiedono ulteriori pacchetti di estensione; nel crearli si è già impostata la lingua inglese per il corpo del documento. Tutto ciò è automatico quando si specifichi alla classe l'opzione \chiave{tipotesi}{scudo}. Più avanti si daranno indicazioni sull'uso di questi ulteriori pacchetti e saranno scritte in inglese a beneficio anche dei numerosi dottorandi stranieri che frequentano quella Scuola. @@ -2718,25 +2738,26 @@ Il Politecnico di Torino, come anche molte università italiane e straniere, int Il problema dell'archiviazione elettronica è che il materiale archiviato deve essere reperibile, leggibile e stampabile per un tempo indefinito, anche secoli! Per questo è necessario che esso sia archiviato in un formato standard e che nel futuro continuino ad esistere i programmi per la visualizzazione e la stampa di questo formato, non necessariamente quelli che esistono oggi. -L'International Standards Organization (ISO) ha pubblicato nel 2005 uno standard per l'archiviazione dei file con la norma ISO 19005-1:2005 (nel 2011 e poi ancora nel 2012 sono stati approvati due aggiornamenti dello standard, ma per quello che interessa qui non è necessario vederne le modifiche in dettaglio). Secondo questa norma i file archiviabili devono avere il formato PDF, con il linguaggio PDF di livello 1.4, e devono soddisfare ad altri requisiti, oltre a contenere un certo numero di \emph{metadati} specificati dalla norma stessa. Negli aggiornamenti successivi il livello del linguaggio PDF è stato portato a 1.7, ma questo è un dettaglio relativamente poco importante: sono gli altri requisiti che rendono le norme aggiornate più o meno stringenti rispetto a quanto descrivo in questo paragrafo riferendomi alla prima stesura delle norme codificate con le sigle PDF/A-1a e PDF/A-1b. +L'International Standards Organization (ISO) ha pubblicato nel 2005 uno standard per l'archiviazione dei file con la norma ISO 19005-1:2005 (nel 2011 e poi ancora nel 2012 sono stati approvati due aggiornamenti"/estensioni dello standard, ma per quello che interessa qui non è necessario vederne le modifiche in dettaglio). Secondo questa norma i file archiviabili devono avere il formato PDF, con il linguaggio PDF di livello 1.4, e devono soddisfare ad altri requisiti, oltre a contenere un certo numero di \emph{metadati} specificati dalla norma stessa. Negli aggiornamenti successivi il livello del linguaggio PDF è stato portato a 1.7, ma questo è un dettaglio relativamente poco importante: sono gli altri requisiti che rendono le norme aggiornate più o meno stringenti rispetto a quanto si descrive in questo paragrafo con riferimento alle norme codificate con le sigle PDF/A-1a, PDF/A-1b, PDF/A-2a e PDF/A-2b. + +I formati~1a e~2a devono rispondere ai requisiti dei formati~1b e~2b, oltre ad altri requisiti specifici, in particolare che i font siano tutti inclusi nel file ed abbiano codifica UNICODE, che il file debba mantenere le informazioni relative alla sua struttura logica, e che queste possano essere esaminate con i motori di ricerca biblioteconomici. Viceversa il formati~1b e~2b, con meno pretese, richiedono che i font siano tutti inclusi nel file, anche se usano altre specifiche codifiche diverse da quella UNICODE, e che il file sia riproducibile a schermo e sia stampabile esattamente nello stesso modo di quando il file è stato archiviato. -Il formato PDF/A-1a deve rispondere ai requisiti del formato PDF/A-1b oltre ad altri requisiti specifici, in particolare che i font siano tutti inclusi nel file ed abbiano codifica UNICODE, che il file debba mantenere le informazioni relative alla sua struttura logica, e che queste possano essere esaminate con i motori di ricerca biblioteconomici. Viceversa il formato PDF/A-1b, con meno pretese, richiede che i font siano tutti inclusi nel file, anche se usano altre specifiche codifiche diverse da quella UNICODE, e che il file sia riproducibile a schermo e sia stampabile esattamente nello stesso modo di quando il file è stato archiviato. + Per il Politecnico sono accettabili i formati~1b e~2b, o superiori. Per ragioni di retrocompatibilità, nel seguito parlerò maggiormente della conformità PDF/A-1b; ma indicherò sempre nei listati dei codici anche la possibilità di specificare la conformità PDF/A-2b. Qual è la differenza? La norma di livello~2 sembra meno vincolata e più facile da rispettare rispetto alla norma di livello~1, ma anche lei ha le sue idiosincrasie. Complessivamente consiglierei di usare sempre la conformità con il livello~2. -Per il Politecnico, per ora, sarebbe sufficiente il sotto"formato PDF/A-1b. Come ho già detto, mi risulta che sia allo studio da parte del Politecnico la possibilità di richiedere il rispetto di una norma molto più restrittiva, che garantisca l'accessibilità e la fruibilità dei documenti archiviati anche a coloro che hanno alcune forme di disabilità; tuttavia a tutt'oggi (2018) l'ISO non ha ancora messo a punto tale norma, quindi l'apposita commissione del Politecnico sta giustamente precorrendo i tempi perché l'Ateneo sia pronto ad attuare la futura norma. Nel frattempo l'apposito gruppo di lavoro del TUG sta cercando di estendere i suoi pacchetti per l'archiviabilità anche per la norma PDF/A-1a, che richiede di disporre di file PDF classificati come \emph{tagged PDF}. +Come ho già detto, mi risulta che sia allo studio da parte del Politecnico la possibilità di richiedere il rispetto di una norma molto più restrittiva, che garantisca l'accessibilità e la fruibilità dei documenti archiviati anche a coloro che hanno alcune forme di disabilità; tuttavia a tutt'oggi (2020) l'ISO ha già messo a punto tale norma ma non ancora i criteri di verifica, quindi l'apposita commissione del Politecnico sta giustamente precorrendo i tempi perché l'Ateneo sia pronto ad attuare la futura norma. Nel frattempo l'apposito gruppo di lavoro del TUG sta cercando di estendere i suoi pacchetti per l'archiviabilità anche per i formati~1a e~2a, che richiedono di disporre di file PDF classificati come \emph{tagged PDF}. Le istruzioni che seguono per la produzione di un file conforme alla normativa PDF/A sono applicabili se si compone la tesi sia con il programma \prog{pdflatex}, sia con \prog{xelatex}, sia con \prog{lualatex}. In particolare, per sfruttare al meglio le possibilità offerte da \prog{xelatex} e \prog{lualatex} è necessario usare il pacchetto \pack{fontspec} che, senza ulteriori opzioni o specificazioni, usa di default i font Latin Modern nella versione OpenType; volendo si possono usare i comandi specifici disponibili con quel pacchetto per caricare font diversi. Notare che se si è predisposto il preambolo del file sorgente per la tesi in modo da poterlo compilare con \prog{pdflatex}, si può ugualmente compilare il documento anche con \prog{xelatex} o \prog{lualatex}, perché \TOPtesi è perfettamente conscio del motore di composizione che si sta usando e sa che il file sorgente parte dal presupposto che si volevano creare gli hyperlink. In altre parole, non c'è bisogno di modificare sostanzialmente il file sorgente per passare da \prog{pdflatex} a \prog{xelatex} o \prog{lualatex}, se non eventualmente usando solo il ramo \emph{vero} oppure \emph{falso} del test indicato qui sotto. Però il file prodotto con \prog{xelatex} necessita di ulteriore elaborazione (\emph{postprocessing}) per soddisfare le specifiche richieste dalla norma ISO relativa al formato archiviabile. Con \prog{pdflatex} e \prog{lualatex} non è necessaria nessuna operazione di post"processing; è per questo che qui si è aggiunto un test per evitare di caricare il pacchetto \pack{pdfx} quando si compila con \prog{xelatex}; ma si veda più avanti. Come esempio si può comunque fare riferimento alla parte iniziale del preambolo del file usato per comporre questo stesso manuale, che si riporta a partire dalla pagina~\pageref{pag:preambolo-pdfa}. -\label{pag:preambolo-pdfa} -\begin{Verbatim}[fontsize=\small,numbers=left,numbersep=3pt] +\begin{Verbatim}[reflabel=pag:preambolo-pdfa, fontsize=\setfontsize{10.125}, numbers=left,numbersep=3pt] % !TEX encoding = UTF-8 Unicode % !TEX TS-program = LuaLaTeX \documentclass[corpo=12pt,twoside,tipotesi=monografia]{toptesi} -\ProvidesFile{toptesi-it.tex}[2019-07-04 v.0.9.42] +\ProvidesFile{toptesi-it.tex}[2020-05-12 v.0.9.47 TOPtesi Italian Documentation] \usepackage{imakeidx}% da caricare prima di pdfx \indexsetup{headers={\indexname}{\indexname}} -\begin{filecontents*}{\jobname.xmpdata} +\begin{pdfxmetadata} \Title{La classe TOPtesi} \Author{Claudio Beccari} \Publisher{Claudio Beccari} @@ -2747,10 +2768,10 @@ classe TOPtesi\sep pdfLaTeX\sep XeLaTeX\sep LuaLaTeX} -\end{filecontents*} +\end{pdfxmetadata} \unless\ifXeTeX - \usepackage[a-1b]{pdfx} + \usepackage[a-1b]{pdfx}% oppure [a-2b] \fi % \ifPDFTeX @@ -2764,9 +2785,9 @@ LuaLaTeX} \else \usepackage{fontspec} \usepackage{xcolor} - \setmainfont[Ligatures=TeX]{TeX Gyre Termes} - \setsansfont[Ligatures=TeX, Scale=MatchLowercase]{TeX Gyre Heros} - \setmonofont{UM Typewriter} + \setsansfont[Ligatures=TeX]{Libertinus Sans} + \setmonofont{NewComputerModern Mono} +... \setmainlanguage[babelshorthands]{italian} \usepackage{amsmath} \usepackage{unicode-math} @@ -2775,7 +2796,8 @@ LuaLaTeX} \newfontfamily{\greekfont}{GFS Didot} \fi \usepackage{metalogo,longtable,booktabs,array,tabularx, -enumitem,ragged2e,siunitx,curve2e,microtype,wrapfig} + enumitem,ragged2e,siunitx,curve2e,microtype} +\usepackage{afterpage,wrapfig} % \unless\ifcsname ver@hyperref.sty\endcsname\usepackage{hyperref}\fi \hypersetup{% @@ -2794,38 +2816,37 @@ enumitem,ragged2e,siunitx,curve2e,microtype,wrapfig} \includegraphics[height=\dimexpr\ht0+\dp0]{GuITlogo}}}} \end{Verbatim} -Un commento va fatto subito: il lettore non si spaventi di una prima parte di preambolo così complessa, e non ha nessun bisogno di copiarla integralmente. Per questo documento ho predisposto un test per verificare con quale programma di composizione lo compilo e, come si vede, imposto i font e le lingue come specificato sopra, ma nel ramo \emph{falso} (cioè non si sta compilando con \prog{pdflatex} ma con \prog{lualatex} oppure \prog{xelatex}) ho inserito gli specifici comandi per gestire le lingue e per scegliere i font tenendo presente che \pack{polyglossia} e \pack{fontspec} sono già caricati dalla classe; tuttavia se il programma con cui si compila è \prog{xelatex}, si evita di caricare il pacchetto speciale \pack{pdfx}, necessario per produrre file PDF/A compatibili. +Un commento va fatto subito: il lettore non si spaventi di una prima parte di preambolo così complessa, e non ha nessun bisogno di copiarla integralmente. Per questo documento si è predisposto un test per verificare con quale programma di composizione si esegue la compilazione e, come si vede, si impostano i font e le lingue come specificato sopra, ma nel ramo \emph{falso} (cioè non si sta compilando con \prog{pdflatex}, bensì con \prog{lualatex} oppure \prog{xelatex}), sono inseriti gli specifici comandi per gestire le lingue e per scegliere i font tenendo presente che \pack{polyglossia} e \pack{fontspec} sono già caricati dalla classe; tuttavia se il programma con cui si compila è \prog{xelatex}, si evita di caricare il pacchetto speciale \pack{pdfx}, necessario per produrre file PDF/A compatibili. Il lettore sa perfettamente con quale programma vuole compilare la sua tesi e può tranquillamente mettere nel suo preambolo solo il ramo \emph{vero} del test se compila con \prog{pdflatex} o solo il ramo \emph{falso} se compila con \prog{lualatex} o con \prog{xelatex}. Se vuol produrre un file PDF/A compatibile con \prog{xelatex} ha due vie: \begin{itemize}[noitemsep] \item o lascia perdere \prog{xelatex} e compila con \prog{lualatex}; il frutto della compilazione è persino migliore, visto che \prog{lualatex} usa le funzionalità del pacchetto \pack{microtype} in modo più avanzato rispetto a \prog{xelatex}; oppure % -\item se proprio non può fare a meno di usare \prog{xelatex}, toglie il test \cs{ifXeTeX}, conservando solo \cs{usepackage}\Marg{pdfx}, e usa solo il ramo \emph{falso} del test \verb|\ifPDFTeX|; tuttavia ciò non sufficiente perché deve poi procedere ad una certa dose di postprocessing come specificato nel paragrafo~\ref{sec:XePDFA}. +\item se proprio non può fare a meno di usare \prog{xelatex}, toglie il test \cs{ifXeTeX}, conservando solo \cs{usepackage}\Marg{pdfx}, e usa solo il ramo \emph{falso} del test \verb|\ifPDFTeX|; tuttavia ciò non è sufficiente perché deve poi procedere ad una certa dose di postprocessing come specificato nel paragrafo~\ref{sec:XePDFA}. \end{itemize} Nel codice precedente le prime due righe sono solo dei commenti per il programma di compilazione, ma per il programma di editing sono comandi di autoconfigurazione; essi dicono al programma di editing di salvare il documento dopo la prima creazione e dopo ogni modifica con la codifica \opz{utf8}; la seconda riga dice che quando si clicca il bottone per la compilazione l'editor deve inviare al sistema operativo il comando di lanciare il programma \prog{lualatex}. Ricordo che questo tipo di commenti di autoconfigurazione sono interpretati correttamente dagli editor \TeXShop, \TeXworks e TeXstudio (forse anche da altri editor, ma questi tre sono quelli che io consiglieri per ogni utente). -Le righe dalla 8 alla 19 contengono l'ambiente \amb{filecontents*} che provvede a generare la lista dei metadati che ho usato per questo documento\footnote{\label{nota:colorprofileerror}In realtà, almeno fino alla fine di ottobre 2018 c'era un problema facilmente risolvibile. Il profilo di colore precedentemente usato per descrivere i colori RGB era protetto da una clausola che ne impediva la distribuzione; evidentemente qualcuno si è fatto vivo per segnalare questa violazione. Verso la fine di dicembre 2018 è stata resa disponibile la versione 1.6.1 di \pack{pdfx} che non soffre più di questo problema. Si consiglia quindi di aggiornare la propria installazione o, almeno, di aggiornare il pacchetto \pack{pdfx} e il problema sparisce.}. +Le righe dalla 8 alla 19 contengono l'ambiente \amb{pdfxmetadata}; esso provvede a generare il file che contiene la lista dei metadati che si sono usati per questo documento. Si ricorda solo che l'ambiente \amb{pdfxmetadata} va inserito dopo la riga che contiene \cs{documentclass} e prima della riga che contiene \cs{usepackage}\Oarg{a-1b}\Marg{pdfx}. -Si noti che in contrasto con le versioni precedenti di \TOPtesi, è meglio che questo ambiente si trovi dopo e non prima di \cs{documentclass}; questa lieve modifica (retrocompatibile) è stata introdotta per ovviare ad un inconveniente piccolo, ma che lascia interdetti gli utenti alle prime armi: l'ambiente originale non sovrascrive i file se già esistono. Questo implica che qualunque modifica si esegua fra i dati contenuti in questo ambiente non viene di fatto memorizzata nel file \verb|\jobname.xmpdata| se non dopo averne cancellato una eventuale versione precedente. Con la presente versione di \TOPtesi viene caricato direttamente dalla classe il pacchetto \pack{filecontents} che ridefinisce gli ambienti \amb{filecontents} e \amb{filecontents*} in modo da eliminare questa loro limitazione; questa funzionalità è operativa se si sposta il codice di questo ambiente ad un punto che preceda il caricamento di \pack{pdfx}, ma dopo aver caricato \pack{filecontents}, che, essendo a sua volta già caricato dalla classe, equivale a dire \emph{dopo} la dichiarazione della classe. Quindi l'utente può mettere l'ambiente prima della dichiarazione di classe, come in passato ma rinuncia alla nuova funzionalità, che invece è disponibile solo se l'ambiente si trova, come indicato, dopo la dichiarazione di classe ma prima di invocare il pacchetto \pack{pdfx}. -La riga 3 contiene la dichiarazione della classe; come si vede, specifico solo il corpo normale dei font al valore di 12\,pt, e seleziono la composizione in bianca e volta, successivamente non specifico nessuna correzione per la cucitura delle segnature; specifico solo che il tipo di documento è quello che corrisponde alla opzione \chiave{tipotesi}{monografia}, dove ho preferito usare il nome \texttt{monografia} piuttosto che l'equivalente nome \texttt{triennale}, visto che questo documento non è una tesi. +La riga 3 contiene la dichiarazione della classe; come si vede, si specifica solo il corpo normale dei font al valore di 12\,pt, e si seleziona la composizione in bianca e volta, successivamente non si specifica nessuna correzione per la cucitura delle segnature; si specifica solo che il tipo di documento è quello che corrisponde a \chiave{tipotesi}{monografia}, dove si è preferito usare il nome \texttt{monografia} piuttosto che l'equivalente nome \texttt{triennale}, visto che questo documento non è una tesi. -Importante per questo documento è la riga 4, dove specifico il nome del file, ma ne specifico anche la data e la versione; così sono sempre sicuro di sapere quale versione sto componendo e i lettori, che trovano questo file fra la documentazione di \class{toptesi}, sanno subito se si tratta di documentazione aggiornata o se non sia il caso di aggiornare la propria installazione. +Importante per questo documento è la riga 4, dove si specifica non solo il nome del file, ma anche la data e la versione; così chi lavora sul file sorgente e chi legge il documento finale è sempre sicuro di sapere quale versione si sta componendo e i lettori, che trovano questo file fra la documentazione di \class{toptesi}, sanno subito se si tratta di documentazione aggiornata o se non sia il caso di aggiornare la propria installazione. -Con le righe 5 e 6 carico il pacchetto \pack{imakeidx} e lo configuro. Questo pacchetto va caricato prima di \pack{pdfx}, perché questo ridefinisce alcuni comandi sui quali \pack{imakeidx} non può più intervenire. +Con le righe 5 e 6 si carica il pacchetto \pack{imakeidx} e lo si configura. Questo pacchetto va caricato prima di \pack{pdfx}, perché questo ridefinisce alcuni comandi sui quali \pack{imakeidx} non può più intervenire. -Con le righe 21--23 eseguo il test per sapere se sto componendo con \prog{xelatex} (il cui interprete si chiama \prog{xetex}) così da \emph{non} caricare il pacchetto \pack{pdfx}. +Con le righe 21--23 si esegue il test per sapere se si sta componendo con \prog{xelatex} (il cui interprete si chiama \prog{xetex}) così da \emph{non} caricare il pacchetto \pack{pdfx}. Poi dalla riga 25 comincia il test importante per configurare il preambolo correttamente secondo le necessità di compilazione; dalla riga 26 alla riga 32 si ha il ramo \emph{vero} da usarsi quando si compila con \prog{pdflatex}; invece dalla riga 34 alla riga 44 si ha il ramo \emph{falso} da usarsi quando si compila con \prog{lualatex}; per compilare con \prog{xelatex}, ho già detto che oltre a togliere le righe 21 e 23 (ma non la riga 22) bisogna poi procedere come specificato nel paragrafo~\ref{sec:XePDFA}. -Le righe successive dalla 46 alla 63 servono per mostrare non solo i pacchetti che ho caricato, ma anche come ho configurato le opzioni per \pack{hyperref}: un test serve per verificare (tramite l'esistenza della macro il cui nome contiene una stringa col nome completo del pacchetto adeguatamente prefissato con \texttt{ver@}) se \pack{hyperref} è già stato caricato; se non lo è, lo si carica e poi si impostano le opzioni. Infine si impostano i comandi \cs{MP} e \cs{GuIT} per importare due piccoli file che contengono il logo di \MP\ e quello del \GuIT. Questo artificio è stato usato per evitare di usare certi font che potrebbero dare luogo a problemi per l'archiviabilità +Le righe successive dalla 46 alla 64 servono per mostrare non solo i pacchetti che si sono caricati, ma anche come si sono configurate le opzioni per \pack{hyperref}: un test serve per verificare (tramite l'esistenza della macro il cui nome contiene una stringa col nome completo del pacchetto adeguatamente prefissato con \texttt{ver@}) se \pack{hyperref} è già stato caricato; se non lo è, lo si carica e poi si impostano le opzioni. Infine si impostano i comandi \cs{MP} e \cs{GuIT} per importare due piccoli file che contengono il logo di \MP\ e quello del \GuIT. Questo artificio è stato usato per evitare di usare certi font che potrebbero dare luogo a problemi per l'archiviabilità -Per la compilazione del documento in modo che sia conforme con lo standard PDF/A vorrei sottolineare l'opportunità di specificare i metadati richiesti come indicato nel codice precedente. Non è obbligatorio, ma in questo modo si è sicuri che il file dei metadati abbia l'estensione giusta e il nome assolutamente coincidente con il nome del main file del documento, cioè della tesi. +Per la compilazione del documento in modo che sia conforme con lo standard PDF/A si sottolinea l'opportunità di specificare i metadati richiesti come indicato nel codice precedente. Non è obbligatorio, ma in questo modo si è sicuri che il file dei metadati abbia l'estensione giusta e il nome assolutamente coincidente con il nome del main file del documento, cioè della tesi. Non è obbligatorio farlo in questo modo, ma i metadati in un modo o nell'altro devono essere disponibili perché il pacchetto \pack{pdfx} li possa usare. Facendolo in questo modo si è sicuri che \pack{pdfx} li trova nel file giusto e nella cartella giusta. L'utente in ogni caso è tenuto ad usare le chiavi corrette e la sintassi corretta. -L'altro punto importante è non solo caricare il pacchetto \pack{pdfx}, ma è necessario caricarlo nell'ordine indicato, cioè, se lo si usa, subito dopo il pacchetto \pack{imakeidx} e l'ambiente che contiene i metadati. +L'altro punto importante è non solo caricare il pacchetto \pack{pdfx}, ma è necessario caricarlo nell'ordine indicato, cioè, se lo si usa, subito dopo il pacchetto \pack{imakeidx} e l'ambiente che contiene i metadati.\enlargethispage*{2\baselineskip} -Ho collaudato questo preambolo compilando sia con \prog{pdflatex} sia con \prog{lualatex}. Volendo, avrei potuto seguire le raccomandazioni che scrivo nel paragrafo~\ref{sec:XePDFA} ma non l'ho fatto e, visto che ottengo lo stesso risultato, anzi un risultato migliore, con \prog{lualatex}, mi è parso un collaudo superfluo. Con questo non voglio dire che \prog{xelatex} sia diventato inutile; esso, come \prog{pdflatex}, ha un file di formato che contiene tutte le impostazioni per tutte le lingue che il sistema \TeX può gestire, mentre \prog{lualatex} in questo momento (2018) di ogni lingua può gestire una sola impostazione; per esempio, il greco ha tre varianti e il file di formato di \prog{xelatex} le potrebbe gestire tutte e tre come ci riesce \prog{pdflatex}; lo stesso vale per il latino e per diverse altre lingue; \prog{lualatex} al momento può gestire una sola variante di ciascuna lingua. Perciò in questo momento\footnote{Sono al corrente che per il greco il gruppo di lavoro sta lavorando per superare questo piccolo scoglio; è possibile che quando si legge questa documentazione lo scoglio sia superato e il file \file{gloss-greek.ldf} sia già in grado di gestire le tre varianti del greco come gli altri due programmi.} \prog{xelatex} potrebbe essere preferibile a \prog{lualatex} per le tesi di carattere linguistico, filologico, o umanistico in generale\footnote{Recentemente è apparso il nuovo pacchetto \pack{luahyphenrules} che dovrebbe permettere di accettare le varianti anche compilando con \LuaLaTeX, ma come ho specificato, al momento di scrivere questa documentazione questa funzionalità non è ancora completamente operativa e non è disponibile per la generalità degli utenti.}. +Questo preambolo è stato collaudato compilando sia con \prog{pdflatex} sia con \prog{lualatex}. Volendo, si sarebbero potute seguire le raccomandazioni scritte nel paragrafo~\ref{sec:XePDFA} ma non non è stato fatto e, visto che si ottiene lo stesso risultato, anzi un risultato migliore, con \prog{lualatex}, è parso un collaudo superfluo. Con questo non si vuol dire che \prog{xelatex} sia diventato inutile; esso, come \prog{pdflatex}, ha un file di formato che contiene tutte le impostazioni per tutte le lingue che il sistema \TeX può gestire, mentre \prog{lualatex} (almeno fino al 2018) di ogni lingua può gestire una sola impostazione; per esempio, il greco ha tre varianti e il file di formato di \prog{xelatex} le potrebbe gestire tutte e tre come ci riesce \prog{pdflatex}; lo stesso vale per il latino e per diverse altre lingue; \prog{lualatex} poteva gestire una sola variante di ciascuna lingua. Perciò \prog{xelatex} potrebbe essere preferibile a \prog{lualatex} per le tesi di carattere linguistico, filologico, o umanistico in generale. %\goodpagebreak @@ -2833,27 +2854,27 @@ Ho collaudato questo preambolo compilando sia con \prog{pdflatex} sia con \prog Usando \prog{pdflatex} è necessario usare il pacchetto specifico \pack{pdfx} richiamandolo con l'opzione giusta; precisamente il preambolo deve contenere la richiesta: \begin{verbatim} -\usepackage[a-1b]{pdfx} +\usepackage[a-1b]{pdfx}% oppure [a-2b] \end{verbatim} come è stato mostrato precedentemente nelle pagine~\pageref{pag:preambolo-pdfa} e seguenti; quando si usa \prog{pdflatex} non è molto importante l'ordine con cui si caricano i vari pacchetti, ma la documentazione di \pack{pdfx} raccomanda di caricarlo il più presto possibile; tuttavia, poiché sarebbe meglio caricarlo dopo aver specificato tutti i pacchetti aggiuntivi che potrebbero influire sui collegamenti ipertestuali, cioè i pacchetti che modificano i comandi di sezionamento, la composizione delle didascalie e simili, \pack{pdfx} carica già \pack{hyperref} per configurarne i collegamenti ipertestuali in modo conforme alle specifiche della norma PDF/A. Questo implica, però, che il pacchetto \pack{pdfx} venga caricato prima che nel preambolo venga caricato \pack{hyperref}; anzi, avendo caricato \pack{pdfx} non è necessario caricare \pack{hyperref}, ma basta configurarlo con \cs{hypersetup} per le esigenze specifiche del documento. Non è vietato caricarlo di nuovo, purché nel preambolo, dopo aver caricato \pack{pdfx}, \pack{hyperref} sia caricato senza opzioni proprio per evitare l'errore “option clash”. Questa possibilità di tenere separato il caricamento di \pack{hyperref} dalla sua configurazione mediante \cs{hypersetup}, è comoda perché consente di aggiungere la chiamata di \pack{pdfx} in un secondo tempo, quando si vuole aggiungere la compatibilità con le norme PDF/A. Ma in questo documento si è preferito eseguire direttamente il test per sapere se il pacchetto sia o non sia stato precedentemente caricato, così da non correre nessun rischio di “option clash”. -Il pacchetto \pack{pdfx} è già presente con ogni installazione completa e aggiornata del sistema \TeX; se si disponesse di una installazione di base o, comunque, parziale e il pacchetto non fosse già installato, bisogna provvedere con i metodi specifici di ciascuna installazione. Si consiglia la lettura della documentazione di \pack{pdfx}, perché consente una certa dose di personalizzazione. +Il pacchetto \pack{pdfx} è già presente in ogni installazione completa e aggiornata del sistema \TeX; se si disponesse di una installazione di base o, comunque, parziale e il pacchetto non fosse già installato, bisogna provvedere con i metodi specifici di ciascuna installazione. Si consiglia la lettura della documentazione di \pack{pdfx}, perché consente una certa dose di personalizzazione. Il pacchetto \pack{pdfx} con l'opzione \opz{a-1b} provvede a quasi tutto il necessario, per esempio, a definire un profilo di colore, ma non provvede ai metadati specifici di ogni particolare documento, che invece descrivo qui di seguito. -I {metadati} di carattere generale sono inseriti nel file di uscita dall'azione diretta del file \file{pdfx.sty}; ma per i {metadati} specifici del documento che si sta componendo è necessario predisporre nella cartella dove risiede il file principale della tesi (quello sul quale opera il programma di composizione) un file contenente questi {metadati}. Il metodo migliore per farlo è mostrato nel codice della pagina~\pageref{pag:preambolo-pdfa}: si tratta di inserire i metadati all'interno dell'ambiente \amb{filecontents*} subito dopo la dichiarazione della classe. +I {metadati} di carattere generale sono inseriti nel file di uscita dall'azione diretta del file \file{pdfx.sty}; ma per i {metadati} specifici del documento che si sta componendo è necessario predisporre nella cartella dove risiede il file principale della tesi (quello sul quale opera il programma di composizione) un file contenente questi {metadati}. Il metodo migliore per farlo è mostrato nel codice della pagina~\pageref{pag:preambolo-pdfa}: si tratta di inserire i metadati all'interno dell'ambiente \amb{pdfxmetadata} subito dopo la dichiarazione della classe. -Ci si ricordi che il pacchetto \pack{toptesi} controlla solo se si sta usando \prog{pdflatex} e assume che, se non si sta componendo con \prog{pdflatex}, allora si sta usando \prog{xelatex} oppure \prog{lualatex}. In particolare si ottiene un errore se si compila con \prog{latex} (il programma è ancora esistente ma io lo considero obsoleto) con il quale si produce un file di uscita in formato DVI, ormai quasi estinto. Si noti che, in effetti, sebbene il programma \prog{latex} esista ancora, il motore di composizione di \prog{latex} e di \prog{pdflatex} è lo stesso, ma ne differiscono le impostazioni; il test \cs{ifPDFTeX} che usa \TOPtesi per conoscere se si sta usando \prog{pdftex} per produrre un file in formato PDF piuttosto che in formato DVI, non è detto che riesca a distinguere questi due casi. Non ho mai verificato, perché usando un Mac, il mio formato di default è sempre PDF; per ottenere il formato DVI devo dare comandi specifici mediante il terminale, cosa che evidentemente non faccio mai perché, oltretutto, non dispongo di un visualizzatore per il formato DVI (sono capace di aggirare questi ostacoli grazie al Mac stesso, ma non lo faccio mai, perché il formato DVI non è adatto a quanto solitamente scrivo). +Ci si ricordi che il pacchetto \pack{toptesi} controlla solo se si sta usando \prog{pdflatex} e assume che, se non si sta componendo con \prog{pdflatex}, allora si sta usando \prog{xelatex} oppure \prog{lualatex}. In particolare si ottiene un errore se si compila con \prog{latex} (il programma è ancora esistente ma io lo considero obsoleto) con il quale si produce un file di uscita in formato DVI, ormai quasi estinto. Si noti che, in effetti, sebbene il programma \prog{latex} esista ancora, il motore di composizione di \prog{latex} e di \prog{pdflatex} è lo stesso, ma ne differiscono le impostazioni; il test \cs{ifPDFTeX} che usa \TOPtesi per conoscere se si sta usando \prog{pdftex} per produrre un file in formato PDF piuttosto che in formato DVI, non è detto che riesca a distinguere questi due casi. Non ho mai verificato, perché usando un Mac, il mio formato di default è sempre PDF; per ottenere il formato DVI devo operare a mano con comandi specifici mediante il terminale, cosa che evidentemente non faccio mai perché, oltretutto, non dispongo di un visualizzatore per il formato DVI (sono capace di aggirare questi ostacoli grazie al Mac stesso, ma non lo faccio mai, perché il formato DVI non è adatto a quanto solitamente scrivo). Nei rarissimi casi in cui esistono validi motivi per non usare \prog{pdflatex}, allora bisogna usare il semplice \prog{latex}, e poi convertire il file DVI ottenuto in un file PDF; per la conversione in file PDF/A, bisogna poi procedere come indicato sotto nel paragrafo~\ref{sec:XePDFA}. È meglio evitare di usare quei pacchetti che richiedono comandi PostScript, come per esempio \pack{PSTricks} o \pack{XYpic}, ma è preferibile usare i pacchetti di grafica, come \pack{pgf} con il suo modulo \pack{tikz}, che consentono di fare quasi tutto quello che si può fare con gli altri pacchetti che richiedono il linguaggio PostScript. -All'occorrenza, però, esistono pacchetti da usare con \prog{pdflatex} che permettono (almeno) di usare il potentissimo PSTricks anche con \prog{pdflatex}; questi pacchetti, lavorando in background senza che l'utente debba metterci mano, estraggono il codice di PSTricks dal file sorgente, lo salvano in un nuovo file \file{.tex} di servizio che compilano con \prog{latex} e ne trasformano il file di uscita in formato PDF per poi importarlo già scontornato nel file che interessa all'utente. Se fra una compilazione e l'altra non sono state eseguite modifiche al codice PSTricks, questa operazione in background viene tranquillamente saltata, quindi non si nota nemmeno nessun rallentamento nell'elaborazione del documento. Vale comunque il consiglio di non usare questi moduli che richiedono l'uso del linguaggio PostScript, perché i moduli che lavorano direttamente con il linguaggio PDF lavorano altrettanto bene nella stragrande maggioranza dei casi. +All'occorrenza, però, esistono pacchetti da usare con \prog{pdflatex} che permettono (almeno) di usare il potentissimo PSTricks anche con \prog{pdflatex}; questi pacchetti, lavoran"do in background senza che l'utente debba metterci mano, estraggono il codice di PSTricks dal file sorgente, lo salvano in un nuovo file \file{.tex} di servizio che compilano con \prog{latex} e ne trasformano il file di uscita in formato PDF per poi importarlo già scontornato nel file che interessa all'utente. Se fra una compilazione e l'altra non sono state eseguite modifiche al codice PSTricks, questa operazione in background viene tranquillamente saltata, quindi non si nota nemmeno nessun rallentamento nell'elaborazione del docu"mento. Vale comunque il consiglio di non usare questi moduli che richiedono l'uso del linguaggio PostScript, perché i moduli che lavorano direttamente con il linguaggio PDF lavorano altrettanto bene nella stragrande maggioranza dei casi. -Bisogna ricordare che produrre un file PDF/A non è semplice, ma se si usa \prog{pdflatex} con i font di default con codifica \opz{T1} (se si usa \prog{lualatex} con i font OpenType si veda sotto), se si incorporano solo figure PNG (senza trasparenze) e JPEG con profilo di colore RGB (red, green, blue), se ogni file PDF da incorporare contiene al suo interno anche i font che eventualmente sono necessari per comporre il suo testo, se sono presenti tutti i metadati necessari, non si dovrebbero incontrare problemi di certificazione della conformità PDF/A del file della tesi. +Bisogna ricordare che produrre un file PDF/A non è semplice, ma se si usa \prog{pdflatex} con i font di default con codifica \opz{T1} (se si usa \prog{lualatex} con i font OpenType si veda sotto), se si incorporano solo figure PNG (senza trasparenze) e JPG con profilo di colore RGB (red, green, blue), se ogni file PDF da incorporare contiene al suo interno anche i font che eventualmente sono necessari per comporre il suo testo, se sono presenti tutti i metadati necessari, non si dovrebbero incontrare problemi di certificazione della conformità PDF/A del file della tesi. Più avanti c'è un paragrafo dedicato al caso che un file così prodotto non risulti conforme alla norma PDF/A. @@ -2868,13 +2889,13 @@ Per il resto valgono le stesse indicazioni scritte per l'uso del programma \prog Se i metadati devono essere usati da programmi di biblioteconomia per la ricerca dei contenuti, delle parole chiave, e simili, suggerirei di scrivere i metadati in inglese sia perché probabilmente la ricerca delle informazioni biblioteconomiche risulta facilitata anche all'estero, in quanto si evitano i caratteri accentati; consiglio l'inglese almeno in tutti i campi in cui l'italiano non è essenziale, come lo è invece nel titolo (se è in italiano) e nei nomi propri italiani. -Come si legge nella parte di preambolo che appare nella pagina~\pageref{pag:preambolo-pdfa}, questo stesso file è stato composto con \prog{lualatex} e la verifica della conformità ha dato esito positivo. +Come si legge nella parte di preambolo che appare nella pagina~\pageref{pag:preambolo-pdfa}, questo stesso file è stato composto con \prog{lualatex}; poi la verifica della conformità ha dato esito positivo. \subsection{\texorpdfstring{\prog*}{}{xelatex} e il formato PDF/A}\label{sec:XePDFA} Con \prog{xelatex} le cose sono un po' più complesse che con \prog{lualatex}, ed è per questo motivo che consiglio di usare direttamente \prog{lualatex}. -Il motivo è dovuto al fatto che \prog{xelatex} non produce direttamente la sua uscita nel formato PDF, ma in un formato DVI esteso che viene trasformato in PDF dal programma \prog{xdvipdfmx} che, di per sé, non sa nulla in merito al fatto che il file da trasformare contenga o non contenga dei metadati. +Il motivo è dovuto al fatto che \prog{xelatex} non produce direttamente la sua uscita nel formato PDF, ma in una variante del formato DVI esteso che viene trasformato in PDF dal programma \prog{xdvipdfmx} che, di per sé, non sa nulla in merito al fatto che il file da trasformare contenga o non contenga dei metadati. Per questo motivo si deve compilare “a mano”, dando il comando di compilazione dal terminale nel modo seguente: \begin{flushleft}\ttfamily @@ -2882,15 +2903,15 @@ xelatex -shell-escape -output-driver="xdvipdfmx -z 0" \meta{filename} \end{flushleft} Come si vede \prog{xelatex} deve lavorare con l'opzione \opz{-shell-escape} che consente di lanciare un programma esterno; in questo caso l'uscita di \prog{xelatex} viene inviata al driver di uscita \prog{xdvipdfmx} (e fin qui non ci sono sorprese rispetto a quello che \prog{xelatex} fa di solito), ma la differenza consiste nell'opzione passata a \prog{xdvipdfmx}: \opz{-z 0}. Questa opzione dice al programma di non comprimere il suo file di uscita; questo fatto produce due effetti: quello “buono” è che non comprime i metadati; quello “cattivo” è che il file di uscita è enormemente più grande, fino a circa 10 volte più grande di quanto sarebbe se fosse compresso. -Per il resto, avendo predisposto il main file della tesi come se si dovesse lavorare con \prog{lualatex} e avendo osservato le stesse cautele per i font, i colori, eccetera, il file ottenuto, nonostante le sue dimensioni, può venire sottoposto a verifica attraverso il modulo Preflight di Adobe Acrobat Pro, come bisogna fare anche quando il file PDF fosse ottenuto con \prog{pdflatex} o \prog{lualatex}; ma il buono, questa volta, è che, se il file ottenuto passa la verifica di conformità, Adobe Acrobat è anche in grado di comprimere il file, lasciando inalterati (non compressi) i metadati. +Per il resto, avendo predisposto il main file della tesi come se si dovesse lavorare con \prog{lualatex} e avendo osservato le stesse cautele per i font, i colori, eccetera, il file ottenuto, nonostante le sue dimensioni, può venire sottoposto a verifica attraverso il modulo Preflight di Adobe Acrobat Pro, come bisogna fare anche quando il file PDF fosse ottenuto con \prog{pdflatex} o \prog{lualatex}; ma il buono, questa volta, è che, se il file ottenuto passa la verifica di conformità, Adobe Acrobat Pro è anche in grado di comprimere il file, lasciando inalterati (non compressi) i metadati. -Vista questa trafila di post"processing, si capisce anche perché sconsiglio di comporre la tesi con \prog{xelatex} ma consiglio di usare direttamente \prog{lualatex}. +Vista questa trafila di post"processing, si capisce anche perché si sconsiglia di comporre la tesi con \prog{xelatex} ma consiglio di usare direttamente \prog{lualatex}. \subsection[Uso di pdfpages o ghostscript]{Uso di \texorpdfstring{\pack*}{}{pdfpages} o di \texorpdfstring{\prog*}{}{ghostscript}} Esistono altri metodi per ottenere la produzione di file conformi alla norma PDF/A. Uno è quello che consiste nel produrre un secondo file importando le pagine del primo mediante il pacchetto \pack{pdfpages}; un altro è quello di ottenere la trasformazione mediante il programma \prog{ghostscript}. Nel seguito si illustrerà il primo metodo; anche se nel seguito continuerò ad esemplificare parlando della tesi, ritengo che questi due metodi siano più utili per i lettori proprio allo scopo di controllare singoli file esterni da importare nella tesi. -Infatti è meglio creare un piccolo file presumibilmente PDF/A compatibile e verificarne la compatibilità: se è compatibile, non ci sono problemi ad importarlo nella tesi; se è incompatibile prima si esaminano le cause dell'incompatibilità, poi lo si può correggere per renderlo compatibile, oppure si possono prendere decisioni su cosa farne per importarlo validamente nella tesi. +Infatti è meglio creare un piccolo file presumibilmente PDF/A compatibile e verificarne la compatibilità: se è compatibile, non ci sono problemi ad importarlo nella tesi; se è incompatibile, prima si esaminano le cause dell'incompatibilità, poi lo si può correggere per renderlo compatibile, oppure si possono prendere decisioni su cosa farne per impor"tar"lo validamente nella tesi. Dopo aver ottenuto un file PDF della tesi, se ci si ritrova con un file che non è ancora conforme allo standard PDF/A, si può provvedere con altri programmi. Qui indicherò un metodo che può avere vantaggi o svantaggi; nessuno è perfetto, ma funziona. Accennerò appena ad un altro metodo solo per segnalare che il primo non è l'unico; tuttavia ho usato questo secondo metodo per anni prima di “scoprire” come fare con il primo (l'uovo di Colombo), ma siccome il secondo è decisamente più complesso, ritengo che il primo sia da preferire. @@ -2899,50 +2920,45 @@ Dopo aver ottenuto un file PDF della tesi, se ci si ritrova con un file che non \addcontentsline{toc}{subsection}{\numberline{\relax}Conformità con \TOPtesi} I file di esempio che fan parte del bundle di \TOPtesi sono tutti conformi allo standard ISO per l'archiviabilità, qualunque sia il programma con cui sono stati composti. -Come è stato già osservato, anche con \XeLaTeX sarebbe possibile ottenere file archiviabili, ma la laboriosità e delicatezza del postprocessing, incluso il fatto che è necessario disporre del programma commerciale Adobe Acrobat Pro~XI, o successivo, rende sconsigliabile l'uso di \XeLaTeX\ per comporre qualunque tesi da archiviare. +Come è stato già osservato, anche con \XeLaTeX sarebbe possibile ottenere file archivia"bili, ma la laboriosità e delicatezza del postprocessing, incluso il fatto che è necessario disporre del programma commerciale Adobe Acrobat Pro~XI, o successivo, rende sconsi"glia"bile l'uso di \XeLaTeX\ per comporre qualunque tesi da archiviare. \subsubsection{Conformity when using \TOPtesi with option \texorpdfstring{\chiave{tipotesi}}{}{scudo}} \addcontentsline{toc}{subsection}{\numberline{\relax}Conformity when using \TOPtesi for ScuDo doctoral theses} -The example file \file{toptesi-scudo-example.tex} included in this \TOPtesi bundle shows exactly how to produce an ISO PDF/A-1b conforming output PDF file. - -Of course the procedure is correct, but the difficulty to produce a PDF/A conforming output depends on correct metadata, on the correct color profile, on the used fonts, on the quality and contents of the imported figures. The rules to follow are described both in the previous sections in Italian, and in the English documentation of the the \TOPtesi bundle: \file{toptesi.pdf}. - -\textcolor{red}{Please, if you get an error implying \texttt{sRGB} color profile, check the following. This error is temporary and does not depend on \TOPtesi. By the end of 2018 version 1.6.1 of \pack{pdfx} has been released and the error flag is not raised anymore, unless you have a \TeXLive installation that is not up to date. You have two different solutions to this problem; either you update \TeXLive, or you load and install at least the new version of \pack{pdfx}; such new version can take care also of the glitch that was present in the previous version and provides directly the workarounds that are necessary to load a valid color profile.} - +The example file \file{toptesi-scudo-example.tex} included in this \TOPtesi bundle shows exactly how to produce an ISO PDF/A-1b or PDF/A-2b conforming output PDF~file. +Of course the procedure is correct, but the difficulty to produce a PDF/A conforming output depends on correct metadata, on the color profile, on the used fonts, on the quality and contents of the imported figures. The rules to follow are described both in the previous sections in Italian, and in the English documentation of the the \TOPtesi bundle: \file{toptesi.pdf}. \subsubsection{Uso di \texorpdfstring{\pack*}{}{pdfpages}} -Il metodo, con il quale ho avuto risultati positivi, ricorre al pacchetto \pack{pdfpages}, ma ha il difetto di perdere gli eventuali collegamenti ipertestuali interni. Considero questo un male minore e un piccolo prezzo da pagare per disporre di un metodo che riesce quasi sempre a produrre un file PDF/A compatibile, quando si parte da un file PDF ottenuto com mezzi diversi dall'uso del sistema \TeX e che non risulta compatibile. +Il metodo, con il quale si sono avuti risultati positivi, ricorre al pacchetto \pack{pdfpages}, ma ha il difetto di perdere gli eventuali collegamenti ipertestuali interni. Questo è un male minore e un piccolo prezzo da pagare per disporre di un metodo che riesce quasi sempre a produrre un file PDF/A compatibile, quando si parte da un file PDF ottenuto com mezzi diversi dall'uso del sistema \TeX e che non risulta compatibile. -Supponiamo quindi di disporre di un file PDF composto secondo le raccomandazioni indicate nei paragrafi precedenti. Tanto per mettere i puntini sulle ‘i’, il lettore attento ha notato che per i loghi \GuIT\ e \MP\ ho creato le definizioni per produrre questi loghi importando e scalando due file PDF opportunamente scontornati e appositamente predisposti (con \prog{pdflatex}), conformi alla norma PDF/A. Li ho creati con i loghi molto grandi, ma pur sempre vettoriali, in modo che possano venire ingranditi o rimpiccioliti a piacere. Le due macro \cs{GuIT} e \cs{MP}, infatti, scalano quelle due immagini PDF in modo che siano grandi come il testo circostante e abbiano la linea di base esattamente allineata con quella del testo. In quanto file PDF/A, essi contengono tutte le informazioni che devono contenere, metadati e font esattamente come la norma richiede; presi a sé, essi passano le verifiche eseguite con Adobe Acrobat Pro~XI\footnote{Avevo seguito questa procedura nella versione precedente di \TOPtesi. Ora, avendo aggiornato tutta l'installazione alla versione di \TeXLive 2019, ho rifatto tutto con il software aggiornato e non è stato più necessario ricorrere a quegli espedienti.}. +Supponiamo quindi di disporre di un file PDF composto secondo le raccomandazioni indicate nei paragrafi precedenti. Tanto per mettere i puntini sulle ‘i’, il lettore attento ha notato che per i loghi \GuIT\ e \MP\ si sono create le definizioni per produrre questi loghi importando e scalando due file PDF opportunamente scontornati e appositamente predisposti (con \prog{pdflatex}), conformi alla norma PDF/A. Sono stati creati con i loghi molto grandi e vettoriali, in modo che possano venire ingranditi o rimpiccioliti a piacere. Le due macro \cs{GuIT} e \cs{MP}, infatti, scalano quelle due immagini PDF in modo che siano grandi come il testo circostante e abbiano la linea di base esattamente allineata con quella del testo. In quanto file PDF/A, essi contengono tutte le informazioni che devono contenere, metadati e font esattamente come la norma richiede; presi a sé, essi passano le verifiche eseguite con Adobe Acrobat Pro~XI\footnote{Si era seguita questa procedura nella versione precedente di \TOPtesi. Ora, avendo aggiornato tutta l'installazione alla versione di \TeXLive 2019, si è rifatto tutto con il software aggiornato e non è stato più necessario ricorrere a quegli espedienti.}. -{\tolerance=3000 Si supponga di disporre di questo stesso documento composto ricorrendo a \prog{latex} e di averlo trasformato mediante \prog{dvips} e \prog{pstopdf}, oppure mediante \prog{dvipdfm}, nel file \file{toptesi-it.pdf}. -Si prepara ora un altro semplicissimo file che viene chiamato, per esempio, \file{toptesi-it\discretionary{-}{}{-}pages.tex} con il seguente contenuto: +{\tolerance=3000 Si supponga di disporre di questo un documento composto ricorrendo a \prog{latex} e di averlo trasformato mediante \prog{dvips} e \prog{pstopdf}, oppure mediante \prog{dvipdfm}; il nome del file sia \file{filelatex.pdf}. Si prepara ora un altro semplicissimo file che viene chiamato, per esempio, \file{filelatex-pages.tex} con il seguente contenuto: \begin{verbatim} % !TEX encoding = UTF-8 Unicode % !TEX TS-program = pdflatex \documentclass[a4paper]{report} \usepackage{pdfpages} -\usepackage[a-1b]{pdfx} +\usepackage[a-1b]{pdfx}% oppure [a-1b] \nofiles \begin{document}\pagestyle{empty} -\includepdf[pages=-]{toptesi-it.pdf} +\includepdf[pages=-]{filelatex.pdf} \end{document} \end{verbatim} -e lo si affianca con il corrispondente file \file{toptesi-it-pages.xmpdata} il cui contenuto è identico al file \file{toptesi-it.xmpdata} che si sarebbe preparato per comporre l'analogo file se lo si fosse potuto comporre con \prog{pdflatex}.\par} +e lo si affianca con il corrispondente file \file{filelatex-pages.xmpdata} il cui contenuto è identico al file \file{filelatex.xmpdata} che si sarebbe preparato per comporre l'analogo file se lo si fosse potuto comporre con \prog{pdflatex}.\par} -Il piccolo file precedente è in grado di produrre un file PDF/A perché il suo preambolo è correttamente predisposto per questo scopo; carica il pacchetto \pack{pdfpages} che serve per importare tutte le pagine (o una loro selezione) di un file PDF comunque composto, dentro il file che si ottiene elaborandolo con \textcolor{red}{\prog{pdflatex}}. Se il file \file{toptesi-it.pdf} non contiene file importati con caratteristiche incompatibili, il file PDF ottenuto risulta conforme alla norma PDF/A, ma se il file di partenza conteneva collegamenti ipertestuali, il file finale ottenuto ne è privo. +Il piccolo file precedente è in grado di produrre un file PDF/A perché il suo preambolo è correttamente predisposto per questo scopo; carica il pacchetto \pack{pdfpages} che serve per importare tutte le pagine (o una loro selezione) di un file PDF comunque composto, dentro il file che si ottiene elaborandolo con \textcolor{red}{\prog{pdflatex}}. Se il file \file{filelatex.pdf} non contiene file importati con caratteristiche incompatibili, il file PDF ottenuto risulta conforme alla norma PDF/A, ma se il file di partenza conteneva collegamenti ipertestuali, il file finale ottenuto ne è privo. -Ho usato come esempio il nome di questo stesso file di documentazione; il lettore capisce che si tratta solo di un esempio, perché questo documento si compila perfettamente in formato PDF/A senza ricorrere a questo procedimento. Ma, se per esempio, si fosse composta la tesi con un word processor e la si fosse esportata in formato PDF, questo procedimento potrebbe crearne la versione PDF/A compatibile senza sforzo e con la sola spesa di perdere i collegamenti ipertestuali interni. +Ho usato come esempio un nome di file di fantasia che ovviamente deve essere sostituito col vero nome del file da elaborare. Ma, se per esempio, si fosse composta la tesi con un word processor e la si fosse esportata in formato PDF, questo procedimento potrebbe crearne la versione PDF/A compatibile senza sforzo e con la sola spesa di perdere i collegamenti ipertestuali interni. Più comodamente il procedimento descritto in questo paragrafo può servire per aggiungere quanto manca, per esempio, ad una figura PDF per verificarne la conformità oppure per scoprirne le cause di non conformità, eventualmente per modificarla in modo che sia compatibile tanto da poterla includere nella tesi vera e propria. -Per esperienza diretta, come ho già detto, quando devo convertire un file PDF comunque ottenuto io ora preferisco seguire questo procedimento che ricorre al pacchetto \pack{pdfpages} e lo consiglio vivamente rispetto ad altri metodi. +Per esperienza diretta, come ho già detto, quando devo convertire un qualunque file PDF, io ora preferisco seguire questo procedimento che ricorre al pacchetto \pack{pdfpages}; lo consiglio vivamente rispetto ad altri metodi. \subsubsection{Uso di \texorpdfstring{\prog*}{}{ghostscript}} -Si potrebbe anche usare \prog{ghostscript} per trasformare un file PDF in un altro conforme alla norma PDF/A. L'operazione non è semplice ed è, secondo me, mal descritta nella documentazione di \prog{ghostscript}. Se ci si sente a proprio agio con il linguaggio PostScript e si padroneggia bene il suddetto programma, si può provare. Tuttavia, pur essendomi servito di questo procedimento per diversi anni prima di poter disporre del metodo descritto nel paragrafo precedente, non lo consiglio e rimando il lettore alla documentazione di \prog{ghostscript}. +Si potrebbe anche usare \prog{ghostscript} per trasformare un file PDF in un altro conforme alla norma PDF/A. L'operazione non è semplice ed è, secondo me, mal descritta nella documentazione di \prog{ghostscript}. Se ci si sente a proprio agio con il linguaggio PostScript e si padroneggia bene il suddetto programma, si può provare. Tuttavia, pur essendomi servito di questo procedimento per diversi anni prima di poter disporre del metodo descritto nel paragrafo precedente, non lo consiglio e rimando il lettore interessato alla documentazione di \prog{ghostscript}. \subsubsection[Non usare \texorpdfstring{\pack}{}{pax} e \texorpdfstring{\pack}{}{pdfpages} assieme]{Non usare i due pacchetti \pack{pax} e \pack{pdfpages} assieme allo scopo di conservare i collegamenti ipertestuali} @@ -2959,13 +2975,13 @@ Per verificare in modo serio la conformità ci sono alcune strade che non si esc \begin{enumerate}[noitemsep] \item Ci si procura la versione del programma \prog{veraPDF}; questo software nel 2016 era ancora in fase di sviluppo e per questo era considerato sperimentale; dal 2017 il programma non è più sperimentale ma, senza escludere possibili aggiornamenti, ora è stabile. L'azienda che se ne occupa è sostenuta dalla Unione Europea proprio affinché la versione definitiva sia aperta e libera. Funziona benissimo e i suoi verdetti, secondo l'esperienza già fatta, sono praticamente sempre concordi con quelli del modulo Preflight di Adobe Acrobat Pro~XI. Questo programma è disponibile per le tre piattaforme Windows, Mac, Linux. % -\item Si cerca in dipartimento una stazione di lavoro dove un computer sia dotato del programma commerciale {Adobe Acrobat Pro XI}; spesso i dipartimenti dispongono di licenze multiple, oppure è possibile che un ricercatore dia una mano lasciando usare un suo calcolatore sul quale è montato il software indicato. Si procede poi come indicato tra poco. +\item Si cerca in dipartimento una stazione di lavoro dove un computer sia dotato del programma commerciale {Adobe Acrobat Pro XI}; spesso i dipartimenti dispongono di licenze multiple, oppure è possibile che un ricercatore dia una mano lasciando usare un suo calcolatore sul quale sia montato il software indicato. Si procede poi come indicato tra poco. %. -\item La Adobe, come molte altre imprese produttrici di software, dispone di un programma \emph{Education} che consente agli studenti e ai docenti di università e scuole secondarie superiori di acquistare i loro software a prezzi molto, molto vantaggiosi. Io come privato cittadino non mi sarei mai comprato l'Adobe Acrobat Pro~XI se non avessi avuto la possibilità di avvantaggiarmi di questa offerta vantaggiosissima ma, come professore, ho potuto farlo senza bisogno di ricorrere a nessuno per usarne una copia acquistata regolarmente. +\item La Adobe, come molte altre imprese produttrici di software, dispone di un program"ma \emph{Education} che consente agli studenti e ai docenti di università e scuole secondarie superiori di acquistare i loro software a prezzi molto, molto vantaggiosi. Io come privato cittadino non mi sarei mai comprato l'Adobe Acrobat Pro~XI se non avessi avuto la possibilità di sfruttare questa offerta vantaggiosissima ma, come professore, ho potuto farlo senza bisogno di ricorrere a nessuno per usarne una copia acquistata regolarmente. \end{enumerate} \subsection{Verifica con veraPDF} -Nell'installare \prog{veraPDF} si sarà avuto attenzione di creare anche un link simbolico verso la componente \prog{verapdf-gui} che è l'applicazione da usare; il link simbolico si troverà in una cartella che sia sul percorso di ricerca dei programmi da eseguire secondo le impostazioni della propria macchina; comunque tutti i sistemi operativi consentono di impostare il percorso di ricerca attraverso i loro propri comandi o attraverso interfacce grafiche. +Nell'installare \prog{veraPDF} si sarà avuta attenzione di creare anche un link simbolico verso la componente \prog{verapdf-gui} che è l'applicazione da usare; il link simbolico si troverà in una cartella che sia sul percorso di ricerca dei programmi da eseguire secondo le impostazioni della propria macchina; comunque tutti i sistemi operativi consentono di impostare il percorso di ricerca attraverso i loro propri comandi o attraverso interfacce grafiche. Fatto questo, si apre un terminale e si dà il comando \texttt{verapdf-gui}; si apre una finestra come quella che appare nella figura~\ref{fig:veraPDFinitial}. @@ -2999,7 +3015,7 @@ Disponendo di Adobe Acrobat Pro XI, si apre il file PDF, si va nella voce di men Se invece l'analisi indicasse errori, bisogna provvedere a correggerli; è vero che nella stessa finestrina c'è anche il bottone \textsf{Analyse and fix}, ma l'operazione di “aggiustamento” di solito riesce a correggere errori molto veniali, quindi con i programmi di composizione del sistema \TeX (col quale non si compiono errori veniali) questo aggiustamento è raro che abbia successo. Tuttavia nella versione di Acrobat Pro~XI c'è la possibilità di correggere alcuni errori specifici; per esempio se viene lamentata la presenza di trasparenze, esiste la possibilità di cliccare l'azione \textsf{Flatten} e le trasparenze svaniscono. Dopo la versione XI, la Adobe ha creato la versione che lavora in rete con un modico abbonamento mensile; conviene se si usa Acrobat molto spesso e si ha il vantaggio di usare sempre la versione più aggiornata. Con questa versione ad abbonamento le possibilità di correzione sono maggiori e quasi sempre permettono di evitare di servirsi di \prog{Inkscape}. -Ma non bisogna dimenticare che questo genere di piccoli errori spesso si presentano quando si importano file esterni; quindi tanto vale, invece, selezionare nella finestra di dialogo di Preflight la funzione Fixup; che parte e richiede con che nome si vuole salvare il file “difettoso”; si può tranquillamente specificare di sovrascrivere il file da sistemare; fra le altre operazioni che Fixup può fare c'è anche quella di modificare il profilo di colore dei file che ne hanno uno errato, e questa, fra le altre è una operazione da fare piuttosto spesso quando si importano file esterni. L'ho dovuto fare anche con questo file di documentazione a causa di alcune figure create da me stesso per le quali non avevo controllato che avessero il profilo di colore corretto, cioè~RGB. +Ma non bisogna dimenticare che questo genere di piccoli errori spesso si presentano quando si importano file esterni; quindi tanto vale, invece, selezionare nella finestra di dialogo di Preflight la funzione Fixup, che parte e richiede con che nome si vuole salvare il file “difettoso”; si può tranquillamente specificare di sovrascrivere il file da sistemare; fra le altre operazioni che Fixup può fare c'è anche quella di modificare il profilo di colore dei file che ne hanno uno errato, e questa, fra le altre è una operazione da fare piuttosto spesso quando si importano file esterni. L'ho dovuto fare anche con questo file di documentazione a causa di alcune figure create da me stesso per le quali non avevo controllato che avessero il profilo di colore corretto, cioè~RGB. \subsection{Correzione degli errori} @@ -3007,17 +3023,17 @@ Bisogna avere pazienza e cercare di leggere con attenzione i messaggi di diagnos Gli errori che restano sono di solito dei tipi seguenti. \begin{enumerate}[noitemsep] -\item Se è stato specificato un profilo di colore CMYK (celeste, lilla, giallo, nero) si è fatto un errore nello specificare il profilo di colore oppure si è inserita un'immagine a colori che è colorata con lo schema CMYK. Nel primo caso è bene verificare di avere specificato il profilo giusto. Nel secondo caso bisogna convertire il profilo di colore mediante qualsiasi programma di fotoritocco; segnalo il programma aperto e libero GIMP (GNU Image Management Program), disponibile per le tre piattaforme più comuni e i sistemi operativi Mac, Windows e Linux. Esso è in grado di aprire immagini in “qualsiasi” formato bitmapped o vettoriale, di elaborarne il file secondo i desideri dell'utente, per poi salvarlo in qualsiasi formato bitmapped, ma non nei formati vettoriali. -% +\item Se è stato specificato un profilo di colore CMYK (celeste, lilla, giallo, nero; Cyan, Magenta, Yellow, blacK) si è fatto un errore nello specificare il profilo di colore oppure si è inserita un'immagine a colori che è colorata con lo schema CMYK. Nel primo caso è bene verificare di avere specificato il profilo giusto. Nel secondo caso bisogna convertire il profilo di colore mediante qualsiasi programma di fotoritocco; segnalo il programma aperto e libero GIMP (GNU Image Management Program), disponibile per le tre piattaforme più comuni e i sistemi operativi Mac, Windows e Linux. Esso è in grado di aprire immagini in “qualsiasi” formato bitmapped o vettoriale, di elaborarne il file secondo i desideri dell'utente, per poi salvarlo in qualsiasi formato bitmapped, ma non nei formati vettoriali. +%>>>> \item Alcuni font hanno glifi di larghezza nulla, fra questi ci sono almeno due glifi della famiglia matematica \texttt{cmsym}; \pack{toptesi} provvede già da solo a sostituire questi glifi con altri simili o con disegni, in modo da correggere l'errore; tuttavia questi glifi potrebbero essere presenti in alcuni dei file importati. % -\item Alcune figure sia raster (a cui siano state sovrapposte legende testuali con caratteri vettoriali) sia vettoriali (che contengono legende testuali) possono mancare dell'inclusione dei font; per cui quando queste immagini vengono immesse nel file PDF che si vorrebbe conforme alla norma, questa conformità viene a mancare. Se si sono prodotti personalmente tali file da includere, bisogna avere cura di far sì che tutti i glifi dei font usati nel file da includere siano essi stessi inclusi direttamente; esattamente come ho fatto con i loghi \GuIT\ e \MP\ di cui ho detto prima. Purtroppo questo è un caso molto frequente; quindi capita sovente di dover procedere alla correzione di questo genere di file. +\item Alcune figure sia raster (a cui siano state sovrapposte legende testuali con caratteri vettoriali) sia vettoriali (che contengono legende testuali) possono mancare dell'in"clu"sione dei font; per cui quando queste immagini vengono immesse nel file PDF che si vorrebbe conforme alla norma, questa conformità viene a mancare. Se si sono prodotti personalmente tali file da includere, bisogna avere cura di far sì che tutti i glifi dei font usati nel file da includere siano essi stessi inclusi direttamente; esattamente come ho fatto con i loghi \GuIT\ e \MP\ di cui ho detto prima. Purtroppo questo è un caso molto frequente; quindi capita sovente di dover procedere alla correzione di questo genere di file. Per le figure con legende testuali, basta convertire l'intera figura nel formato \file{.png} (se contiene disegni al tratto e purché non contenga trasparenze) oppure \file{.jpg} se contiene colori sfumati), e il gioco è fatto. -Ma se si vuole mantenere la natura vettoriale si potrebbe usare il programma gratuito \prog{Inkscape} che è in grado di aprire file vettoriali (PDF, EPS, PS) e di trasformarli in file con le estensioni vettoriali, avendo trasformato nel contempo i caratteri nelle loro outline, cioè nei disegni dei contorni dei glifi, riempiti dello stesso colore che avevano quei glifi nella figura originale. Spesso questa trasformazione va a buon fine. +Ma se si vuole mantenere la natura vettoriale si potrebbe usare il programma gratuito \prog{Inkscape}, che è in grado di aprire file vettoriali (PDF, EPS, PS) e di trasformarli in file con le estensioni vettoriali, avendo trasformato nel contempo i caratteri nelle loro outline, cioè nei disegni dei contorni dei glifi, riempiti dello stesso colore che avevano quei glifi nella figura originale. Spesso questa trasformazione va a buon fine. -Come esperienza personale ritengo che sia opportuno convertire ogni figura vettoriale con i glifi sostituiti dai loro contorni, solo nel formato EPS, che non gestisce le trasparenze, che sono invece gestite dal formato \file{.pdf}. In questo modo i tre programmi che ci interessano, \prog{pdflatex}, \prog{xelatex} e \prog{lualatex}, sono tutti e tre in grado di ricevere figure in formato \file{.eps}, e di incorporarlo nel file PDF in uscita. In questo modo si è sicuri di poter evitare le trasparenze, che sono vietate con lo standard PDF/A-1b. Alternativamente si riapre il file \file{.eps} sempre cn \prog{Inkscape} e lo si salva in formato \file{.pdf}; il file \file{.eps} non conteneva trasparenze, quindi nemmeno il nuovo file \file{.pdf} ne contiene. +Per esperienza personale ritengo che sia opportuno convertire ogni figura vettoriale con i glifi sostituiti dai loro contorni, solo nel formato EPS, che non gestisce le trasparenze, che sono invece gestite dal formato \file{.pdf}. In questo modo i tre programmi che ci interessano, \prog{pdflatex}, \prog{xelatex} e \prog{lualatex}, sono tutti e tre in grado di ricevere figure in formato \file{.eps}, e di incorporarlo nel file PDF in uscita. In questo modo si è sicuri di poter evitare le trasparenze, che sono vietate con lo standard PDF/A-1b. Alternativamente si riapre il file \file{.eps} sempre cn \prog{Inkscape} e lo si salva in formato \file{.pdf}; il file \file{.eps} non conteneva trasparenze, quindi nemmeno il nuovo file \file{.pdf} ne contiene. \end{enumerate} @@ -3048,26 +3064,27 @@ Le opzioni che si possono specificare per la classe \class{toptesi} sono tutte d % \item[corpo] nella forma \chiave{corpo}{\meta{corpo normale}} accetta un valore anche fratto compreso fra ampi limiti, ma si consiglia di restare nell'intervallo fra $9,5\unit{pt}$ e $13.5\unit{pt}$, se non si specifica l'unità di misura vengono assunte pari a $1\unit{pt}$, altrimenti qualunque altra unità di misura accettata dai programmi di composizione del sistema \TeX\ è valida, purché si resti preferibilmente entro l'intervallo specificato sopra. Se il \meta{corpo normale} venisse specificato con un valore superiore a $13.5\unit{pt}$ anche la gabbia di stampa viene modificata per non comporre righe troppo corte in relazione al corpo. Questo è un altro motivo che sconsiglia vivamente di specificare corpi troppo grandi per il testo normale % -\item[tipotesi] nella forma \chiave{tipotesi}{\meta{tipo della tesi}} accetta molti valori; il valore nullo \chiave{tipotesi}{} o il valore di default \chiave{tipotesi}{topfront}, fra loro equivalenti, per comporre una tesi in maniera retrocompatibile con le funzionalità del pacchetto \TOPtesi fino alla versione~5; \chiave{tipotesi}{custom} per un frontespizio personalizzato a mano dall'utente; inoltre \chiave{tipotesi}{frontespizio} per comporre il frontespizio con le funzionalità del pacchetto \pack{frontespizio} che l'utente deve caricare espressamente; \chiave{tipotesi}{sss} per la tesina delle scuole secondarie superiori; \chiave{tipotesi}{scudo}, per la dissertazione dottorale presso la Scuola di Dottorato del Politecnico di Torino; \chiave{tipotesi}{triennale} o \chiave{tipotesi}{monografia} per comporre una tesi di laurea triennale; l'opzione \chiave{tipotesi}{magistrale} per comporre una tesi magistrale o a ciclo unico; \chiave{tipotesi}{dottorale} per comporre una tesi dottorale senza le caratteristiche della dissertazione della scuola ScuDo. +\item[tipotesi] nella forma \chiave{tipotesi}{\meta{tipo della tesi}} accetta molti valori; il valore nullo \chiave{tipotesi}{} o il valore di default \chiave{tipotesi}{topfront}, fra loro equivalenti, per comporre una tesi in maniera retrocompatibile con le funzionalità del pacchetto \TOPtesi fino alla versione~5; \chiave{tipotesi}{custom} per un frontespizio personalizzato a mano dall'utente; inoltre \chiave{tipotesi}{frontespizio} per comporre il frontespizio con le funzionalità del pacchetto \pack{frontespizio} che con questa opzione la classe carica direttamente; \chiave{tipotesi}{sss} per la tesina delle scuole secondarie superiori; \chiave{tipotesi}{scudo}, per la dissertazione dottorale presso la Scuola di Dottorato del Politecnico di Torino; \chiave{tipotesi}{triennale} o \chiave{tipotesi}{monografia} per com"porre una tesi di laurea triennale; l'opzione \chiave{tipotesi}{magistrale} per comporre una tesi magistrale o a ciclo unico; \chiave{tipotesi}{dottorale} per comporre una tesi dottorale senza le caratteristiche della dissertazione della scuola ScuDo. % \item[libro] Serve per impostare i margini interno ed esterno, superiore e inferiore, in modo che siano diversi e due pagine affacciate si presentino come un libro stampato correttamente. Senza usare questa opzione, i margini sono preimpostati uguali in vista di una lettura a schermo. % -\item[cucitura] nella forma \chiave{cucitura}{\meta{spostamento}}, serve per specificare lo \meta{spostamento} verso l'esterno della gabbia del testo in vista di una rilegatura della copia stampata legata con un procedimento piuttosto rigido; lo \meta{spostamento}, se non se ne specifica il valore, è assunto pari a $7\unit{mm}$; se non si specifica nemmeno la chiave lo \meta{spostamento} è nullo. +\item[cucitura] nella forma \chiave{cucitura}{\meta{spostamento}}, serve per specificare lo \meta{spostamento} verso l'esterno della gabbia del testo in vista di una rilegatura della copia stampata legata con un procedimento piuttosto rigido; lo \meta{spostamento}, se non se ne specifica il valore, è assunto pari a $7\unit{mm}$; lo \meta{spostamento} è nullo se non si specifica nemmeno la chiave. % -\item[stile] nella forma \chiave{stile}{\meta{stile della composizione}} può ricevere i valori \chiave{stile}{standard} per comporre in modo predefinito i frontespizi e le testatine; \chiave{stile}{classica} oppure \chiave{stile}{trieste} (questa deprecata, ma conservata per retrocompatibilità) compone in modo `classico' il frontespizio e accetta che vengano specificate anche altre opzioni per configurare le testatine. +\item[stile] nella forma \chiave{stile}{\meta{stile della composizione}} può ricevere i valori tre valori diversi; con \chiave{stile}{standard} i frontespizi e le testatine vengono ocmposte nel modo modo predefinito; invece con \chiave{stile}{classica} oppure \chiave{stile}{trieste} (questa deprecata, ma conservata per retrocompatibilità) il frontespizio viene composto nel modo ‘classico’ e vengono accettate anche altre opzioni per configurare le testatine. % -\item[autoretitolo] accettabile solo con l'opzione \chiave{stile}{classica}, serve per comporre le testatine in modo diverso, con il nome dell'autore e il titolo (breve) della tesi nella testatina di sinistra e il titolo del capitolo nella testatina di destra. Sconsiglio vivamente di usare questa opzione (richiestami dai classicisti) perché vanifica in parte l'utilità delle testatine; inoltre, se non si specifica il titolo breve mediante l'argomento facoltativo del comando \cs{titolo} o \cs{title}, la probabilità che la testatina di sinistra esca dalla gabbia di composizione o anche dalla larghezza della pagina è elevata. +\item[autoretitolo] accettabile solo con l'opzione \chiave{stile}{classica}, serve per comporre le testatine in modo diverso, con il nome dell'autore e il titolo (breve) della tesi nella testatina di sinistra e il titolo del capitolo nella testatina di destra. Sconsiglio vivamente di usare questa opzione (richiestami dai classicisti) perché vanifica in parte l'utilità delle testatine; inoltre, se non si specifica il titolo breve mediante l'argomento facoltativo del comando \cs{titolo} o \cs{title}, la probabilità che la testatina di sinistra esca dalla gabbia di composizione o anche dalla larghezza del foglio è elevata. % -\item[oldstyle] valido solo con l'opzione \chiave{tipotesi}{classica}, serve per usare le cifre minuscole nella composizione del frontespizio. +\item[oldstyle] valido solo con l'opzione \chiave{tipotesi}{classica}, serve per usare le cifre minu"scole nella composizione del frontespizio. % -\item[numerazioneromana] serve per comporre il numero della pagine in numeri romani in maiuscoletto nella parte iniziale della tesi, prima di emettere il primo comando \cs{chapter} con o senza asterisco. È un dettaglio stilistico, che oggi appare un po' troppo desueto e comunque privo di ogni motivazione (questa esisteva quando si componeva a mano o a macchina con caratteri metallici). Si ricorda che \cs{chapter*} non mette nulla nell'indice generale, ma modifica entrambe le testatine mediante il suo argomento facoltativo. +\item[numerazioneromana] serve per comporre il numero della pagine in numeri romani in maiuscoletto nella parte iniziale della tesi, prima di emettere il primo comando \cs{chapter} senza asterisco. È un dettaglio stilistico, che oggi appare un po' troppo desueto e comunque privo di ogni motivazione (questa esisteva quando si compo"neva a mano o a macchina con caratteri metallici). Si ricorda che \cs{chapter*} non mette nulla nell'indice generale, ma modifica entrambe le testatine mediante il suo argomento facoltativo. % -\item[evenboxes] serve per specificare che nello \chiave{stile}{standard} si vogliono comporre le due `scatole' contenti i nomi dei relatori e dei candidati affiancate ma allineate superiormente. Senza questa opzione, in questo stile, le due `scatole' sono collocate disallineate in modo tale da poter inserire le firme degli uni e degli altri sulla stessa riga del loro nome. +\item[evenboxes] serve per specificare che nello \chiave{stile}{standard} si vogliono comporre le due `scatole' contenti i nomi dei relatori e dei candidati affiancate ed allineate superiormente. Senza questa opzione, in questo stile, le due ‘scatole’ sono disallineate in modo tale da poter inserire le firme degli uni e degli altri sulla stessa riga del loro nome. % \item[mybibliostyle] serve solo quando si compone con l'opzione \chiave{tipotesi}{scudo} per evitare il caricamento automatico dei pacchetti di gestione della bibliografia in modo che l'utente possa caricarsi i pacchetti che preferisce, senza incorrere in errori di tipo “Option clash”. % -\item[chapterbib] questa opzione è conservata per retrocompatibilità e per quando si compone la bibliografia a mano; siccome oggi questo metodo, benché usabile, di fatto non si usa più, ma si usano i database bibliografici e i programmi di gestione come \BibTeX\ e \prog{biber}, se si volesse davvero comporre una bibliografia distinta alla fine di ogni capitolo, si suggerisce di servirsi delle funzionalità del pacchetto \pack{biblatex} e del programma \prog{biber}, che consentono di estrarre e di comporre le diverse bibliografie estraendo dai database bibliografici solo le informazioni relative alle opere citate in ciascun capitolo. Sconsiglio di comporre bibliografie separate per ogni capitolo quando si compone qualunque tesi, tuttavia è possibile farlo. Potrebbe avere qualche senso in una tesi compilativa dove si citano e si commentano molte decine, talvolta centinaia di riferimenti. +\item[chapterbib] questa opzione è conservata per retrocompatibilità e per quando si compone la bibliografia a mano; siccome oggi questo metodo, benché usabile, di fatto non si usa più, ma si usano i database bibliografici e i programmi di gestione come \BibTeX\ e \prog{biber}, se si volesse davvero comporre una bibliografia distinta alla fine di ogni capitolo, si suggerisce di servirsi delle funzionalità di quel pacchetto e di quel programma, che consentono di estrarre e di comporre le diverse bibliografie estraendo dai database bibliografici solo le informazioni relative alle opere citate in ciascun capitolo. Sconsiglio di comporre bibliografie separate per ogni capitolo quando si compone qualunque tesi, tuttavia è possibile farlo. Potrebbe avere qualche senso in una tesi compilativa dove si citano e si commentano molte decine, talvolta centinaia di riferimenti. % +\item[folioinhead\textnormal{ e }nocenterhead\textnormal{ e }nocenterfolio] riguardano alcune diverse posizioni per il numero di pagina (folio) e per il testo (head) delle testatine; il numero di pagina di solito sta al centro del piedino, ma con l'opzione \texttt{nocenterfolio} si può spostare tale numero a in modo che sia adiacente al margine esterno se sta nel piedino, ma se è in vigore \texttt{folioinhead} viene fatto protrudere nel margine esterno accanto e allineato con la testatina; la chiave \texttt{nocenterhead} sposta il testo della testatina fino ad essere adiacente al margine esterno. Dovrebbe essere chiaro che con queste impostazioni con il testo al margine esterno e il numero accanto, sia pure sporgente nel margine, la testatina non è gradevole e probabilmente non soddisfa i cannoni della tipografia. L'utente è avvisato affinché non scelga chiavi che contrastano esteticamente. \end{description} @@ -3134,24 +3151,24 @@ tabella~\ref{tab:generale}. \string\ped\{eff\}\string$} \\ \cs{ap}\Arg{...}& nessuno & Apice in tondo\newline Modi testo e matematico - & \texttt{\string$M\relax + & \texttt{\string$M\relax \string\ap\{T\}\string$} \\ \cs{unit}\Marg{...}&nessuno & Unità di misura in tondo unite al numero\newline Modi testo e matematico - & \texttt{15\string + & \texttt{15\string \unit\Arg{k\string\ohm}} \\ -\cs{gei} & & Unità immaginaria in +\cs{gei} o\cs{ju} o \cs{iu} + & & Unità immaginaria in tondo \newline Solo modo matematico - & \texttt{\string$ - \string\eu\string^\string{\string\gei - \string\omega\ t\string}\string$} \\ + & \texttt{\$ \cs{eu}\string^\{\cs{gei}% + \cs{omega} t\} \$} \\ \cs{eu} & & Numero “e” in tondo\newline Solo modo matematico & \texttt{\string$ \string\eu\string^\Arg{\string\gei - \string\omega\ t}\string$} \\ + \string\omega\ t} \string$} \\ \cs{gradi} & & circoletto alzato\newline Modo testo e matematico & \texttt{27\string\unit \Arg{\string\gradi\ C}} \\ @@ -3191,7 +3208,7 @@ stesso formato; il secondo agisce come una dichiarazione che resta in vigore finché una dichiarazione contraria non ne modifichi il valore. \textcolor{red}{Tuttavia sia l'ambiente sia il comando non dovrebbero mai essere usati!}\par} -La composizione tipografica non ha nulla a che vedere con la composizione dattilografica. Quest'ultima si faceva con mezzi avanzati per l'epoca, ma oggi quei mezzi sono del tutto obsoleti; le poche macchine da scrivere meccaniche o elettromeccaniche che esistono ancora fuori da qualche museo, vengono usate per riempire formulari o compilare le informazioni sui documenti cartacei che sopravvivono alla invasione delle carte plastificate; ma tolti gli usi burocratici non mi viene in mente nessun altro uso degno di nota. +La composizione tipografica non ha nulla a che vedere con la composizione dattilogra"fica. Quest'ultima si faceva con mezzi avanzati per l'epoca, ma oggi quei mezzi sono del tutto obsoleti; le poche macchine da scrivere meccaniche o elettromeccaniche che esistono ancora fuori da qualche museo, vengono usate per riempire formulari o compilare le informazioni sui documenti cartacei che sopravvivono alla invasione delle carte plastificate; ma tolti gli usi burocratici non mi viene in mente nessun altro uso degno di nota. La composizione tipografica esige un perfetto equilibrio fra il corpo del font usato e la distanza fra le righe su cui sono appoggiati i caratteri di due righe consecutive di testo; questa distanza prende il nome tecnico di \emph{scartamento} o \emph{avanzamento di riga}, ma spesso viene chiamato impropriamente \emph{interlinea}; questo scartamento a seconda del font in uso può essere dal 10\% al 20\% maggiore del corpo del font usato. @@ -3216,12 +3233,14 @@ Se proprio si vogliono stampare su carta delle bozze scritte abbastanza larghe a mano, allora si imposti il fattore di \amb{interlinea} al massimo a \texttt{1.5}, ma quando si stampa la bella copia, la versione finale, ci si ricordi di re-impostare per \amb{interlinea} il valore unitario -di default. +di default.\enlargethispage*{1\baselineskip} Tra l'altro non si vuole mica usare l'espediente di un grande fattore di interlinea solo per rimpolpare una tesi dal volume modesto? Esso sarebbe un espediente talmente puerile che sarebbe scoperto al primo -sguardo. Ci si ricordi che alcune tesi svolte al Politecnico di Torino all'inizio degli anni 20 del XX secolo non superavano le 30~pagine dattiloscritte o scritte a mano (!), ma ricevettero la dignità di stampa\footnote{Una era del candidato Carlo Alberto Castigliano e vi veniva enunciato il teorema di Castigliano; un'altra era di Placido Cicala e vi si svolgeva la teoria delle volte sottili, teoria che gli strutturisti considerano assolutamente fondamentale ancora oggi.}; le si sta studiando ancora oggi dopo circa un secolo! +sguardo. Ci si ricordi che alcune tesi svolte al Politecnico di Torino all'inizio degli anni 20 del XX secolo non superavano le 30~pagine dattiloscritte o scritte a mano (!), ma ricevettero la dignità di stampa\footnote{Una era quella di Carlo Alberto Castigliano e vi veniva enunciato e provato il teorema di Castigliano, noto a tutti gli ingegneri civili ed edili; un'altra era di Placido Cicala e vi si svolgeva la teoria delle volte sottili, teoria che gli strutturisti considerano assolutamente fondamentale ancora oggi.}; le si sta studiando ancora oggi dopo circa un secolo! + + \subsubsection{La misteriosa pagina bianca} Vale la pena di commentare il misterioso comando \cs{blankpagestyle}. Quando si compone fronte e retro senza usare l'opzione di classe \opt{openany}, i capitoli vengono sempre aperti nelle pagine di destra, cioè nelle pagine dispari. Per fare questo il comando \cs{chapter} agisce eseguendo subito il comando \cs{cleardoublepage} che, fra le altre cose, controlla se la nuova pagina su cui scrivere il titolo del capitolo sia dispari. Se non lo fosse provocherebbe la stampa di una pagina “bianca”; bianca nel senso che non contiene testo ma contiene la testatina e il piedino. @@ -3230,11 +3249,11 @@ Fino alla versione “antica” 0.62 di \TOPtesi, questa eventuale pagina bianca \begin{flushleft}\ttfamily \cs{blankpagestyle}\Marg{empty} \end{flushleft} -e il problema è risolto. Volendo si potrebbe specificare il nome di qualunque altro stile di pagina già definito ma, ad essere franchi, non vedo alternative fra i due stili \texttt{plain} e \texttt{empty} rispetto agli altri stili che contengono sempre le testatine, eventualmente ridotte al solo loro filetto. +e il problema è risolto. Volendo si potrebbe specificare il nome di qualunque altro stile di pagina già definito ma, ad essere franchi, non si vedono alternative fra i due stili \texttt{plain} e \texttt{empty} rispetto agli altri stili che contengono sempre le testatine, eventualmente ridotte al solo loro filetto. -Se lo si vuole usare, consiglio di farlo subito dopo \Bambiente{document}. +Se lo si vuole usare, si consiglia di farlo subito dopo \Bambiente{document}. -Se invece si desidera lasciare il valore di default a \texttt{plain} e usare saltuariamente un altro stile, si usi esplicitamente il comando \cs{cleradoublepage} specificandogli lo stile desiderato come argomento facoltativo, per esempio: +Se invece si desidera lasciare il valore di default a \texttt{plain} e usare saltuariamente un altro stile, si usi esplicitamente il comando \cs{cleardoublepage} specificandogli lo stile desiderato come argomento facoltativo, per esempio: \begin{verbatim} \cleardoublepage[empty] \end{verbatim} @@ -3254,7 +3273,7 @@ Si tratta di un ambiente non flottante, per cui può apparire in mezzo al testo Per usare questo ambiente bisogna seguire una sintassi particolare che richiede argomenti non delimitati o delimitati in modo particolare, per cui è opportuno specificare la sintassi in modo dettagliato. \begin{flushleft}\obeylines -\Bambiente{\meta{foat}} +\Bambiente{\meta{float}} \qquad\Bambiente{SDbox}\marg{tipo}\meta{asterisco facoltativo}% \oarg{frazione} \qquad\qquad\cs{SDimage}\meta{comandi per l'immagine} @@ -3268,7 +3287,7 @@ dove i vari argomenti hanno il seguente significato. \item Il \meta{tipo} indica il tipo di oggetto da presentare con la didascalia accanto; deve coincidere con uno dei nomi degli - ambienti che fanno flottare gli oggetti; quindi normalmente + ambienti flottanti; quindi normalmente \meta{tipo} può valere “figure”, oppure “table” e, se sono stati definiti altri ambienti flottanti con le funzionalità del pacchetto \pack{float}, i nomi di questi @@ -3404,7 +3423,7 @@ dove i vari argomenti hanno il seguente significato. Il terzo argomento del comando \cs{SDcaption} termina con l'\meta{etichetta} da assegnare alla figura; questa etichetta è quella che solitamente costituisce l'argomento del comando - \cs{label} qui non lo si usa direttamente perché ci pensa + \cs{label}; qui non lo si usa direttamente perché ci pensa \cs{SDcaption} a usare \cs{label} al momento opportuno e a conservare l'etichetta in un dato registro perché i comandi di chiusura dell'ambiente possano gestire correttamente @@ -3419,7 +3438,7 @@ dove i vari argomenti hanno il seguente significato. a quelli descritti sopra. Bisogna ricordare che la scatola SD può contenere una didascalia numerata col suo prefisso, oppure una didascalia non numerata e priva di prefisso. Se - l'\meta{etichetta} (facoltativa) non viene specificata e se il + l'\meta{etichetta} (facoltativa) non viene specificata e se il \meta{tipo} non è noto la didascalia non viene numerata; se il \meta{tipo} (opzionale) viene specificato, può essere anche diverso da quello dell'ambiente flottante circostante, @@ -3438,16 +3457,16 @@ Questa lunga descrizione si è resa necessaria per consentire al lettore di usar \subsubsection{Il comando \texorpdfstring{\cs*}{}{goodpagebreak}} Qualche annotazione va fatta per il comando \cs{goodpagebreak}. Il nucleo di \LaTeX contiene il comando \cs{goodbreak} che dovrebbe impostare un consenso di eseguire un fine pagina impostando una penalità molto piccola negativa, più o meno simile a quello che fa il comando \cs{pagebreak}\Oarg{1}. In realtà questo comando nativo di Plain \TeX, conservato in \LaTeX, di fatto non funziona come ci si aspetterebbe. Il comando di questa classe, \cs{goodpagebreak} procede in un altro modo, anche perché si comporta in modo diverso se viene specificato in modo verticale o in modo orizzontale. -Infatti in modo orizzontale inserisce d'ufficio un comando \cs{vadjust}, il cui argomento vale esattamente \cs{newpage}, e che agisce in modo incondizionato quando la \emph{riga} che lo contiene viene scritta nel file di uscita; si dovrà porre un minimo di attenzione a fare sì che lo spazio alla fine della macro non elimini spazi interparola, né introduca spazi spuri; quando lo si usa, quindi, sarà opportuno lasciare uno spazio prima e dopo la macro, per esempio +Infatti in modo orizzontale, cioè all'interno di un capoverso, inserisce d'ufficio un comando \cs{vadjust}, il cui argomento vale esattamente \cs{newpage}, e che agisce in modo incondizionato quando la \emph{riga} che lo contiene viene scritta nel file di uscita; si dovrà porre un minimo di attenzione a fare sì che lo spazio alla fine della macro non elimini spazi interparola, né introduca spazi spuri; quando lo si usa, quindi, sarà opportuno lasciare uno spazio prima e dopo la macro, per esempio \begin{flushleft}\verb*|...prima \goodpagebreak di...|\end{flushleft} Vale la pena di usare questo comando in certi casi in cui la bozza (non interlineata) mostra un salto pagina prima dell'ultima riga di un capoverso, cioè quando viene prodotta una riga vedova; quando si corregge la bozza si cerca il testo della riga prima di quella vedova e si inserisce la macro fra due parole qualsiasi di quel testo. È evidente che, se si modifica il capoverso e non c'è più bisogno del salto pagina incondizionato, bisogna cancellare la macro da quella posizione. In modo verticale, invece, viene calcolata la differenza fra le lunghezze \cs{pagegoal} e \cs{pagetotal}; la prima corrisponde più o meno a \cs{textheight} diminuita dello spazio riservato alle note in calce e del loro spazio di separazione dal testo; è insomma l'obbiettivo per raggiungere la giusta altezza del testo; la seconda lunghezza è la lunghezza netta del testo raggiunta fino a quel momento; se questa differenza è \emph{non maggiore} (che per la sintassi nativa di \TeX vuol dire \emph{minore o uguale}) al numero di righe specificate di default (4 righe), o specificate mediante l'argomento facoltativo, allora viene inserito un salto pagina incondizionato. Vale la pena servirsi di questo comando in modo verticale quando un oggetto relativamente grande e indivisibile viene rinviato alla pagina successiva, così che obbligherebbe \LaTeX a stiracchiare lo spazio elastico verticale al fine di giustificare la pagina che precede il salto pagina. -Questa spiegazione contorta descrive una situazione piuttosto frequente che si manifesta prima dei titoli di sezioni, sottosezioni, e simili. Infatti ogni titolo è separato da un certo spazio dal testo che inizia la sezione e siccome le righe orfane sono tipograficamente molto sgradevoli (meno delle righe vedove, ma comunque sgradevoli), il titolo della sezione deve essere seguito da almeno due righe di testo. Quindi il titolo della sezione, lo spazio verticale di separazione e le due righe di testo formano un blocco di almeno 4~righe; se non ci stanno in fondo alla pagina, \LaTeX manda tutto questo blocco alla pagina successiva, stiracchiando gli spazi verticali della pagina corrente. Mettendo la macro \cs{goodpagebreak} prima del titolo di quella sezione che viene rinviata alla pagina successiva, si produce una pagina mozza, ma non troppo, e senza spazi stiracchiati, seguita da una pagina che inizia con il titolo della nuova sezione; ecco come fare. +Questa spiegazione contorta descrive una situazione piuttosto frequente che si manifesta prima dei titoli di sezioni, sottosezioni, e simili. Infatti ogni titolo è separato da un certo spazio dal testo che inizia la sezione e siccome le righe orfane sono tipografica"mente molto sgradevoli (meno delle righe vedove, ma comunque sgradevoli), il titolo della sezione deve essere seguito da almeno due righe di testo. Quindi il titolo della sezione, lo spazio verticale di separazione e le due righe di testo formano un blocco di almeno 4~righe; se non ci stanno in fondo alla pagina, \LaTeX manda tutto questo blocco alla pagina successiva, stiracchiando gli spazi verticali della pagina corrente. Mettendo la macro \cs{goodpagebreak} prima del titolo di quella sezione che viene rinviata alla pagina successiva, si produce una pagina mozza, ma non troppo, e senza spazi stiracchiati, seguita da una pagina che inizia con il titolo della nuova sezione; ecco come fare. \begin{verbatim} -... fine dell'ultimo capoverso. +... fine dell'ultimo capoverso prima della nuova sezione. \goodpagebreak @@ -3476,7 +3495,7 @@ Il pacchetto \pack{caption} lo definisce, ma se l'utente di \TOPtesi non lo ha c I comandi di questa sezione possono essere introdotti in un ordine qualunque, ma è più chiaro se sono introdotti nell'ordine in cui sono elencati nelle tabelle~\ref{tab:front1}-\ref{tab:front4} riportate dalla pagina~\pageref{tab:front1} alla pagina~\pageref{tab:front4}. -Alcuni comandi sono generali; altri si riferiscono specificatamente alla monografia di laurea, o alla tesi laurea, o alla dissertazione dottorato. In una colonna di queste tabelle vi è indicata la sigla del modulo per il quale quel comando è valido; se manca questa sigla, il comando vale per tutti i moduli. \textcolor{red}{Le sigle sono: `t' per la triennale, `m' per la magistrale, `d' per la dottorale, `S' per la tesi dottorale della ScuDo, `n' per usare il modulo di default, e `s' per la tesina della scuola secondaria}. +Alcuni comandi sono generali; altri si riferiscono specificatamente alla monografia di laurea, o alla tesi laurea, o alla dissertazione di dottorato. In una colonna di queste tabelle vi è indicata la sigla del modulo per il quale quel comando è valido; se manca questa sigla, il comando vale per tutti i moduli. \textcolor{red}{Le sigle sono: `t' per la triennale, `m' per la magistrale, `d' per la dottorale, `S' per la tesi dottorale della ScuDo, `n' per usare il modulo di default, e `s' per la tesina della scuola secondaria}. Per le tesi dottorali della ScuDo si veda più avanti il paragrafo~\ref{sec:frontescudo}. @@ -3519,7 +3538,7 @@ tabelle citate: \end{ThesisTitlePage} \end{Verbatim} -Naturalmente per usare l'ambiente \amb{ThesisTitlePage} ho usato il modulo per le tesi triennali/monografie specificando \chiave{tipotesi}{monografia} fra le opzioni della classe. Inoltre ho usato il comando \cs{titolo} che, lo si ricorda, per le monografie non è disponibile con il pacchetto di default \pack{topfront}. +Naturalmente per usare l'ambiente \amb{ThesisTitlePage} ho usato il modulo per le tesi triennali/monografie specificando \chiave{tipotesi}{monografia} fra le opzioni della classe. Inoltre ho usato il comando \cs{titolo} che, lo si ricorda, non è disponibile per le monografie con il pacchetto di default \pack{topfront}. \begin{figure}[p]\centering \includegraphics[height=.9\textheight]{FrontespiziAssemblati} @@ -3528,13 +3547,13 @@ Naturalmente per usare l'ambiente \amb{ThesisTitlePage} ho usato il modulo per l Vale la pena di fare le seguenti osservazioni. \begin {enumerate}[noitemsep] -\item Il comando \cs{NomeElaborato} può servire per diversi scopi. In questo particolare documento che non è una tesi di laurea triennale, lo si è usato per qualificare il contenuto con il nome “Manuale d'uso”. In altre circostanze può servire per impostare il nome del documento in una lingua straniera; oppure per una laurea triennale che richieda l'indicazione anche di uno o più relatori, è possibile usare il modulo per la laurea magistrale, cambiando il nome dell'elaborato in “Tesi di laurea triennale” e cambiando il nome del corso degli studi con \cs{NomeCorsoDiStudi} in “Corso di laurea triennale”. +\item Il comando \cs{NomeElaborato} può servire per diversi scopi. In questo particolare documento che non è una tesi di laurea triennale, lo si è usato per qualificare il contenuto con il nome “Manuale d'uso”. In altre circostanze può servire per impostare il nome del documento in una lingua straniera; oppure per una laurea triennale, che richieda l'indicazione anche di uno o più relatori, è possibile usare il modulo per la laurea magistrale, cambiando il nome dell'elaborato in “Tesi di laurea triennale” e cambiando il nome del corso degli studi con \cs{NomeCorsoDiStudi} in “Corso di laurea triennale”. % \item Se per comporre la pagina del titolo si usa un ambiente senza asterisco, il logo viene messo in testa; se si usa la forma asteriscata il logo viene messo nella metà inferiore della pagina del titolo. Se il logo dell'ateneo contiene per disteso il logotipo, cioè il nome per disteso, allora l'uso del comando \cs{ateneo} contenente il nome generico dell'ateneo implica una ridondanza di informazioni che potrebbe anche essere antiestetica; quindi se si usa il comando \cs{ateneo} sarebbe meglio usare un ambiente asteriscato, e viceversa. Ma questa possibilità di scelta per la posizione del logo e la presenza del nome dell'ateneo consente di rispettare le diverse specifiche indicate dalle segreterie didattiche degli atenei; si veda la tabella riassuntiva~\ref{tab:modalitaperfrontespizi} nella pagina~\pageref{tab:modalitaperfrontespizi}. % -\item Il comando \cs{titolo} non è disponibile per la monografia nel modulo di default \pack{topfront}, mentre negli altri moduli esso è definito e si può usare tranquillamente anche per la monografia. +\item Il comando \cs{titolo} non è disponibile per la monografia nel modulo di default \pack{topfront}, mentre negli altri moduli esso è definito e si può usare tranquillamente anche per la monografia. % -\item Il comando \cs{titolo} accetta un argomento facoltativo, la versione breve del titolo del frontespizio; serve con \chiave{stile}{classica} e l'opzione \opt{autoretitolo}, perché il titolo breve appaia nella testatina delle pagine di sinistra; se il titolo del frontespizio fosse troppo lungo la testatina verrebbe molto, molto male! +\item Il comando \cs{titolo} accetta un argomento facoltativo, la versione breve del titolo del frontespizio; serve con \chiave{stile}{classica} e l'opzione \opt{autoretitolo}, perché il titolo breve appaia nella testatina delle pagine di sinistra; se il titolo del frontespizio fosse troppo lungo la testatina verrebbe molto, molto male! % \item Se non si danno i comandi \cs{relatore}, \cs{secondorelatore} e \cs{terzorelatore} non viene scritto nulla nel frontespizio che riguardi questi ruoli; di solito né per la dissertazione di dottorato né per la monografia si hanno le figure dei relatori, ma “di solito” non vuol dire né “sempre” né “mai”. @@ -3605,15 +3624,13 @@ Per quanto riguarda i loghi, essi implicano l'uso del pacchetto \pack{graphicx}, \textcolor{red}{Per i formati dei file grafici da includere, le versioni recenti di \pdfLaTeX, di \XeLaTeX e di \LuaLaTeX accettano i formati PDF, PNG, JPG, MPS, EPS. La cosa è scritta a chiare lettere nella guida \file{grfguide.pdf} (già presente nella propria installazione del sistema \TeX aggiornata e completa), ma è un fatto che viene dimenticato troppo spesso e che obbliga a cercare aiuto da chi ne sa di più, compagni o professori, ma che anche loro talvolta dimenticano.} -\textcolor{red}{Esistono programmi per passare da un formato all'altro, ma anche disponendo di quei programmi e conoscendo i vantaggi e gli svantaggi di un formato rispetto ad un altro, questa operazione viene dimenticata troppo spesso, perché troppo spesso ci si dimentica di queste limitazioni sui formati.} +\textcolor{red}{Esistono programmi per passare da un formato di immagine all'altro, ma anche disponendo di quei programmi e conoscendo i vantaggi e gli svantaggi di un formato rispetto ad un altro, questa operazione viene dimenticata troppo spesso, perché troppo spesso ci si dimentica di queste limitazioni sui formati.} Per questo io preferisco usare sempre e solamente i compilatori \pdfLaTeX, \XeLaTeX\ o \LuaLaTeX. L'unico inconveniente è che non posso usare direttamente il pacchetto \pack{PSTricks}; ma finora me la sono cavata molto bene anche senza fruire delle prestazioni di questo bellissimo pacchetto. D'altra parte esistono pacchetti che consentono di usare \pack{PSTricks} anche con \pdfLaTeX e gli altri programmi; l'operazione diventa un po' più complicata ma se ne occupa direttamente il programma di tipocomposizione usato; l'utente deve solo caricare uno di quei pacchetti e seguirne le indicazioni specificate nella documentazione (vedi per esempio il pacchetto \pack{pdftricks} già presente in ogni installazione aggiornata e completa di \TeXLive; documentazione: \texttt{texdoc pdftricks}). -%\goodpagebreak - \section{Altri comandi} -La classe \class{toptesi} richiede l'uso di altri comandi; con i suoi moduli specializzati compone i frontespizi con ambienti adatti allo scopo; con il suo modulo di default \pack{topfront} ci sono diversi ambienti e programmi per comporre i vari frontespizi dei diversi tipi di tesi. Diciamo che questo modulo di default andrebbe usato il meno possibile perché è conservato per retrocompatibilità e come fallback quando non si usano correttamente le opzioni relative alla chiave \chiave{tipotesi} +La classe \class{toptesi} richiede l'uso di altri comandi; con i suoi moduli specializzati compone i frontespizi con ambienti adatti allo scopo; con il suo modulo di default \pack{topfront} ci sono diversi ambienti e comandi per comporre i vari frontespizi dei diversi tipi di tesi. Diciamo che questo modulo di default andrebbe usato il meno possibile perché è conservato per retrocompatibilità e come rimedio quando non si usano correttamente le opzioni relative alla chiave \chiave{tipotesi} Tuttavia se si è costretti ad usare quei comandi o quegli ambienti, quando è in vigore il modulo di default \pack{topfront}, si usi solo l'ambiente \amb{frontespizio}, con o senza asterisco integrato nel nome, inserendo i dati relativi al frontespizio all'interno dell'ambiente. @@ -4049,12 +4066,12 @@ Comando &sigla& Default & Scopo & Esempio d'uso \\ \section{ ScuDo title page commands}\label{sec:frontescudo} -The \file{toptesi-scudo.sty} module contains all the necessary definitions to typeset the thesis title page. Some of the commands just set the “fixed” parts of the title page; other are used to enter the variable parts, i.e. pieces of information such as the thesis author, title, defence date, and the like. All parts, fixed or variable, have specific default values. Here we describe the two sets of the user commands: the most important and compulsory variant data, and the customisation of “fixed” data. +The \file{toptesi-scudo.sty} module contains all the necessary definitions to typeset the thesis title page. Some of the commands just set the “fixed” parts of the title page; other ones are used to enter the variable parts, i.e. pieces of information such as the thesis author, title, defence date, and the like. All parts, fixed or variable, have specific default values. Here we describe the two sets of the user commands: the most important and compulsory variant data, and the customisation of “fixed” data. \subsection{Variant data} All commands to insert variant data accept one mandatory argument. The expression “Default empty” implies that, if the command is not used, its default value, an empty string, is assumed; in some cases this string is tested for emptiness and specific actions may be taken as specified below. \begin{description}[noitemsep] -\def\Item[#1]{\item[\normalfont\cs{#1}]} +\def\Item[#1]{\item[\cs{#1}]} % \Item[Cyclenumber] Defines a string that represents the ordinal number of the cycle program. This number may be written in a variety of ways, from “29\ap{th}”, to “29.th”; from “Twenty\-ninth”, to “XXIX”. If the ordinal number string is not specified, its label “cycle” is omitted. % @@ -4089,7 +4106,7 @@ Default empty. \Item[ExaminationDate] Defines the full date of the examination: “\meta{location}, \meta{day} of \meta{month} \meta{year}” in European style; “\meta{location}, \meta{month} \meta{day} \meta{year}” in USA style. Default empty. Example in both styles: \begin{verbatim} \ExaminationDate{Turin, 29 of February 2345}% EU -\ExaminationDate{Turin, February 29 2345}% USA +\ExaminationDate{Turin, February 29 2345}% USA \end{verbatim} % \end{description} @@ -4099,13 +4116,13 @@ Default empty. Most of the fixed data have a default value consisting in a character-string. \begin{description}[noitemsep] -\def\Item[#1]{\item[\normalfont\cs{#1}]} +\def\Item[#1]{\item[\cs{#1}]} % \Item[PhDschoolLogo] Specifies the name of the file that contains the School Logo. Default none; the file extension may be omitted, but the real extension should be one of \file{.pdf}, \file{.eps}, \file{.png}, \file{.jpg}. Actually this command accepts a list of comma separated names of Doctoral School logos, even if they are under control of the ScuDo school. We refer to the partnerships that ScuDo has with Università di Torino and with Istituto Nazionale di Ricerca Metrologica (INRiM). When a doctoral thesis is supported by INRiM or is a joint Doctoral Thesis with the University of Turin, their logos are supposed to be set in the title page; such logos, as well as the ScuDo one, are available from the Students Office or may be downloaded from a specific reserved Web site. -Please, take notice that ScuDo has available four different logos (to be asked for at the Student Office); the four variants of the school logo are: $(a)$ \texttt{Logo-ScuDo.pdf} (a black and white logo without any decoration at its sides; may be it is an old school logo); $(b)$ \texttt{Logo-ScuDo-RGB.pdf} (an inverted color logo with decoration at its right, with white and yellow inscriptions over a blue background); $(c)$ \texttt{Logo-ScuDo-BN-RGB\discretionary{}{.}{.}pdf} (a black and white logo with decorations at its right; a new logo, the one you probably should use); $(d)$ \texttt{Logo-ScuDo-blu-RGB\discretionary{}{.}{.}pdf} (a blue on white logo with decorations at its right; the blue tint is the official blue required by most official documents of Politecnico di Torino). This bundle TOPtesi does not contain any real logo, because these trademarked images are property of the respective entities, and cannot be freely distributed under the permissive LPPL licence common to most of \TeX-system software, see page~\pageref{ch:LPPL}. +Please, take notice that ScuDo has available four different logos (to be asked for at the Student Office); the four variants of the school logo are: $(a)$ \texttt{Logo-ScuDo.pdf} (a black and white logo without any decoration at its sides; may be it is an old school logo); $(b)$ \texttt{Logo-ScuDo-RGB.pdf} (an inverted color logo with decoration at its right, with white and yellow inscriptions over a blue background); $(c)$ \texttt{Logo-ScuDo-BN-RGB\discretionary{}{.}{.}pdf} (a black and white logo with decorations at its right; a new logo, the one you probably should use); $(d)$ \texttt{Logo-ScuDo-blu-RGB\discretionary{}{.}{.}pdf} (a blue on white logo with decorations at its right; the blue tint is the official blue required by most official documents of Politecnico di Torino). This bundle \TOPtesi does not contain any real logo, because these trademarked images are property of the respective entities, and cannot be freely distributed under the permissive LPPL licence common to most of \TeX-system software, see page~\pageref{ch:LPPL}. -The last three logos were provided by the specific office of Politecnico di Torino in EPS format and CMYK color profile; very large files due to the verbosity of the PostScript commands and to the fact that such files contained both the EPS code and the compressed bitmapped image. By using the \prog{Inkscape} program as described in the English documentation \file{toptesi.pdf}, these PDF/A incompatible images were converted to pure EPS code and RGB profile; they were further processed to transform them in PDF/A compliant format. Hopefully these transformations should be much handier than the original images. In any case, remember that these four logos are not part of this bundle, but you have to ask the school Student Office in order to receive the logo file directly or the authorisation to download it from a reserved Web site. +The last three logos were provided by the specific office of Politecnico di Torino in EPS format and CMYK color profile; very large files due to the verbosity of the PostScript commands and to the fact that such files contained both the EPS code and the compressed bitmapped image. By using the \prog{Inkscape} program as described in the English documentation \file{toptesi.pdf}, these PDF/A incompatible images were converted to pure EPS code and RGB profile; they were further processed to transform them in PDF/A compliant format. Hopefully these transformations should be much handier than the original images. In any case, remember that these four processed PDF logos are not part of this bundle, but you have to ask the school Student Office in order to receive the logo file directly or the authorisation to download it from a reserved Web site. % \Item[Ndissertation] Specifies the name of the dissertation. Default “Doctoral Disseration”. % @@ -4113,16 +4130,16 @@ The last three logos were provided by the specific office of Politecnico di Tori % \Item[Nsupervisor] Specifies through two separate arguments the singular and the plural name to label the supervisor list. Default “Supervisor” and “Supervisors”. % -\Item[SupervisorNumber] Specifies the number of supervisors with three alternatives. With the default “0” (zero) value or an empty argument no label is set above the list of supervisors; the real turning point is the value “1” when the singular label is used; any other value greater than “1”, is treated as “many” and implies the plural label.%%%%!!! +\Item[SupervisorNumber] Specifies the number of supervisors with three alternatives. With the default “0” (zero) value or an empty argument no label is set above the list of supervisors; the real turning point is the value “1” when the singular label is used; any other value greater than “1”, is treated as “many” and implies the plural label. % \Item[Nexaminationcommittee] Specifies the label to print above the list of examiners. Default “Doctoral Examination Committee”. % -\Item[Nlocation] Specifies the full official name of the institution where the doctoral examination is going to be held. Default “Politecnico di Torino”. This suffices for the ScuDo dissertation, but for other doctoral schools it might be necessary to specify also the city, the province"/state and sometimes the nation. +\Item[Nlocation] Specifies the full official name of the institution where the doctoral examination is going to be held. Default “Politecnico di Torino”. This suffices for the ScuDo dissertation, but for other doctoral schools it might be necessary to specify also the city, the province"/state and sometimes the country. % -\Item[Property] Specifies the claim for the intellectual property of the Ph.D.\ dissertation contents. Default “This thesis is licensed under a Creative Commons License, Attribution - Noncommercial- NoDerivative Works - 4.0 International: see \begin{center}\url{www.creativecommons.org}.\end{center} -The text may be reproduced for non-commercial purposes, provided that credit is given to the original author.” +\Item[Property] Specifies the claim for the intellectual property of the Ph.D.\ dissertation contents. Default: \begin{quote}This thesis is licensed under a Creative Commons License, Attribution - Noncommercial- NoDerivative Works - 4.0 International: see \begin{center}\url{www.creativecommons.org}.\end{center} +The text may be reproduced for non-commercial purposes, provided that credit is given to the original author.\end{quote} % -\Item[Disclaimer] Specifies the text of the disclaimer statement. Default: “\cs{noindent} I hereby declare that the contents and organisation of this dissertation constitute my own original work and do not compromise in any way the rights of third parties, including those relating to the security of personal data.” +\Item[Disclaimer] Specifies the text of the disclaimer statement. Default: \begin{quote}I hereby declare that the contents and organisation of this dissertation constitute my own original work and do not compromise in any way the rights of third parties, including those relating to the security of personal data.\end{quote} % \Item[Signature] Specifies the signature field with a dotted line to hand-sign the statement, the signer's name, the place of signature and the signature date. The signer's name defaults to the author's name, and the date defaults to the examination date. This latter default perhaps should be modified. In any case the command definition provides a default layout as such: \begin{verbatim} @@ -4170,20 +4187,20 @@ An example title page is shown in figure~\ref{fig:frontescudo} on page~\pageref{ Le personalizzazioni, diverse da quelle già previste da questo insieme di file di \TOPtesi, sono vivamente scoraggiate. Ci si ricordi che lo stile tipografico, sia la geometria della pagina, sia lo stile scelto per la maggior parte dei caratteri usati, sono i risultati precisi di accordi fatti con gli organi competenti di diverse università. Modificare queste cose vuol dire non rispettare le norme emesse da quegli organi competenti: segreterie studenti degli atenei o delle facoltà, dei corsi di studi, delle scuole, eccetera. -Tuttavia, di principio per TOPtesi le modifiche non sono vietate, ma sono solo scoraggiate. +Tuttavia, di principio per \TOPtesi le modifiche non sono vietate, ma sono solo scoraggiate. La licenza LPPL della pagina~\pageref{ch:LPPL} è molto permissiva, ma pone alcuni limiti. Quello più importante è che i file originali non possono essere modificati, ma non è vietato modificarne delle copie a cui sia stato cambiato il nome e dalle quali sia stato eliminato il nome della persona che esegue la manutenzione degli originali; questo nome deve essere sostituito con quello della persona che ne esegue qualsiasi modifica, pur lasciando la stessa indicazione di licenza e la paternità dell'autore originale. In questo modo chiunque usi la versione modificata sa a chi rivolgersi perché l'autore originale non è più responsabile “dell'assistenza” agli utenti. Siccome \TOPtesi è modulare e i suoi vari moduli sono richiamati in cascata, questo significa che bisogna cambiare nome e commenti iniziali all'indietro fino al file di classe; in pratica di tutti i file di cui è composto \TOPtesi. L'operazione è abbastanza delicata, perché non bisogna dimenticare le necessarie modifiche a tutti i file della catena; tuttavia, una volta eseguita questa operazione, si ha la massima libertà di modificare qualsiasi cosa senza violare nessuna licenza. -Siccome è già successo che qualcuno mi chiedesse assistenza attraverso il Forum del \GuIT, mentre stava lavorando su una versione obsoleta e forse modificata da chissà chi, abbiamo avuto una serie di dialoghi “fra sordi”, perché io non riuscivo a replicare gli inconvenienti che quella persona lamentava; ci abbiamo messo almeno tre giorni attraverso i messaggi del forum per arrivare a scoprire che gli inconvenienti lamentati erano il frutto dell'uso di una versione obsoleta (forse anche modificata senza rispettare i vincoli suddetti). Ci saremmo risparmiati le incomprensioni generate dal fatto che stavamo parlando di due cose diverse che però avevano lo stesso nome. Ora l'inconveniente non dovrebbe presentarsi più, perché la classe esegue un controllo sulle versioni dei pacchetti usati e se non fossero conformi interromperebbe immediatamente la compilazione emettendo un messaggio molto evidente cosicché l'utente sarebbe costretto a verificare lo stato dei suoi file. +Siccome è già successo che qualcuno mi chiedesse assistenza attraverso il Forum del \GuIT, mentre stava lavorando su una versione obsoleta e forse modificata da chissà chi, abbiamo avuto una serie di dialoghi “fra sordi”, perché io non riuscivo a replicare gli inconvenienti che quella persona lamentava; ci abbiamo messo almeno tre giorni attraverso i messaggi del forum per arrivare a scoprire che gli inconvenienti lamentati erano il frutto dell'uso di una versione obsoleta (forse anche modificata senza rispettare i vincoli suddetti). Ci saremmo risparmiati le incomprensioni generate dal fatto che stavamo parlando di due cose diverse che però avevano lo stesso nome. Ora l'inconvenien"te non dovrebbe presentarsi più, perché la classe esegue un controllo sulle versioni dei pacchetti usati e se non fossero conformi interromperebbe immediatamente la compila"zio"ne emettendo un messaggio molto evidente cosicché l'utente sarebbe costretto a verificare lo stato dei suoi file. Secondo me ci sono altri due modi per eseguire certe personalizzazioni senza violare la licenza pur mantenendo invariati i file originali. \begin{enumerate}[noitemsep] \item Un primo metodo consiste nel crearsi un file di macro personali, dove inserire tutto o quasi tutto quanto generalmente si mette nel preambolo del proprio documento; anche senza modificare nulla, questo semplice fatto svuota il preambolo lasciando più facilmente leggibile il file sorgente della tesi o di qualsiasi altro documento. -In ogni caso in questo file si possono copiare le definizioni dei comandi o degli ambienti di \TOPtesi che si vogliono modificare; questi comandi e questi ambienti possono venire modificati, ricordando di usare \cs{renewcommand} al posto di \cs{newcommand} e \cs{renewenvironment} al posto di \cs{newenvironment} e apportando tutte le modifiche che si vogliono al testo sostitutivo di quei comandi e di quegli ambienti. Ovviamente bisogna conoscere il linguaggio \LaTeX sufficientemente a fondo per fare una operazione del genere, ma spesso le modifiche desiderate sono piuttosto semplici e quindi, se è così, l'operazione non è difficile. +{\tolerance=3000 In ogni caso in questo file si possono copiare le definizioni dei comandi o degli ambienti di \TOPtesi che si vogliono modificare; questi comandi e questi ambienti possono venire modificati, ricordando di usare \cs{renewcommand} al posto di \cs{newcommand} e \cs{renewenvironment} al posto di \cs{newenvironment} e apportando tutte le modifiche che si vogliono al testo sostitutivo di quei comandi e di quegli ambienti. Ovviamente bisogna conoscere il linguaggio \LaTeX sufficientemente a fondo per fare una operazione del genere, ma spesso le modifiche desiderate sono piuttosto semplici e quindi, se è così, l'operazione non è difficile.\par} Tuttavia c'è un problema: molti moduli di \TOPtesi vengono letti solo durante l'esecuzione dell'istruzione \Bambiente{document}, quindi il file di macro personali non può venire letto durante l'elaborazione del preambolo; dimenticarsi di questo fatto vuol dire ricevere una quantità di messaggi d'errore di difficile interpretazione per molti utenti. @@ -4195,7 +4212,7 @@ La cosa migliore da fare, quindi, è quella di inserire il file delle macro pers il comando \cs{input}, assolutamente non con il comando \cs{include} e meno che mai con il comando \cs{usepackage}; meglio ancora: si può mettere tutto nel preambolo ma inserendo \cs{input} col suo argomento - in quello del comando \cs{AfterEndPreamble}, già disponibile, visto + in quello di \cs{AfterEndPreamble}, già disponibile, visto che la classe già carica il pacchetto \pack{etoolbox}; \item il file deve cominciare con il comando \cs{makeatletter} @@ -4208,7 +4225,7 @@ In questo modo i file originali di \TOPtesi restano immutati e le modifiche rigu \item Un altro modo consiste nell'uso dele funzionalità dei comandi definiti nel pacchetto \pack{etoolbox}; questi comandi permettono di “rattoppare” (traduzione letterale di \emph{to patch}), cioè di modificare comandi esistenti e, con una buona conoscenza del funzionamento interno di \LaTeX, anche degli ambienti. Il lettore si riferisca alla documentazione di \pack{etoolbox} per maggiori dettagli. Qui accenno solo al fatto che il comando di \pack{etoolbox} \cs{pretocmd} permette di aggiungere codice all'inizio del testo sostitutivo della definizione di una macro; \cs{addtocmd} permette di aggiungere codice in coda al testo sostitutivo; e \cs{patchcmd} permette di cercare una data stringa nel testo sostitutivo di un comando e di sostituirla con un'altra stringa. Ricordo che “testo sostitutivo” in questo contesto indica tutto quello che costituisce la definizione di una macro, quindi in generale non è “testo” nel senso stretto della parola, ma quasi sempre è solo codice in linguaggio \LaTeX o in linguaggio nativo \TeX. -Non nascondo che questo secondo metodo è molto più elegante del primo, ma richiede conoscenze approfondite del linguaggio \LaTeX e \TeX, quindi lo segnalo solo per utenti esperti. +Non nascondo che questo secondo metodo è molto più elegante del primo, ma richiede conoscenze approfondite del linguaggio \LaTeX e \TeX, quindi lo raccomando solo agli utenti esperti. \item {\tolerance=3000 Spesso le modifiche desiderate sono già previste da altri pacchetti; per essere sicuri che questi pacchetti siano caricati al momento giusto è meglio invocarli con \cs{usepackage}, inserendo il comando e il suo argomento dentro quello di \cs{AfterPreamble}.\par} @@ -4231,7 +4248,7 @@ Da un lato alcuni utenti devono adattarsi a quello che è disponibile, magari da Il modo di localizzare le stringhe fisse dovrebbe risultare semplificato rispetto alle versioni fino alla 5.x.xx di \TOPtesi, grazie ai moduli separati per i vari tipi di tesi; ogni frontespizio richiede un numero ristretto di stringhe fisse rispetto al caso generale; quindi il lavoro di localizzazione riguarda, a seconda delle tesi, fino a una dozzina di parole o di locuzioni nominali. \textcolor{red}{% -\english For the ScuDo doctoral school some packages are preloaded in addition to those already loaded by the \TOPtesi bundle. The title page for this doctoral school is obtained with its own commands and environment. The appearance of this title page was shown in figure~\ref{fig:frontescudo} on page~\pageref{fig:frontescudo}, and the general instructions for this title page are given in section~\ref{sec:frontescudo}. Doctoral students benefit from examining the source file \file{toptesi-scudo-example.tex} (already part of this bundle) where many details are added for using this particular variant.} +\english For the ScuDo doctoral school some packages are preloaded in addition to those already loaded by the \TOPtesi bundle. The title page for this doctoral school is obtained with its own commands and environments. The appearance of this title page was shown in figure~\ref{fig:frontescudo} on page~\pageref{fig:frontescudo}, and the general instructions for this title page are given in section~\ref{sec:frontescudo}. Doctoral students benefit from examining the source file \file{toptesi-scudo-example.tex} (already part of this bundle) where many details are added for using this particular variant.} Il pacchetto \textsf{TOPtesi} carica di default sia \texttt{babel} o \texttt{polyglossia} sia \texttt{graphicx}; certo potrebbe caricare di default anche \texttt{amsmath} e i suoi compagni, ma non tutti hanno bisogno di scrivere e comporre matematica avanzata e se non vengono usati essi comportano uno risparmio di memoria e un sia pur piccolo miglioramento nella velocità di esecuzione. Ritengo quindi che sia meglio che ognuno si carichi i pacchetti che intende davvero usare. @@ -4239,13 +4256,13 @@ Il pacchetto \textsf{TOPtesi} carica di default sia \texttt{babel} o \texttt{pol Consiglierei l'uso di \XeLaTeX o \LuaLaTeX solo per quelle tesi, specialmente di carattere umanistico, che hanno bisogno di maneggiare agevolmente font di diversi tipi per scrivere con alfabeti o sillabari o sistemi di ideogrammi per i quali \pdfLaTeX\ è, sì, attrezzato, ma rende molto più faticosa l'intera operazione. -È molto interessante il programma di composizione \LuaLaTeX, che incorpora una buona parte del linguaggio di scripting Lua; questo a sua volta permette di compiere diverse azioni esternamente al programma di tipocomposizione (mi risulta che sia usato per impostazione predefinita per comporre la musica gregoriana con il pacchetto \pack{GregorioTeX}); in certi casi esso si può considerare una estensione molto utile del programma \pdfLaTeX. Benché questo programma possa usare la microtipografia come \pdfLaTeX\ e i font OpenType come \XeLaTeX, vale la pena di usarlo al posto di quest'ultimo, se non altro perché ne è un superset che riesce a fare altre cose oltre quelle che \XeLaTeX\ è in grado di fare; in particolare può produrre file archiviabili secondo le norme ISO senza bisogno di nessun tipo di post"processing. +È molto interessante il programma di composizione \LuaLaTeX, che incorpora una buona parte del linguaggio di scripting Lua; questo a sua volta permette di compiere diverse azioni esternamente al programma di tipocomposizione (mi risulta che sia usato per impostazione predefinita per comporre la musica gregoriana con il pacchetto \pack{GregorioTeX}); in certi casi esso si può considerare una estensione molto utile del program"ma \pdfLaTeX. Benché questo programma possa usare la microtipografia come \pdfLaTeX\ e i font OpenType come \XeLaTeX, vale la pena di usarlo al posto di quest'ultimo, se non altro perché ne è un superset che riesce a fare altre cose oltre quelle che \XeLaTeX\ è in grado di fare; in particolare può produrre file archiviabili secondo le norme ISO senza bisogno di nessun tipo di post"processing. So per certo che le tesi di filologia classica possono essere composte molto bene con \pdfLaTeX\ e \textsf{TOPtesi}; se bisogna usare una buona dose di lingua greca classica è conveniente caricare il pacchetto \pack{teubner}\footnote{A tutt'oggi (\the\year) il pacchetto \pack{teubner} funziona correttamente solo con \pdfLaTeX.}; gli intenditori sanno perfettamente che i font greci della casa editrice Teubner di Lipsia sono fra i più gradevoli che esistano; il pacchetto \texttt{teubner} fa uso di un'ottima imitazione di quei font e mette a disposizione una miriade di comandi per comporre quei segni “strani” che i filologi usano per scrivere le loro opere. Per le edizioni critiche esistono i pacchetti \texttt{eledmac} e \pack{reledmac}; io non li ho mai usati, ma sembra che siano di grande aiuto per gli umanisti. -Per gli scienziati e i tecnologi esistono troppi pacchetti specializzati e sarebbe impossibile, e forse inutile, elencarli tutti o anche elencare solo i più importanti. +Per gli scienziati e i tecnologi esistono troppi pacchetti specializzati e sarebbe impossi"bile, e forse inutile, elencarli tutti o anche elencare solo i più importanti. Non resta che augurare: \begin {center}\cambiacorpo{16}\bfseries @@ -4258,10 +4275,7 @@ Happy \TeX{ing} with \pdfLaTeX, or \LuaLaTeX, or~\XeLaTeX! \end{center} \english\newpage -%\appendix -%\input{LPPL} \phantomsection -%\addcontentsline{toc}{chapter}{The \LaTeX Project Public License} \input{lppl-1.3}% il label ch:LPPL è già definito nel file lppl-1.3.tex \italiano diff --git a/macros/latex/contrib/toptesi/toptesi.dtx b/macros/latex/contrib/toptesi/toptesi.dtx index ef86c19b16..843f5659b1 100644 --- a/macros/latex/contrib/toptesi/toptesi.dtx +++ b/macros/latex/contrib/toptesi/toptesi.dtx @@ -142,7 +142,7 @@ School of Turin. %\ProvidesPackage{toptesi-magistrale}[% %\ProvidesPackage{toptesi-dottorale}[% %<*driver,class,topsty,topcmn,topfrn,topscu,topmon,topsss,topmag,topdoc> -2019-07-26 v.6.3.06 +2020-05-12 v.6.4.02 %Class for typesetting university theses] %Extension for toptesi.cls] %Additional commands for the TOPtesi bundle] @@ -168,10 +168,12 @@ School of Turin. xparse,curve2e,etoolbox,textcomp} \let\originalmeta\meta \renewcommand\meta[1]{{\normalfont\originalmeta{#1}}} +\providecommand\cs{} +\def\cs#1{\textnormal{\ttfamily\char92 #1}} \def\prog#1{\textsf{#1}} \def\pack#1{\textsf{\slshape#1}} \def\env#1{\textit{#1}}\let\amb\env -\def\file#1{\texttt{#1}} +\def\file#1{\texttt{#1}}\let\class\file \def\marg#1{{\normalfont\texttt{\{}\meta{#1}\texttt{\}}}} \def\Marg#1{{\texttt{\{#1\}}}} \def\opz#1{{\normalfont\textsl{#1}}} @@ -256,7 +258,7 @@ School of Turin. % % \fi % -% \CheckSum{7660} +% \CheckSum{7981} % % \begin{abstract} % This file describes the TOPtesi bundle; it consists of a set of files @@ -272,7 +274,7 @@ School of Turin. % files has the ambition to be suited for typesetting theses in % any university in the world\dots\ This ambition can't be % fulfilled, though, because of the complexity of the title -% page (and possibly of the legal page) requirements. This +% page (and possibly of the copyright page) requirements. This % version is compliant with the \XeLaTeX\ and the \LuaLaTeX\ % programs. Up to now the few conflicts that have % been spotted have been solved with suitable corrections or @@ -307,7 +309,8 @@ School of Turin. % Public Licence (LPPL) which is appended to the Italian documentation % file \texttt{toptesi-it.pdf} included in this bundle; personal % customisation of parts of this bundle are discouraged but are -% permitted only in conformance with the LPPL. See also section~\ref{sec:LPPL}.} +% permitted only in conformance with the LPPL. See also +% section~\ref{sec:LPPL} in this document.} % \end{abstract} % % \section{History} @@ -472,7 +475,7 @@ School of Turin. % the |pdfpages| package), or even create his/her personal % title page by means of the standard |titlepage| environment. % -% All this implied the rewriting of both the English and +% All this implied rewriting both the English and % Italian documentation files; the user can find useful % information in the English file |toptesi.pdf| included % in the bundle; this file is pretty lengthy because it @@ -709,9 +712,10 @@ School of Turin. % specific options. % % \subsection{Class options} -% The class honors all the options accepted by the |report| +% The class accepts all the options valid for the |report| % document class plus the ones defined here: % \begin{description}[noitemsep]\def\Item[#1]{\item[\opz{#1}]} +% % \Item[chapterbib] Allows to typeset a list of references at the % end of each chapter and the bibliography items are numbered with % a \emph{chapter.item} indication. This implies a manual build @@ -721,7 +725,7 @@ School of Turin. % complete \TeX\ system distribution and the facilities offered % by packages such as \pack{biblatex}, and on the sorting and formatting % engines such as \prog{biber}. The use of this option, retained for -% backwards compatibility, is strongly deprecated. +% backwards compatibility, is \emph{strongly deprecated}. % % \Item[stile=classica] Specifies a general modification of certain % details that are supposed to be more adequate for theses in @@ -729,10 +733,11 @@ School of Turin. % be used for some numerical pieces of information; some variations % are also introduced in the title page. This option is active also % when using some of the modules for specific theses, in particular -% with the |dottorale| thesis option. +% with the |dottorale| thesis option. Some of the following options +% may be valid or may remain inactive when this thesis style is specified. % % \Item[cucitura=\meta{displacement}] In two sided printing -% it is better to move the typesetting grid towards the outer +% it might be necessary to move the typesetting grid towards the outer % edge so as to cope with the thesis binding that is generally % not made up by sewing together a number of signatures; the % default outer displacement is fixed to~7mm, but it can be @@ -788,12 +793,33 @@ School of Turin. % the like, only when the main matter was complete, corrected % and stable. Nowadays with electronic typesetting there is no % need to to use this artifice, but in some disciplines it is -% still considered an elegant touch. +% still considered a touch of elegance. +% \Item[folioinhead] Folios by default are typeset at the center +% of the footer. With thei options they are placed in the margin, +% aligned with the header; thei feature has been requested in some +% universities, but admittedly is not particularly elegant; may be +% it can be used only when the header is centred in the measure, +% certainly not when is is moved to the outer side of the header. +% No particular functionality is provided to avoid this particular +% choice; it is up to the user to avoid this error. Ineffective is +% the |stile=classica| option is specified. +% +% \Item[nocenterhead] The header text is normally centred in the +% measure. If this option is specified, the header text is moved +% to the outer side. No option has been requested to move the header +% text towards the inner side; therefore do not look for any such +% keyword. Ineffective is the |stile=classica| option is specified. +% +% \Item[nocenterfolio] Normally the folio is typeset centred in the +% footer; by specifying the option the folio is flushed to the outer +% side of the footer. Ineffective is the |stile=classica| option is +% specified. These last three options comply with the |oneside| or +% |twoside| global class options. %\end{description} % % Since version 6.xx.yy options to the TOPtesi class follow the % syntax \emph{key${}={}$value}; depending on the kind of thesis -% there there are some values that are particularly significant; +% there are some values that are particularly significant; % the key for all of them is |tipotesi| (\emph{thesis kind}); % the values are indicated hereafter. % @@ -844,6 +870,21 @@ School of Turin. % case, except for few additional packages, the body of the % TOPtesi functionality is maintained intact. % +%\Item[topotesi=frontespizio] By specifying this option the default +% module |topfront| to typeset the title page is not loaded; in its +% place the \pack{frontespizio} package is loaded, and the user can +% directly use this latter package commands. Of course the user must +% know pretty well ho this particular package works; if not s/he +% should reat its documentation. Notice: the documentation is written +% in Italian; probably its author assumed that it would be used only +% by Italian students; actually the author provided commands to +% customise the infix words in other languages. Again the author +% assumed that some Italian students had to typeset their theses in +% various languages; this is generally true for doctoral theses that +% are requested in English; but this is true also for Erasmus student +% who might need to write their theses in the language of the host +% universities. +% % \Item[tipotesi=custom] % is a very simple option: sets the various internal switches % so as not to load any internal module or external file. @@ -865,11 +906,11 @@ School of Turin. % di Torino, the user is free to follow his/her University % prescriptions without any constraint by the TOPtesi bundle. % -% \item[Attention!] It goes by itself that each one of the last +% \item[Warning!] It goes without saying that each one of the last % options does not load the generic module |topfront|, therefore -% the commands provided by this standard module are not available +% some commands provided by this standard module are not available % any more. Every effort has been made in the various modules to -% maintain the same commands, but in certain thesis kinds they +% maintain the same commands, but in certain thesis types they % might behave differently than expected. % % The user therefore is strongly urged to consult the documentation @@ -880,10 +921,10 @@ School of Turin. % \end{description} % % \subsection{Title page commands} -% Note: Skip this section if you decide to load an external -% package, such as, for example, |frontespizio|, for typesetting the -% title~page. Notice also that if you want to load an external -% package for this task, you should load it \emph{after} +% Note: Skip this section if you decide to use external package +% |frontespizio|, or you selected the |tipotesi=custom| option for +% typesetting the title~page. Notice also that if you want to load +% an external package for this task, you should load it \emph{after} % specifying the input encoding you use for your text files.\bigskip % % \noindent The user must specify a certain number of commands @@ -896,14 +937,14 @@ School of Turin. % repeat his/her name, the name of the institution, and so on? % % Many user commands for the title page redefine default -% values or strings; they are particularly usefull when the thesis is +% values or strings; they are particularly useful when the thesis is % typeset in a different language; if none of the required information % is given, the default values and strings are typeset, possibly % with hilarious results\dots % % Except for the self made customised module for the title-page, % all the modules accept the same commands as those available in -% the |TOPfront| module. Pay attention, though, that some commands are +% the |topfront| module. Pay attention, though, that some commands are % meaningless in certain theses, therefore do not reverse the % statement: for example the doctoral cycle command (|\cycle|) % is meaningless in a bachelor degree final-work title-page. @@ -930,8 +971,8 @@ School of Turin. % other ones use mostly the same commands for the same purposes. % % \begin{description}[noitemsep] -% \def\cs#1{\texttt{\char92#1}} -% \def\Item[#1]{\item[\normalfont\cs{#1}]} +%^^A \def\cs#1{\texttt{\char92#1}} +% \def\Item[#1]{\item[\cs{#1}]} %^^A % \item[\textnormal{\ttfamily frontespizio}] and % \texttt{frontespizio*} are two environments that typeset the @@ -948,29 +989,31 @@ School of Turin. % according to the actual status of the boolean |\topTPTlogos|; % the user, before issuing the |\frontespizio| command, may set % this boolean by means of the |\topTPTlogostrue| -% or |\topTPTlogosfalse|, or with either one of the commands +% or |\topTPTlogosfalse|, or with either one of the equivalent commands % |\booltrue{topTPTlogos}| and |\boolfalse{topTPTlogos}|.\par} % -% \Item[monografia] sets the bachelor's report style and retrieves -% its title; the command\cs{titolo} that is not available for this -% purpose with the standard module |TOPfront|, is available when +% \Item[monografia\marg{title}] sets the bachelor's report style and +% retrieves its title; the command\cs{titolo} that is not available for +% this purpose with the standard module |TOPfront|, is available when % the specific module has been loaded by means of the % \opz{monografia} or \opz{triennale} options. % -% \Item[titolo] gets the master or PhD thesis title and an -% optional thesis short title. -% -% \Item[sottotitolo] gets the thesis subtitle if any. +% \Item[titolo\oarg{shorttitle}\marg{title}] gets the master +% or PhD thesis title and an optional thesis short title. % -% \Item[materia] gets the name of the discipline the thesis deals with. +% \Item[sottotitolo\marg{subtitle}] gets the thesis subtitle if any. % -% \Item[Materia] alias for \cs{materia}. +% \Item[materia\marg{discipline}] or the alias +% \cs{Materia}\marg{discipline} get the name of the discipline the +% thesis deals with. % -% \Item[direttore] gets the name of the Doctoral School Director. +% \Item[direttore\marg{director's name}] gets the name of the +% Doctoral School Director. % -% \Item[coordinatore] gets the name of the Doctoral School -% Coordinator -% \Item[QualificaDirettore] gets the phrase that describes the +% \Item[coordinatore\marg{coordinator's name}] gets the name +% of the Doctoral School Coordinator +% \Item[QualificaDirettore\marg{director's function}] +% gets the phrase that describes the % director or coordinator official position; by % using the command \cs{direttore} the default phrase % “Direttore della Scuola di Dottorato” is printed @@ -981,30 +1024,36 @@ School of Turin. % in another language is required, this macro is % available for specifying such position. % -% \Item[relatore] gets the name of the thesis principal supervisor. +% \Item[relatore\marg{supervisor name}] gets the name of the +% thesis principal supervisor. % -% \Item[secondorelatore] gets the name of the second supervisor, -% if any. -% \Item[terzorelatore] gets the name of the third supervisor, +% \Item[secondorelatore\marg{second supervisor's name}] gets the name +% of the second supervisor if any. +% \Item[terzorelatore\marg{third supervisor's name}] +% gets the name of the third supervisor, % if any; it is assumed that the number of % supervisors never exceeds three; in case follow % one of the tricks exemplified % in the example file \file{toptesi-example.tex} in % order to manage such situation. -% \Item[tutore] gets the name of the doctorate tutor; there is no +% \Item[tutore\marg{tutor's name}] +% gets the name of the doctorate tutor; there is no % difference with regards to the \cs{relatore}, but % the default phrase “Tutore” is printed above this % person's name. -% \Item[TutorName] gets the phrase that describes the tutor +% \Item[TutorName\marg{tutor's position}] +% gets the phrase that describes the tutor % position, possibly in a different language. -% \Item[AdvisorName] gets the string that qualifies the +% \Item[AdvisorName\marg{supervisors' formal title}] +% gets the string that qualifies the % supervisor(s); the default string % is “Relatore:” or “Relatori:” for the plural; % in another language this command is used to % define the string, say, “Supervisors:” if the % thesis has been supervised by more than one % person. -% \Item[CoAdvisorName] gets the string that qualifies the +% \Item[CoAdvisorName\marg{co-supervisors' formal title}] +% gets the string that qualifies the % co-supervisor(s); the default string is % “Correlatore:” or “Correlatori:” in the % plural; this command may be used to define the @@ -1013,12 +1062,18 @@ School of Turin. % for setting an Italian singular name when the % tricks exemplified in file % \file{toptesi-example.tex} are used. -% \Item[candidato] gets the name and surname of a male author (M). -% \Item[candidata] gets the name and surname name of a female author (F). -% \Item[secondocandidato] gets the name and surname of the second M author. -% \Item[secondacandidata] gets the name and surname of the second F author. -% \Item[terzocandidato] gets the name and surname of the third M author. -% \Item[terzacandidata] gets the name and surname of the third F author; +% \Item[candidato\marg{candidate' name (man)}] +% gets the name and surname of an author (M). +% \Item[candidata\marg{candate's name (woman))}] +% gets the name and surname name of an author (W). +% \Item[secondocandidato\marg{second candidate's name (man)}] +% gets the name and surname of the second M author. +% \Item[secondacandidata\meta{second candidate's name (woman)}] +% gets the name and surname of the second W author. +% \Item[terzocandidato\marg{third candidate's name (man)}] +% gets the name and surname of the third M author. +% \Item[terzacandidata\marg{third candidate's name ()woman}] +% gets the name and surname of the third W author; % most often the thesis author is just one person; % but there are some institutions where group final % works are accepted; it is assumed that the group @@ -1029,7 +1084,8 @@ School of Turin. % For different languages there might be no % difference in gender but there is a difference % in plural. -% \Item[CandidateName] gets the string that describes the student +% \Item[CandidateName\marg{candate's status}] +% gets the string that describes the student % status in a foreign % language or even in Italian; the default string % is `Candidato:” (with colons) adjusted to @@ -1038,51 +1094,63 @@ School of Turin. % “Laureando:”; in other languages it is % necessary to specify this string in the proper % gender and number. -% \Item[sedutadilaurea] gets the date of the final exam, or +% \Item[sedutadilaurea\marg{thsis defense date}] +% gets the date of the final exam, or % presentation, or defence of the thesis; if this % date is omitted the default date is the current % month and year in the current language (generally -% Itallian). -% \Item[esamedidottorato] an alias for \cs{sedutadilaurea} to be used +% Italian). +% \Item[esamedidottorato\marg{Ph.D. defense date}] +% an alias for \cs{sedutadilaurea} to be used % for doctoral dissertations. -% \Item[ciclodidottorato] gets the roman numeral that specifies +% \Item[ciclodidottorato\marg{cycle}] +% gets the ordinal numeral that specifies % the doctoral cycle. -% \Item[CycleName] redefines the string that expresses the name of +% \Item[CycleName\marg{cycle name}] +% redefines the string that expresses the name of % the doctoral cycle; by default this is “ciclo” % but this command is useful to set the name in a % different language. -% \Item[corsodilaurea] gets the proper name of the degree course; +% \Item[corsodilaurea\marg{degree course proper name}] +% gets the proper name of the degree course; % the phrase that describes the degree course is % specified, if necessary, with the next command; % with this one you specify just, say, -% “Electrical Engineering”. -% \Item[CorsoDiLaureaIn] gets the generic name of the degree course, +% “Electrical Engineering”. +% \Item[CorsoDiLaureaIn\marg{degree course generic name}] +% gets the generic name of the degree course, % for example “Bachelor Degree in”. -% \Item[TesiDiLaurea] gets the generic phrase that describes the +% \Item[TesiDiLaurea\marg{thesis generic name}] +% gets the generic phrase that describes the % thesis; by default it is “Tesi di Laurea”; in % English one might set it to “Master Thesis”. -% \Item[NomeMonografia] gets the phrase that describes the -% bachelor's report; by default it is “Monografia -% di Laurea”. In some Italian universities -% it might be called +% \Item[NomeMonografia\marg{bachelor's report name}] +% gets the phrase that describes the +% bachelor's final report; by default this +% package sets it tois “Monografia di Laurea”. +% In some Italian universities it might be called % “Tesi di Laurea”, so that the master thesis % should be given another qualification, for % example “Tesi di Laurea Magistrale”. -% \Item[NomeDissertazione] gets the phrase that describes the -% doctoral thesis; by default it is “Tesi di -% Dottorato”. -% \Item[InName] infix strings often require adjusting of the -% prepositions; this macro gets the preposition +% \Item[NomeDissertazione\marg{Ph.D. thesis name}] +% gets the phrase that describes the +% doctoral thesis; by default this package sets it to +% “Tesi di Dottorato”. +% \Item[InName\marg{‘in’ name}] +% infix strings often require that their prepositions +% are adjusted the; this macro gets the preposition % that stands for “in” (the default). In German % it might become “auf”. -% \Item[NomeAnnoAccademico] defines the infix string that stands for +% \Item[NomeAnnoAccademico\marg{academic year name}] +% defines the infix string that stands for % “Academic year”. This macro is defined only if % the option \opz{classica} is in force; % after all the command |\annoaccademico| is % defined only with that option. In any case, even % without the \opz{classica} option you can use % any string in the field of \cs{sedutadilaurea}. -% \Item[logosede] specifies the name of the file or the files that +% \Item[logosede\marg{logo file name}] +% specifies the name of the file or the files that % contain the university logos; no default is % defined; rather a warning message is issued if % no name is given or the file is missing, but @@ -1094,7 +1162,8 @@ School of Turin. % Erasmus Mundus program. The “string” of % logos is scaled properly so that they may fit % in |\textwidth|. -% \Item[setbindingcorrection] sets up the length to displace the text +% \Item[setbindingcorrection\marg{binding correction}] +% sets up the length to displace the text % block to the external margin so as to have a % wider internal margin to accommodate the binding % correction. Its argument is not optional and is @@ -1102,7 +1171,8 @@ School of Turin. % Notice that 7\,mm is already a large % displacement; most often than not the binding % correction is unnecessary. -% \Item[retrofrontespizio] with its argument, made up of one or more +% \Item[retrofrontespizio\marg{copyright page text}] +% with its argument, made up of one or more % paragraphs, defines what should be printed on the % verso of the title page, generally named % “copyright page”; if this command is specified @@ -1137,8 +1207,7 @@ School of Turin. % use of a specific environment within which the following % commands are available to set up the necessary information. % \begin{description}[noitemsep] -% \def\cs#1{\texttt{\char92#1}} -% \def\Item[#1]{\item[\normalfont\cs{#1}]} +% \def\Item[#1]{\item[\cs{#1}]} % % \item[\normalfont\ttfamily ThesisTitlePage] is the environment % within which the title page data are specified; some data are @@ -1152,11 +1221,10 @@ School of Turin. % may be optional; but personal data are never preset because, % obviously, they are mandatory. % -% \Item[PhDschoolLogo]\marg{logo file name} (preset: Logo-Scudo) -% selects an image -% specified by \meta{logo file name} to insert the school logo; -% a file logo \file{Logo-Scudo.jpg} is available from the ScuDo -% doctoral school; the students must ask such logo file from +% \Item[PhDschoolLogo\meta{logo file name}] (preset: Logo-Scudo) +% selects an image specified with \meta{logo file name} to insert the +% school logo; a file logo \file{Logo-Scudo.jpg} is available from the +% ScuDo doctoral school; the students must ask such logo file from % the Student Office, because such file is a legal property of % the School and can be used only with permission. In any case % the logo file must be of one of the allowed formats: \sigla{PDF}, @@ -1164,48 +1232,48 @@ School of Turin. % preferred, but they might not be available; raster files should % be of a minimum definition of 150 pixels per inch. % -% \Item[Ndissertation]\marg{dissertation name} (preset: Doctoral +% \Item[Ndissertation\marg{dissertation name}] (preset: Doctoral % Dissertation) specifies the specific name of the document. % -% \Item[Ndoctoralprogram]\marg{doctoral program} (preset: Doctoral +% \Item[Ndoctoralprogram\marg{doctoral program}] (preset: Doctoral % Program in) specifies the degree course name prefix. % -% \Item[ProgramName]\marg{program name} (mandatory: preset empty) +% \Item[ProgramName\marg{program name}] (mandatory: preset empty) % specifies the degree course name. % -% \Item[CycleNumber]\meta{ordinal number} (optional; preset +% \Item[CycleNumber\oarg{ordinal number}] (optional; preset % empty) specifies the ordinal number of the program cycle; at % ScuDo it is a mandatory information. In other doctoral schools % it might be useless. % -% \Item[title]\marg{dissertation title} (preset empty) sets the +% \Item[title\marg{dissertation title}] (preset empty) sets the % specific title of the dissertation; it is better to keep it % short, and use the sub title to add further titling information. % -% \Item[subtitle]\marg{dissertation subtitle} (optional: preset -% empty) adds a possible subtitle. +% \Item[subtitle\marg{dissertation subtitle}] (the whole command with its +% argument is optional) if used, it adds a subtitle. % -% \Item[author]\marg{author's name} (mandatory: preset +% \Item[author\marg{author's name}] (mandatory: preset % empty); it is recommended to pay attention to insert proper % name(s) first and surname(s) second. % -% \Item[Nsupervisor]\meta{Supervisor(s) heading} (preset: -% Supervisor:) specifies the short heading labelling the list +% \Item[Nsupervisor\meta{Supervisor(s) heading}] (preset: +% Supervisor:) specifies the short heading to the list % of supervisors; the preset value is singular and followed by % a colon. In case of more than one supervisor, it is necessary % to specify a plural name; the colon sign is optional. % -% \Item[SupervisorList]\marg{list of supervisors} (mandatory: +% \Item[SupervisorList\marg{list of supervisors}] (mandatory: % preset empty) specifies the list of supervisors, one per line, % with a |\\| at the end of each line; the name(s) and surname(s) % are preceded by their academic title, and followed by their % role as supervisor, or co-supervisor. % -% \Item[NExaminationCommittee]\marg{examination committee -% heading} (preset: Doctoral Examination Committee:) specifies -% the heading of the list of examiners. +% \Item[NExaminationCommittee\marg{examination committee +% heading}] (preset: Doctoral Examination Committee:) specifies +% the list-of-examiners heading. % -% \Item[ExaminerList]\marg{list of examiners} (preset empty) +% \Item[ExaminerList\marg{list of examiners}] (preset empty) % specifies the list of examiners, one per line, each line % terminated by |\\|; each line contains the academic title, % the name(s) and surname(s), the role (referee for the @@ -1213,19 +1281,19 @@ School of Turin. % institution they belong to -- full official institution name, % city and country. % -% \Item[Nlocation]\marg{examination location} (preset: +% \Item[Nlocation\marg{examination location}] (preset: % Politecnico di Torino) specifies the institution where the % examination takes place. % -% \Item[ExaminationDate]\marg{examination date} (preset empty) +% \Item[ExaminationDate\marg{examination date}] (preset empty) % specifies the date when the examination is to take place. % -% \Item[Disclaimer]\marg{disclaimer statement} (preset: some long -% sentences agreed upon by the ScuDo doctoral school) mandatory +% \Item[Disclaimer\marg{disclaimer statement}] (preset: some long +% sentences agreed upon with the ScuDo doctoral school) mandatory % in most universities; the specific statement(s) may be different % in different universities. % -% \Item[Signature]\marg{the author's signature} (preset: a few +% \Item[Signature\marg{the author's signature field}] (preset: a few % lines where the city is preset to “Turin”, and the date is % assumed to be equal to the examination date; also the signer % name is assumed equal to that of the dissertation author) @@ -1244,8 +1312,8 @@ School of Turin. % package. If the source thesis file is being typeset by means % of \XeLaTeX\ or \LuaLaTeX\ the \texttt{babel} package is not % loaded; in its place the \texttt{polyglossia} package gets -% loaded that should implement in \XeLaTeX\ and \LuaLaTeX\ most of -% the functionality provided by \texttt{babel} in \LaTeX. +% loaded; it should implement in \XeLaTeX\ and \LuaLaTeX\ most of +% the functionality provided by \texttt{babel} in \pdfLaTeX. % “Most” means that not all the functionality is available, % therefore it is better to consult the documentation of % \texttt{polyglossia} before using its built-in commands. @@ -1333,7 +1401,7 @@ School of Turin. % \subsection{Bibliography} % \textcolor{red}{The ScuDo module is the only one that preloads some % suitable packages to typeset one or more bibliographies. None of the -% other modules preload any bibliography management utility.} This is due +% other modules preloads any bibliography management utility.} This is due % to the fact that the module was originally developed for % typesetting PhD theses in the scientific domains related to the % Institute of Electrical and Electronics Engineers (IEEE); such @@ -1368,7 +1436,7 @@ School of Turin. % % The following description specifies these particular commands. % \begin{description}[noitemsep] -% \def\Item[#1]{\item[\normalfont\texttt{\char92#1}]} +% \def\Item[#1]{\item[\cs{#1}]} % % \Item[DeclareSlantedCapitalGreekLetters] does exactly what % its name means: it changes the definitions of the mathematical @@ -1376,13 +1444,12 @@ School of Turin. % they are actually taken from the math italic alphabet, % instead of the default roman one. This command is useful with % \LaTeX, while with \XeLaTeX\ and \LuaLaTeX\ it is unnecessary -% due to the larger set of math alphabets and math font commands +% due to the larger set of glyphs and math font commands % that are available with proper \sigla{UNICODE} math fonts and % options. % % \Item[ensuremath] should be already defined in the \LaTeX\ kernel; -% should one still be using an obsolete version, this command gets -% available anyhow. +%should you miss it for any reason, thei package provides it. % % % \Item[ohm] typesets an upright capital omega even if the % capital Greek letters are in italics; another good point @@ -1411,12 +1478,12 @@ School of Turin. % while avoiding a form such as \verb*+35 \unit{km}+. % This command, as it is defined, conflicts with the definition % of the homonymous command |\unit| as defined by some packages such as -% \texttt{unitx}, \texttt{siunitx}, etc., but since this latter package is -% necessarily input in the preamble, while \texttt{topcomand.sty} -% is read at the execution of |\begin{document}|, the latter file has -% provisions to test if any of those packages has already been loaded, -% so as not to overwrite the latter package definition and to avoid -% every possible conflict. +% \texttt{unitx}, \texttt{siunitx}, etc., but since one of these +% packages is necessarily input in the preamble, while +% \texttt{topcomand.sty} is read at the execution of |\begin{document}|, +% the latter file has provisions to test if any of those packages has +% already been loaded, so as not to overwrite the latter package +% definition and to avoid every possible conflict. % % % \Item[micro] sets the decimal prefix $\mu$ (providing, if % possible, the sign with serifs, \textmu, taken from the Text @@ -1448,18 +1515,18 @@ School of Turin. % type; since this entity is not a variable, but it is % a mathematical constant, the \sigla{ISO} regulations require it to % be typeset in upright type. The \sigla{ISO} regulations require the -% upright type for “e” and any other mathematical constant, -% but requires the electron charge $e$ is typeset in math italics because -% this is a physical “constant”, not a mathematical one. +% upright type for “e” and any other mathematical constant, but +% requires that the electron charge $e$ is typeset in math italics +% because this is a physical “constant”, not a mathematical one. % \XeTeX\ and \LuaLaTeX\ allow to typeset upright math Greek % letters, so there is the facility to typeset an upright % “{\usefont{LGR}{lmr}{m}{rs}p}” (the number) to be distinguished % from a slanted “$\pi$” (the angle). % % -% \Item[goodpagebreak] inserts a conditional page break after +% \Item[goodpagebreak\oarg{n}] inserts a conditional page break after % the point where this command appears; it is not equivalent to % the |\raggedbottom| declaration that does not vertically -% justify \emph{any} page; this command tests the amount of space +% justify \emph{any single} page; this command tests the amount of space % remaining on the page, and if it is less than a given number % of lines, it inserts a page break; the result is a ragged % bottom \emph{single} page, that sometimes is better than excessive @@ -1467,11 +1534,11 @@ School of Turin. % before or after displayed material. It is handy also to use % before starting a new section, because at least four % lines are required by \LaTeX\ in order to avoid orphan lines. -% \cs{goodpagebreak} accepts an optional argument that sets the +% \cs{goodpagebreak} accepts an optional argument\meta{n} that sets the % number of lines to test the necessary space for a break; % by default this number is~4. % -% \Item[listing] requires for its argument the name of a file +% \Item[listing\meta{filename}] requires for its argument the name of a file % and typesets it in verbatim mode; this command is very useful % for typesetting the listings of the programs that were written % for the thesis; for best results it is recommended that the @@ -1485,7 +1552,7 @@ School of Turin. % specified in the |fancyvrb| documentation for the original % command. The |fancyvrb| package was preferred to the |listings| % one, because it typesets verbatim material even while -% using font with multibyte encoding (therefore it works fine +% using font with multibyte encoded characters (therefore it works fine % with \XeLaTeX\ and \LuaLaTeX), while the fancier package % |listings| performs correctly only with \sigla{ascii} % characters and requires special settings to use selected characters @@ -1523,7 +1590,7 @@ School of Turin. % the due differences, this environment mimics the one defined % in the |toptesi-scudo| module. % -% The commands contained in this module are divided in there sorts. +% The commands contained in this module are divided in three sorts. % \begin{enumerate}[noitemsep] % \item % The commands to define the infix words, so as to use them @@ -1531,7 +1598,7 @@ School of Turin. % within a configuration file either to change the default % strings or to define them for languages different from % Italian; no attempt was made to establish such strings -% for English, because is is supposed the most often than +% for English, because is is supposed that most often than % not this module is used by Italian students to write their % bachelor degree final works in Italian universities; % nevertheless the possibility to change these strings is @@ -1569,7 +1636,7 @@ School of Turin. % % If a configuration file was loaded, the commands it contains % are overwritten by those that are specified within the -% |ThesisTitlePage| environment. So the user should pay attention +% |ThesisTitlePage| environment body. So the user should pay attention % to what the configuration file contains and to what s/he writes % within the |ThesisTilePage| environment, but if s/he uses again % a command already used in the configuration file, it should be @@ -1586,7 +1653,7 @@ School of Turin. % \begin{description}[noitemsep] %\def\Item[#1]{\item[\opz{#1}]} % -% \Item[evenboxes] The boxe containing the supervisor name(s) +% \Item[evenboxes] The box containing the supervisor name(s) % and that containing the candidate name(s) are typeset by % aligning their first lines; if this option is not specified % the boxes are skewed, so that there is enough place to set @@ -1628,7 +1695,7 @@ School of Turin. % command. In other words if this module is used, the user must % use the |ThesisTitlePage| environment only and does not have % available the various title page environments and commands -% available with the |topfont| package. +% available with the |topfront| package. % % This environment accepts an optional asterisk as an argument; % the syntax is the following: @@ -1649,62 +1716,68 @@ School of Turin. % The commands available with this module, divided into the three % groups described above, are the following. % \begin{description}[noitemsep] -% \def\Item[#1]{\item[\normalfont\cs{#1}]} +% \def\Item[#1]{\item[\cs{#1}]} % \item[String settings] % \begin{description}[noitemsep] -% \Item[NomeAnnoAccademico] Sets the default string for the -% “Academic Year”; by default it is “Anno accademico”. -% \Item[NomeCorso] sets the default string “Corso di laurea -% in” followed by an intelligent space. -% \Item[AnnoAccademico] sets a different string in place -% of the default “Anno Accademico” one. -% \Item[Struttura di] sets the default structure prefix; -% for example this prefix might be “Department of”, -% and the structure name entered with \cs{struttura} +% \Item[NomeAnnoAccademico\marg{academicyear string}] +% Sets the default string for the +% “Academic Year”; by default it is “Anno accademico”. +% \Item[NomeCorso\marg{Degree course name}] sets the default string +% “Corso di laurea in” followed by an intelligent space |\xspace|. +% \Item[AnnoAccademico\marg{substitute string for academic year}] +% Sets a different string in place of the default “Anno Accademico” +% one. +% \Item[Struttura di\marg{structure prefix}] sets the default +% structure prefix; for example, this prefix might be “Department of”, +% while the structure name entered with \cs{struttura} % might be “Electrical Engineering”; therefore the % title page is typeset with the complete string -% “Department of “Electrical Engineering”. The default +% “Department of “Electrical Engineering”. The default % string is in Italian, but by using this command, % remember to enter the string you need terminated by % the intelligent space macro \cs{xspace}. -% \Item[CorsoDiStudi] sets the default string for the -% degree course type; it might be “Laurea triennale”, +% \Item[CorsoDiStudi\marg{degree course name}] sets the default +% string for the degree course type; it might be “Laurea triennale”, % or “Bachelor degree” or similar strings in other -% languages. It replaces the obsolete following command: -% \Item[CorsoDiLaureaIn] that remains available with the backwards -% compatible |topfront| standard module. -% \Item[NomeElaborato] Sets the name that qualifies the +% languages. It replaces the \emph{obsolete} following command: +% \Item[CorsoDiLaureaIn\marg{degree course name}] +% Remains available to be backwards compatible with +% |topfront| standard module command; its use is \emph{discouraged}. +% \Item[NomeElaborato\marg{thesis name}] +% Sets the name that qualifies the % document; by default it is “Monografia”, but this % user command may be used to set it, for example, to % “Tesi di laurea triennale”, or anything else in % Italian, in English, or the used main language. % The |topfront| command |\NomeMonografia| is let to % to |\NomeElaborato| for backwards compatibility and its -% use is evidently discouraged. -% \Item[CandidateNames] sets the labelling command for the -% box that lists the candidate names; by default these names are the +% use is evidently \emph{discouraged}. +% \Item[CandidateNames\marg{candidate list headings}] +% Sets the labelling command for the +% list of the candidate names; by default these names are the % masculine, feminine, singular and plural Italian names % starting with “Candidato”; if the \opz{classica} option % is in force they start with “Laureando”; -% the user couldn use this command which it has a non standard syntax +% the user could use this command which has a non standard syntax % (delimited arguments); therefore it is suggested that % end users refrain from using it, unless they know how to handle % the delimited argument commands. % This command sets the four strings to any desired value, % if, as in English, there is no difference between masculine -% and feminine, repeat the same name for the feminine positions, +% and feminine, repeat the same names for the feminine positions, % the last ones; the syntax in facts is the following: %\begin{ttsintassi} -%\cs{CandidateNames},\% +%\cs{CandidateNames}\% %\qquad\marg{masculine singular},\% %\qquad\marg{masculine plural},\% %\qquad\marg{feminine singular},\% %\qquad\marg{feminine plural},! %\end{ttsintassi} -% \Item[TitoloListaCandidati] is a much simpler command the user -% should prefer to the previous one; in facts it accepts a single -% argument formed by a comma separated list of names; from zero -% up to four names (in the same order as described above). +% \Item[TitoloListaCandidati\marg{candidate list headings}] +% is a much simpler command the user should prefer to the +% previous one; in facts it accepts a single argument formed +% by a comma separated list of names; from zero up to four names +% (in the same order as described above). % Therefore the following commands are all valid ones: %\begin{ttsintassi}\small% %\cs{TitoloListaCandidati}\Marg{} @@ -1712,63 +1785,68 @@ School of Turin. %\cs{TitoloListaCandidati}\Marg{Estudiante,Estudiantes} %\cs{TitoloListaCandidati}\Marg{Kandidat,Kandidaten,Kandidatin,Kandidatinen} %\end{ttsintassi} -% \Item[CandidateName] this command used to be the default one +% \Item[CandidateName\marg{candidate list heading}] +% This command used to be the default one % with the standard |topfront| module, and remains available -% with this package; it sets just one name (disregarding -% singular/plural and masculine/feminine variants) to substitute +% with this package; it sets just one name to substitute % the default ones. Please notice that this command is not % available with the other thesis type options. -% \Item[Relatore] Sets the string that labels -% the supervisor box; by default it is the Italian -% name “Relatore”; the command my be used to set +% \Item[Relatore\marg{advisor list heading}] +% Sets the string that labels the supervisor box; by default +% it is the Italian name “Relatore”; the command may be used to set % any different string. -% \Item[Correlatore] sets the string that -% labels the list of co-superpervisors when there is -% just one “second” supervisor. -% \Item[Correlatori] sets the string that -% labels the list of co-supervisors when there are -% three supervisors, a supervisor and two co-supervisors. +% \Item[Correlatore\marg{co-advisor list heading}] +% Sets the string that labels the list of co-superpervisor when +% there is just one “second” supervisor; in facts, with just one +% co-supervisor the heading it the singular name “Correlatore”. +% \Item[Correlatori\marg{co-advisor list heading}] +% Sets the heading of the list of co-supervisors when there are +% a supervisor and two co-supervisors. % \end{description} % \item[Variable data settings] % \begin{description}[noitemsep] -% \Item[titolo] sets the bachelor degree final work title. +% \Item[titolo\marg{title}] +% Sets the bachelor degree final work title. % The main module |topfront| uses in its place the command % \cs{monografia}; the user can still use the old command, % but |\titolo| is more descriptive. -% \Item[sottotitolo] sets the optional subtitle. +% \Item[sottotitolo\marg{subtitle}] Sets an optional subtitle. % \Item[corsodistudi] and \cs{corsodilaurea} specify the actual % name of the degree course; \cs{corsodistudi} should be -% preferred; \cs{corsodilaurea} is deprecated, but is maintained -% for backwards compatibility. -% \Item[materia] and \cs{Materia} set the optional discipline -% the thesis deals with. -% \Item[relatore] sets the name of the only or the principal -% supervisor. -% \Item[secondorelatore] sets the name of a second supervisor, -% if any. -% \Item[terzorelatore] sets the name of a third supervisor, -% if any. -% \Item[candidato] sets the name of the first or only ‘M’ -% candidate; in general bachelor degree final works are -% done by just one candidate but, in case, there are +% preferred; \cs{corsodilaurea} is \emph{deprecated}, but is +% maintained for backwards compatibility. +% \Item[materia\marg{discipline}] and \cs{Materia}\marg{discipline} +% set the optional discipline the thesis deals with. +% \Item[relatore\marg{advisor's name}] sets the name of the only +% or the principal supervisor. +% \Item[secondorelatore\marg{second advisor's name}] sets the +% name of a second supervisor, if any. +% \Item[terzorelatore\marg{third advisor name}] sets the name of +% a third supervisor, if any. +% \Item[candidato\marg{candidate name (man)}] sets the name of the +% first or only ‘M’ candidate; in general bachelor degree final +% works are done by just one candidate but, in case, there are % available also the commands for a second and a third % candidate. Masculine and feminine commands are available -% and the heading of the candidates box il labelled accordingly. -% \Item[candidata] sets the name of the first or only ‘F’ -% candidate. -% \item[\normalfont\cs{secondocandidato} or \cs{secondacanddata}] -% set the names of a possible second ‘M’ or ‘F’ candidate. -% \item[\normalfont\cs{terzocandidato} or \cs{terzacandidata}] -% set the names of a possible ‘M’ or ‘F’ third candidate. -% \Item[ID] to be used just after the candidate's name, but as -% part of the setting command argument, establishes the +% and the heading of the candidates list is labelled accordingly. +% \Item[candidata\marg{candidate name (woman)}] sets the name of the +% first or only ‘W’ candidate. +% \Item[secondocandidato\marg{second M candidate}] or +% \cs{secondacanddata}\marg{second W candidate} +% set the name for a possible second ‘M’ or ‘W’ candidate. +% \Item[terzocandidato\marg{third M candidate}] or +% \cs{terzacandidata}\marg{third W can\-didate} +% set the name for a possible ‘M’ or ‘W’ third candidate. +% \Item[ID\marg{ID code}] to be used just after the candidate's name, +% but as part of the setting command argument, establishes the % candidate's ID label string |\IDlabel| that prefixes the % candidate's ID number. The user should not worry about this string, % unless s/he wants to modify it; by default it is set to -% |\\\quad matricola\ |; in other words, the ID number is set +% \verb+\\\quad matricola\ +; in other words, the ID number is set % indented under the candidate's name and a space is put between % the string and the number. -% \Item[sedutadilaurea] sets the date of the final examination; +% \Item[sedutadilaurea\marg{examination date}] +% sets the date of the final examination; % by default the current month and year are typeset if this % command is not specified; but the user can specify anything; % s/he can even prefix the year range with the @@ -1777,22 +1855,25 @@ School of Turin. % suitable command of group~1) a string equivalent to % “Academic Year”; in any case the user can write down what % s/he likes best in place of the predefined value. -% \Item[NomeAteneo] sets the proper name of a specific -% university; it will be typeset in suitable uppercase type -% under the generic name of the university; if this command -% is not used, no name gets typeset in the title page. -% \Item[struttura] sets the name of the university entity +% \Item[NomeAteneo\marg{University name}] +% sets the proper name of a specific university; it will be +% typeset in suitable uppercase type under the generic name of the +% university; if this command is not used, no name gets typeset +% in the title page. +% \Item[struttura\oarg{ordinal number}\marg{Structure name}] +% sets the name of the university entity % that supervises the development of the degree course; % it may be a “faculty”, a “department”, a “school”, % it depends from the specific university. Some universities % do not require this information on the title page. In any % case if this command is used it accepts two arguments: % the first one is optional, and, if used, is an uppercase -% roman numeral that indicates the ordinal of the structure; +% roman ordinal numeral that distinguishes the structure; % the second argument is the complete structure name. -% \Item[setlogodistance] sets the distance between adjacent -% university logos, if more then one is used. -% \Item[logosede] sets the name of a graphics file that +% \Item[setlogodistance\marg{distance}] sets the distance between +% adjacent university logos, if more than one are used. +% \Item[logosede\oarg{height}\marg{logo file name}] +% sets the name of a graphics file that % contains the logo of the university; the default value of % this command il \cs{empty}; this macro may be used several % times, in case the bachelor degree final work is developed @@ -1811,22 +1892,21 @@ School of Turin. % it is suggested not to vary it too much. The \cs{logosede} % accepts an optional value that is the common height of the % logos; this possibility does exist but it is strongly -% discouraged. -% \Item[tutoreaziendale] set the name of a possible company -% tutor, in case the final work is developed in a Company -% external to the university +% \emph{discouraged}. +% \Item[tutoreaziendale\marg{company tutor name}] +% set the name of a possible company tutor, in case the final +% work is developed in a Company external to the university % \end{description} % \end{description} % % \section{The module for a master degree thesis} %\label{sec:topmagistrale} % -% The module for the master degree thesis, -% |toptesi-magistrale.sty| is almost identical to the generic -% module |topfront|; the obvious differences are that it -% lacks the latter module commands that refer to the bachelor -% degree or the Ph.D.~theses. Evidently such specific commands -% are useless in a master degree thesis. +% The module for the master degree thesis, |toptesi-magistrale.sty| +% is almost identical to the generic module |topfront|; the obvious +% differences are that it lacks the latter module commands that refer +% to the bachelor degree or the Ph.D.~theses. Evidently such specific +% commands are useless in a master degree thesis. % % \begin{sloppypar} % Such eliminated commands include |\manografia|, @@ -1843,7 +1923,7 @@ School of Turin. % of the |\tomo| command that requires a preliminary % specification of all the necessary data before |\tomo| % can play its role; it actually uses the |\frontespizio| -% environmnet, but before the |tomo| counter is stepped up. +% environment, but before the |tomo| counter is stepped up. % % This allows to typeset the various tomes in a single % document, so that the user can cross-reference elements @@ -1858,7 +1938,7 @@ School of Turin. % the cross-linked navigation from one point to another. % % The draw back of this procedure is that splitting the -% single \sigla{PDf} file in several files require another processing +% single \sigla{PDf} file in several files requires another processing % job, and any editing of the source thesis files may require % repeating this splitting job because the number of pages % may be modified and/or cross references do not point @@ -1876,10 +1956,10 @@ School of Turin. % files; when printed they are substantially identical to % the split documents obtained with the previous approach % but it simply avoids splitting the single document file -% in several files. The drawback is thet if hyperlinked cross-referencing +% in several files. The drawback is that if hyperlinked cross-referencing % is used, each tome is correctly hyperlinked to its -% internal targets, but no cross-referencing can be -% automatically done to items in other tomes. I do not +% internal targets, but no cross-referencing can +% automatically be done to items in other tomes. I do not % think this is a real draw back in practical situations, % but of course it produces a limitation to reading the % tomes on the screen. @@ -1902,7 +1982,7 @@ School of Turin. % definition of the |\tomo| command; adds the |ThesisTitlePage| % environment within which the configuration file is read and where all % commands for the title page data are to be inserted. The -% peculiarity of thes environment is that the possible asterisk +% peculiarity of this environment is that the possible asterisk % necessary to switch from the the logos set in the title page % lower half (no asterisk) to the logos at the page top % (asterisk) must be inserted the same way as in the other @@ -1910,6 +1990,7 @@ School of Turin. % the environment. % % \section{The Ph.D.\ module for general use} +% % Except for the ScuDo theses, for which the University % specified the necessary requirements for both contents % and appearance of the title page, we provide a generic @@ -1950,9 +2031,10 @@ School of Turin. % his/her custom title page and would not use this module at all. % % \section{The custom module for the title-page}\label{sec:custom} +% % The construction of the customised title page module is the full % responsibility of the user. -% In facts the user, beyond specifying the |tipotesi=custom| +% In facts the user, beyond specifying the |tipotesi=custom| option % to the |toptesi| class class, at the beginning of the % document explicitly inputs a personal package file, say % |mycustomfile.sty| by means of the simple @@ -1976,7 +2058,7 @@ School of Turin. % a custom title page. % % We don't go further in describing the |tipotesi=custom| option, -% except remembering the this option just inhibits loading both +% except remembering that this option just inhibits loading both % the standard default module, and any other predefined module, unless the % user directly loads one with or without the specific module options. % @@ -1984,7 +2066,7 @@ School of Turin. % % The suffix |sss| is the acronym for the Italian name of % “High School”, \emph{Scuola Secondaria Superiore}. -% Elegance of bureaucratic language; the elementary school +% Elegance of bureaucratic language: the elementary school % now is `Scuola Primaria', and junior high school is `Scuola % Secondaria Inferiore'. As well as it was in Germany and % in some Swiss Cantons, the total number of school years @@ -2047,7 +2129,7 @@ School of Turin. % % Of course their title page must be very different from those % suitable for university theses, therefore a special module is -% necessary, and I decided to to add such a module to this bundle. +% necessary, and we decided to to add such a module to this bundle. % % Actually high school students require less information on the % title page; the school generic and proper names, obviously the @@ -2117,7 +2199,7 @@ School of Turin. % Service packages such as |xparse|, |xspace|, and |xcolor| % are already loaded for the benefit of this bundle and this % module, but the user is free to use their functionalities, -% mostly those of |xcolor|. +% in particular those of |xcolor|. %\item % Packages |calc| and |ifthen| are functional for the module; % supposedly the end users should not have any necessity to use @@ -2163,135 +2245,90 @@ School of Turin. % saved in the same folder. % % The title page commands are the following: -%\begin{description}\def\Item[#1]{\item[\normalfont\cs{#1}]} -%\Item[SSSLogo] +%\begin{description}\def\Item[#1]{\item[\cs{#1}]} +%\Item[SSSLogo\marg{school logo file name}] % is used to define the name of the graphic file containing % the high school logo; not necessarily the school allows to % use its logo; in any case if such command is not used, the -% logo information is ignored. The syntax is -% \begin{ttsintassi} -% \cs{SSSLogo}\marg{file name} -% \end{ttsintassi} +% logo information is ignored. % Remember that the graphic file must have one of these % extensions: |.pdf|, |.eps|, |.png|, or |.jpg|; the first % two may contains vector images and give the best results; % the second two are bitmapped, therefore their rendering % depends very much on the pixel density of the file contents. -%\Item[NomeTesina] sets the name of the document; the default value -% is “Tesina di maturità”. Syntax: -% \begin{ttsintassi} -% \cs{NomeTesina}\marg{nome dell'elaborato} -% \end{ttsintassi} -%\Item[NomeCandidato] -% is used to set the label to typeset over the author's name; -% default “Studente” or “Studentessa” depending on the -% state of the boolean switch |femminile|, but if this command -% is used for the user tesina, s/he needs not to specify any -% switch and uses the only name necessary for his/her document. -% Syntax: -% \begin{ttsintassi} -% \cs{NomeCandidato}{examinand label} -% \end{ttsintassi} -% This command might be used to set the label with a different +%\Item[NomeTesina\marg{document name}] +% sets the name of the document; the default value +% is “Tesina di maturità”. +%\Item[NomeCandidato\marg{heading over the candidate name}] +% is used to set the heading over the author's name; since +% the “tesina” is individual, the default value is +% “Studente” or “Studentessa” depending on his/her gender. +% See below the \cs{studente} and \cs{studentessa} command descriptions. +% This command might be used also to set the heading with a different % name in the correct gender. -%\Item[IndirizzoMiur] +%\Item[IndirizzoMiur\marg{Ministry of Education special address}] % sets the Ministry of Education special address. If this % command is omitted, this address, considered optional, -% is neglected. Syntax: -% \begin{ttsintassi} -% \cs{IndirizzoMiur}\marg{Ministry of Education special address} -% \end{ttsintassi} -%\Item[OpzioneMiur] +% is neglected. +%\Item[OpzioneMiur\marg{Ministry of Education option}] % sets the specification that distinguishes the school -% mission, if any. Syntax: -% \begin{ttsintassi} -% \cs{OpzioneMiur}\marg{Ministry of Education option} -% \end{ttsintassi} -%\Item[TipoScuola] +% mission, if any. +%\Item[TipoScuola\marg{generic school name}] % sets the specific generic name of the school; default % none; therefore use of this commands is mandatory; % the user might specify “Liceo classico”, or “Istituto % tecnico industriale di stato”, or whatever applies for -% the students' specific school. Syntax: -% \begin{ttsintassi} -% \cs{TipoScuola}\marg{generic school name} -% \end{ttsintassi} -%\Item[NomeScuola] +% the students' specific school. +%\Item[NomeScuola\marg{specific school name}] % sets the specific name of the school; generally schools % are dedicated to famous scientists or heroes, or presidents, % or kings/queens, or writers, et cetera; default “empty”. -% Syntax: -% \begin{ttsintassi} -% \cs{NomeScuola}\marg{specific school name} -% \end{ttsintassi} -%\Item[SedeScuola] +%\Item[SedeScuola\marg{school address}] % sets the actual location of the school; it may be just the % city or a full postal address; it may contain new line % commands in order to format a full address of several lines; -% no default. Syntax: -% \begin{ttsintassi} -% \cs{SedeScuola}\marg{the school basic or full address} -% \end{ttsintassi} -%\Item[AnnoScolastico] +% no default. +%\Item[AnnoScolastico\marg{school year}] % sets the school year at the end of which the state -% examination is undertaken; no default. Syntax: -% \begin{ttsintassi} -% \cs{AnnoScolastico}\marg{school year} -% \end{ttsintassi} -%\Item[titolo] +% examination is undertaken; no default. +%\Item[titolo\marg{document main title}] % sets the title of the document; please don't use long titles; % if a short sentence is not descriptive enough, use the % |\sottotitolo| argument to add specifications to the title; -% no default. Syntax: -% \begin{ttsintassi} -% \cs{titolo}\marg{main title} -% \end{ttsintassi} -%\Item[sottotitolo] +% no default. +%\Item[sottotitolo\marg{document substitle}] % sets an optional subtitle; if this command is not used -% the subtitle field is ignored; no default. Syntax: -% \begin{ttsintassi} -% \cs{sottotitolo}\marg{optional subtitle} -% \end{ttsintassi} +% the subtitle field is ignored; no default. % The subtitle, if any, is typeset in a normal sized font, % therefore it can be several lines long; nevertheless pay % attention to use the tie command |~| to connect with an % unbreakable space to the following ones such words as % prepositions, articles, short adverbs, and such similar % items. -%\Item[studente] or \cs{studentessa}, depending on the gender +%\Item[studente\marg{student name (Man)}] or +% \cs{studentessa}\marg{student name {Woman}}, depending on the gender % of the student, sets the name of the author of the % document, i.e.\ the name of the student undergoing the -% examination; no default. Syntax: -% \begin{ttsintassi} -% \cs{studente}\marg{proper name(s) followed by the surname(s)} -% \cs{studentessa}\marg{proper name(s) followed by the surname(s)} -% \end{ttsintassi} -% Remember: \textbf{never ever use the surname(s) before -% the name(s)}. +% examination; no default. +% Remember: \textbf{never ever use the surname(s) before the name(s)}. % If the \cs{NomeCandidato} macro has not been used, these commands % set the proper status to the |femminile| switch, so that the -% proper default label is used. -%\Item[Presidente] +% proper default heading is used. +%\Item[Presidente\marg{chairperson name}] % sets the name of the chairperson of the examining committee; -% no default. Syntax: -% \begin{ttsintassi} -% \cs{Presidente}\marg{examining committee chairperson full name} -% \end{ttsintassi} +% no default. % Again remember to write the necessary academic titles -% in lowercase, end the name(s) before the surname(s). -%\Item[NumeroCommissione] -% sets the examining committee ID number; no default.Syntax: -% \begin{ttsintassi} -% \cs{NumeroCommissione}\marg{Examing committee ID number} -% \end{ttsintassi} +% in lowercase, and the name(s) before the surname(s). +%\Item[NumeroCommissione\marg{Examining committee ID number}] +% sets the examining committee ID number; no default. %\end{description} % % The actual title page is created within the environment % |FrontespizioTesina|. This environment first reads a the % configuration file if one exists, then it analyses the -% commands possibly set within the environment by the author, +% commands set within the environment by the author, % possibly superseding the information read from the -% configuration file; the closing commands actually typeset +% configuration file; the environment closing command actually typesets % the title page; the schematic working is the following: %\begin{flushleft}\ttfamily\obeylines %\Bambiente{FrontespizioTesina} \% reads the config.\ file if any @@ -2304,7 +2341,7 @@ School of Turin. % up the text grid in a sensible way. No doubt some users may % complain that the title page does not allow to do this or % that; that the spacings should be different from what they -% actually are. +% actually are; and so on. % % There are work-arounds to these complains. %\begin{enumerate}[noitemsep] @@ -2349,10 +2386,10 @@ School of Turin. % this regulation have been published. This regulation defines % a \sigla{PDF} variant suitable for archiving, named \sigla{PDF/A}, that % has two sub-formats distinguished as \sigla{PDF/A}-1a, and -% \sigla{PDF/A}-1b. +% \sigla{PDF/A}-1b, \sigla{PDF/A-2a}, \sigla{PDF/A-2b}. and so on. % The `a' sub-format is more exacting, while the `b' one is less % stringent. In spite of the recently published upgrades, -% here we stick to the older ones, that are a sub set of the +% here we stick to the PFD/A-b and PDF/A-2b, that are a sub set of the % newer ones, and for which suitable software is available. % % The requirements for the `a' sub-format imply not only those @@ -2360,7 +2397,7 @@ School of Turin. % of the document be accessible from outside (Tagged \sigla{PDF}). % The requirements for the `b' sub-format are that the % document must be reproducible without modifications exactly -% as it was at the moment of archiving. Both sub-formats must +% as it was at the moment of archiving. All sub-formats must % contain \emph{metadata} that are searchable even without % decompressing the normally compressed \sigla{PDF} file, and that % contain information useful for archive maintenance; among @@ -2373,16 +2410,18 @@ School of Turin. % of producing \sigla{PDF/A}-1b compliant files, provided that some % attention is put into editing of the thesis source file. Since the % year 2008 the \TeX\ system, the executable \texttt{pdflatex} has -% version number 1.40.9 (or higher); therefore today there should not -% be any difficulty in producing \sigla{pdf/a} compliant documents. +% version number 1.40.9 (or higher); therefore today there is no +% difficulty in producing \sigla{pdf/a} compliant documents, even at +% level~2. % % The particular attention needed to avoid problems with the % \sigla{PDF/A} compliance is summarised as follows: % \begin{enumerate}[noitemsep] % \item % The preliminary essential requirement is that the -% \texttt{pdflatex} engine used to typeset the thesis be -% sufficiently recent to support the \sigla{PDF/A} requirements. +% \texttt{pdflatex} or \texttt{lualatex} engine used +% to typeset the thesis be sufficiently recent to support +% the \sigla{PDF/A} requirements. % It's better to have the most recent distribution of % the \TeX\ system installed on your PC. Do not try to % typeset the thesis with the `old' \prog{latex}; you @@ -2415,21 +2454,8 @@ School of Turin. % contain the package \textsf{pdfx}; if it does not, % upgrade your \TeX\ system complete distribution. Be sure % that the version number of the \pack{pdfx} package has -% version number~1.5.8 or higher. +% version number~1.6.0 or higher. % -% \item -% In the 2018 version of \TeXLive, with the upgrade of |pdfx| -% a glitch emerged due to licence questions; the |sRGB.icc| distributed -% with earlier versions was under a limited licence that is not -% compliant with the free nature of the \TeX\ system. The maintainers -% are aware of this problem and, while they are further upgrading the -% \pack{pdfx} file, they suggest a work-around (that will be described -% below); it is possible that when you read this documentations the -% work-around, described below, is not necessary any more. -% With version 1.61 of \pack{pdfx} the problem is solved even if one uses -% a \TeXLive\ installation prior to the one distributed in the year 2018. -% In any case the most recent version 1.61 or higher of |pdfx| is -% necessary. % % \item % If your thesis main file, the one you run your typesetting @@ -2447,40 +2473,31 @@ School of Turin. % The keyword list requires a specific format that can be % examined in the |pdfx| package documentation. The best way to % be sure that this file accompanies the thesis main file, -% is to put its contents in a \env{filecontents*} environment. +% is to put its contents inside a \env{filecontents*} environment. % The details are in the documentation of the \pack{pdfx} package and % examples are shown in the Italian documentation of |TOPtesi|. -% In order to override the constraints of the \LaTeX\ kernel -% |filecontents| environment, TOPtesi loads the package |filecontents| -% that eliminates the mentioned constraints, but requires that the -% environment be used within the preamble, in any case before +% The environment may used within the preamble, in any case before % loading the |pdfx| package. Actually this does not forbid to use the % environment before the |\documentclass| statement, as it was in the -% previous versions of TOPtesi. The new version is backwards compatible -% with the previous ones with this simple difference: when the environment -% is used before the |\documentclass| statement, any modification of -% its contents does not take place unless the previous |xmpdata| file -% is deleted, because the kernel environment does not overwrite existing -% files; on the opposite, if the environment is used after the -% |\documentclass| statement ,the |xmpdata| file is simply overwritten -% without the need to delete a previous version. -% -% The work-around mentioned above consists in adding another line -% at the very end of the metadata file; it looks like this: -%\begin{verbatim} -%\setRGBcolorprofile{sRGB.icc}{sRGB}{Argyll CMS, sRGB color profile}% -%{https://www.argyllcms.com/} -%\end{verbatim} -% Thanks to the new |filecontents| functionalities there is no need -% to delete a previous |.xmpdata| file. But, as specified above, this -% work-around is not necessary anymore if the most recent version 1.6.1 -% or later of \pack{pdfx} is used; this work-around information is -% maintained in this documentation just for backwards compatibility. -% -% This work-around is required if you get an error message that -% refers to line 1084 of the |pdfx.sty| file; if you don't patch -% the metadata file and you do not get the above error, it means -% that the |pdfx| package has already been corrected. +% previous versions of TOPtesi. The new version of environment +% \env{filecontents} is backwards compatible with the previous +% ones with this “simple” difference: it accepts some options +% the most important of which are \opz{overwrite} and \opz{noheader}; +% the latter avoids inserting header comment lines into the saved +% file, while the former allows overwriting it at each +% compilation. Omitting \opz{overwrite} the environment does not +% overwrite an existing |.xmpdata| file; so that if some modification +% has been made to the source lines within the environment, such +% modifications do not get saved in the metadata file. \textcolor{red}{Such +% behaviour of the |filecontents| environment was introduced by the +% end of 2019; therefore if you are using the options but have a +% vintage version of the \TeX system you get errors. You are warned: +% never use vintage versions of the \TeX system, but be careful to +% maintain your (complete) installation up to date}. To avoid this +% situation and be totally transparent with respect to the date of +% the \LaTeX kernel date, we introduce a new environment named +% \env{pdfxmetadata} that performs the necessary controls and hides +% such differences to the user. % % \item % Some mathematical symbol commands obtained from the standard @@ -2488,30 +2505,31 @@ School of Turin. % some patching that is already included in this \texttt{TOPtesi} % bundle; but it is not excluded that with other fonts similar % patches might be requested. The \sigla{UNICODE} math fonts used -% by \XeLaTeX\ and \LuaLaTeX\ do not require any patch. +% by \XeLaTeX\ and \LuaLaTeX\ do not require any patch. If you seek +% conformance with level~2, this patch is not needed. % % \item % Use only \sigla{PNG} and \sigla{JPG} images with \sigla{RGB} color % profiles. But if a \sigla{PNG} image file contains some transparencies, % the document \sigla{PDF} cannot be validated as \sigla{PDF/A}-1b -% compliant. +% compliant, but it can with \sigla{pdf/a-2b}. % % \item % If you include \sigla{PDF} images that contain some text, be sure % that the fonts for this text are completely embedded in -% the included files. Should the \sigla{PDF} files come from an external -% drawing program be sure to configure that program so that +% the included files. Should the \sigla{PDF} files come from external +% drawing programs, be sure to configure that program so that % it embeds all the fonts used in each image. If you don't % succeed, open the \sigla{PDF} file with the free software % \texttt{inkscape} and save it back in \sigla{PDF} format; the % missing fonts will be replaced with their outlines and % this will not disturb the \sigla{PDF/A} conformity. Pay attention, % because Inkscape might save your file with some -% specifications for transparency; but transparency -% specifications destroy the \sigla{PDF/A} compliance. +% specifications for transparency; but transparency specifications +% destroy the \sigla{PDF/A-1b} compliance, not the \sigla{pdf/a-2b} one. % Should this inconvenience take place, instead of asking % \texttt{inkscape} to save in \sigla{PDF} format, ask to save in -% \sigla{EPS} format; this one does not support transparencies, +% \sigla{EPS} format; this format does not support transparencies, % therefore they get abolished from the very beginning. This is useful % also when \texttt{inkscape} is used to change the color % profile of an image. Once this program is used to convert an @@ -2520,9 +2538,9 @@ School of Turin. % |\includegraphics|; all the suggested typesetting programs, % \prog{pdflatex} included, can import \sigla{EPS} files, therefore % these problems, thanks \texttt{inkscape} may be easily overridden. -% Once you got the corrected EPS file, you might distill it to PDF, -% so as to compress it in a compatible way; EPS files are generally -% human readable so they are very large in terms of memory size. +% Even better, once you got the corrected EPS file, you might distill +% it to PDF, so as to compress it in a compatible way; EPS files are +% generally human readable so they are very large in terms of memory size. % % \item % Verify your final \sigla{PDF} file with a suitable program and @@ -2530,12 +2548,12 @@ School of Turin. % modifications while the verification program keeps saying % that this or that is not compliant with the \sigla{PDF/A} % specification. A suitable program is the Preflight module -% of Adobe Acrobat Pro~XI (or later), but this, although the most -% authoritative, is a commercial program; probably your +% of Adobe Acrobat Pro~XI (or later); this is the most +% authoritative, but it is a commercial program; probably your % university has special facilities for this task. In any -% case you can install the \prog{veraPDF} free software +% case you can install the \prog{veraPDF} free and open software % from the Internet, and use this handy verification program -% (in 2017 the stable release was made available). +% (since 2017 the program is stable). % %\end{enumerate} % @@ -2559,8 +2577,8 @@ School of Turin. % programs, that, on the opposite, according to my experience, % have a very high rate of success in producing \sigla{PDF/A} % compliant documents. If you stick to the default \TeX\ system -% Type~1, 256-glyph fonts, or to the \sigla{UNICODE} encoded otf -% or ttf fonts and use this version of the TOPtesi bundle +% Type~1, 256-glyph fonts, or to the \sigla{UNICODE} encoded OpenType +% or TrueType fonts and use this version of the TOPtesi bundle % you should be able to avoid most problems. % % \section{Customisation}\label{sec:LPPL} @@ -2579,7 +2597,7 @@ School of Turin. % |\mainmatter|, and |\backmatter|; what appears in the table of % contents; and so on. % -% Nevertheless, in spite of being discouraged, some user might +% Nevertheless, in spite of being discouraged, some user might % want to customise some details. There are several ways to do % such customisation that conform the LPPL. % @@ -2588,21 +2606,21 @@ School of Turin. % although the original author and licence are maintained in their % initial comments, and that the file maintainer name is changed so % that any user of the modified version knows to whom address -% him/herself in case of need; the original author is not responsible +% him/herself in case of need; the original author is not responsible % of any modified file.} % % \paragraph{Direct modification} % In order to make a direct modification to any original file, first % duplicate the original file and change name to the duplicated file; -% the modify this copy name and make the changes that are deemed +% then modify this copy name and make the changes that are deemed % necessary, without forgetting to delete my name as the maintainer % while adding your name; it would be useful if some comments are -% added so as to describe what has benne modified, why and how. +% added so as to describe what has been modified, why and how. % % Remember to change accordingly the references to the modified % file(s) in the other bundle files; this implies that all the % bundle files get modified and that their names must be changed -% accordingly while modifying the initial comment lines so as to +% accordingly while modifying the initial comment lines so as to % delete my name as the maintainer. % % \paragraph{Modification of single commands and/or environments} @@ -2615,7 +2633,7 @@ School of Turin. % input with a |\usepackage| command inside the argument of % another |\AtBeginDocument| command; modify your personal file % the way you like, and test the result. - +% % If your modifications do not produce any difference in the % output PDF file, then you have to load your modified file after % the |\begin{document}| line. In this case you have to change @@ -2624,8 +2642,9 @@ School of Turin. % finish it with a |\makeatother| commands, since many macros % used inside the original code are “protected” with an |@| sign % with its category code changed to “letter”. Needless to say that -% in order to suse thei |.tex| file, the |\input| command must be -% used in place of the |\usepackage| one. +% in order to use this |.tex| file after the |begin{document}| +% statement, the |\input| command must be used in place of the +% |\usepackage| one. % % \paragraph{Command patching} % A third way to modify some commands and/or environments is to @@ -2653,7 +2672,7 @@ School of Turin. % \TeX\ format and for sharing some code between the driver % and the class part of the code, since they are supposed to % carry the same date and version number, besides their specific -% description string. +% description string.For these reasons such machinery has already been set at the very beginning of this \file{.dtx} file. % \iffalse %<*class> % \fi @@ -2685,27 +2704,33 @@ School of Turin. % be specified with their |\setotherlanguage| or |\setotherlanguages| % commands which do not change the preset main language. % -% The |filecontents| package is loaded: it removes the constraints -% the original kernel environment |filecontents|, with or without -% the asterisk, sets up for its use. In particular that what is -% contained in the environment gets saved in the named file, only -% if the named file does not exist. This implies that if some -% changes are introduced in the environment contents, such changes -% do not get saved in the named file unless a pre\-existing file is -% deleted. +% The |filecontents| package used to be loaded in the previous versions +% of TOPtesi, in oder to create the |.xmpdata| file containing the +% metadata necessary to produce PDF/A compliant files. Its +% functionalities are now included in the \LaTeX kernel |filecontents| +% environment; therefore it is no longer needed; in any case it is +% easier to use environment defined in TOPtesi for this specific +% task; it relies on some low level native \TeX code contained +% in package |fancyvfb|; here we load it: the new environment +% |pdfxmetadata| is defined further on. +% \begin{macrocode} +\RequirePackage{fancyvrb} +% \end{macrocode} +% Remember: this new environment must be loaded between the +% |\documentclass| and the |usepackage[a-1b]{pdfx}| statements. % % Another piece of code follows in order to abort the job if the % |toptesi| date, contained in it |\ProvidePacckage| argument is % older than the class date. Should this happen, the job is aborted % with a strong message on the console. In order to work properly % the |toptesi| package is loaded and its date is fetched by means -% of the defined |\GetFileInfo|macro. This macro is almost identical +% of the defined |\GetFileInfo| macro. This macro is almost identical % to the one that is available when this documented file is processed; % it simply differs in the sense that the |v.| prefix to the file % version number is taken as a separator; should be necessary to % compare also the version number, the |\fileversion| macro gets % defined properly without any prefix. The |\@parse@version| macro -% is a \LaTeX\ kernel one; in spite spite of its name, it extracts +% is a \LaTeX\ kernel one; in spite of its name, it extracts % from the first macro token the data in a form suitable for comparison % with the second macro token, so that a numerical test can be performed % without the intervention of non digit symbols. The prominent class @@ -2737,7 +2762,6 @@ School of Turin. \expandafter\@firstoftwo\else \expandafter\@secondoftwo\fi} \fi -\RequirePackage{filecontents} \providecommand\GetFileInfo[1]{% \def\filename{#1}% \def\@tempb##1 v.##2 ##3\relax##4\relax{% @@ -2779,7 +2803,7 @@ School of Turin. % reasons (before version 3.x \texttt{toptesi} was just an % extension to the \texttt{report} class) and partly because % it might be used as a stand alone package, but, take -% notice, it might create some conflicts with with other +% notice, it might create some conflicts with other % classes internal code, although with the latest versions % of |toptesi| we did not notice any conflict with the |book| % class; it is certainly incompatible with the \texttt{article} @@ -2817,7 +2841,7 @@ School of Turin. % \opz{magistrale}, \opz{dottorale}, \opz{secondaria}, are % described further on; options \opz{frontespizio} and % \opz{custom} avoid loading the default module |topfront| or any -% of the previous listed modules; the are used to create title pages +% of the previous listed modules; they are used to create title pages % different from the ones that are available with TOPtesi. % % The |corpo = value| option can receive “any” value; if this @@ -2853,6 +2877,9 @@ School of Turin. \newif\ifsecondaria\secondariafalse \newif\ifcustom\customfalse \newif\ifTOPnumerazioneromana\TOPnumerazioneromanafalse +\newif\ifTOPnocenterfolio \TOPnocenterfoliofalse +\newif\ifTOPnocenterhead \TOPnocenterheadfalse +\newif\ifTOPfolioinhead \TOPfolioinheadfalse % \end{macrocode} % % A binding correction is established; its default value is @@ -2870,6 +2897,12 @@ School of Turin. % In any case see further on a deeper explanation about margins % and binding correction. % +% The options concerning the folio position and the header text +% position have been requested after version 6.3.06. Beware! While +% the folio position close to the outer edge is acceptable, it turns +% to be quite bad looking if also the header text is moved to the +% fore edge; therefore avoid this position pair. +% % The options |usefrontespizio| and |noTOPfront| are set by the % specific “function” executed by the |tipotesi=|\meta{value} options. % \begin{macrocode} @@ -2904,6 +2937,11 @@ School of Turin. \fi} \DeclareOptionX{autoretitolo}[true]{\ifclassica\@utoretitolotrue\fi} \DeclareOptionX{oldstyle}[true]{\ifclassica\@ldstyletrue\fi} +\DeclareOptionX{nocenterfolio}[true]% + {\unless\ifclassica\TOPnocenterfoliotrue\fi} +\DeclareOptionX{nocenterhead}[true]% + {\unless\ifclassica\TOPnocenterheadtrue\fi} +\DeclareOptionX{folioinhead}[true]{\unless\ifclassica\TOPfolioinheadtrue\fi} \DeclareOptionX{pdfa}{\PackageWarning{toptesi}{% ***********************************************\MessageBreak% Option pdfa ignored.\MessageBreak% @@ -3018,7 +3056,7 @@ School of Turin. % Without binding correction the inner and outer margin % are chosen equal, but the grid is moved outwards if the % binding correction option is specified. With the |libro| -% option in force, the outer, lower margin are larger than +% option in force, the outer and the lower margin are larger than % the corresponding inner and top margins. Without such % option, the margins are initially set equal, unless the % binding correction is specified. @@ -3053,25 +3091,42 @@ School of Turin. % We now establish the page style. We start by setting to % “empty” the tokens that keep the left and the right % marks; we define a box so as to set the headers inside -% this box; we redefine also the plain page style; it is -% actually a leftover from the previous versions when the -% page number was set at the foot in bold face, but we leave -% it here without the bold face specification, so that in -% future versions folios may be redefined in a common way -% with the other page styles. Notice that in all page styles -% folios are always in the footers. +% this box. % % By defining |\lapagina| to be equivalent to |\thepage| % we can later on redefine |\lapagina| the way we like; we -% actually do so with the option \texttt{classica}. +% actually do so with option \texttt{classica}. +% Since there are options for setting the head information in a +% centred or lateral (external) position and similarly for the folios, +% plus the possibility to have the folio in the head or in the foot, +% we need to redefine the |plain| and |headings| page styles according +% to the options chosen by the user through the available keys. % \begin{macrocode} \def\lapagina{\thepage} \mark{{}{}} \newbox\@intesta % \def\ps@plain{\let\@mkboth\@gobbletwo -\def\@oddfoot{\null\hfill {\scshape\lapagina}\hfill \null}\def\@oddhead{} -\def\@evenhead{}\let\@evenfoot\@oddfoot} +\let\@oddhead\@empty\let\@evenhead\@empty% +\if@twoside + \ifTOPnocenterfolio + \def\@oddfoot{\makebox[\textwidth][r]{\scshape\lapagina}} + \def\@evenfoot{\makebox[\textwidth][l]{\scshape\lapagina}} + \else + \def\@oddfoot{\makebox[\textwidth][c]{\scshape\lapagina}}% + \def\@evenfoot{\makebox[\textwidth][c]{\scshape\lapagina}}% + \fi +\else + \ifTOPnocenterfolio + \def\@oddfoot{\makebox[\textwidth][r]{\scshape\lapagina}}% + \let\@evenfoot\@oddfoot + \else + \def\@oddfoot{\makebox[\textwidth][c]{\scshape\lapagina}}% + \let\@evenfoot\@oddfoot + \fi +\fi +} + % \end{macrocode} % Other page styles are defined in a different way according % to the choice of one side or two side printing. In any case @@ -3082,35 +3137,102 @@ School of Turin. % to invite the user to exploit the sectioning commands % optional short argument. % \begin{macrocode} -\if@twoside - \def\ps@headings{\let\@mkboth\markboth% autoretitolo - \def\@oddfoot{\null\hfill {\scshape\lapagina} \hfill\null} - \let\@evenfoot\@oddfoot - % - \def\@evenhead{\setbox\@intesta\hbox{\footnotesize\slshape - \leftmark}% +\if@twoside % two side + \def\ps@headings{% + \let\@mkboth\markboth\let\@oddhead\@empty\let\@evenhead\@empty + \unless\ifTOPfolioinhead % folio in head + \ifTOPnocenterfolio + \def\@oddfoot{\makebox[\textwidth][r]{\scshape\lapagina}} + \def\@evenfoot{\makebox[\textwidth][l]{\scshape\lapagina}} + \else + \def\@oddfoot{\makebox[\textwidth][c]{\scshape\lapagina}} + \def\@evenfoot{\makebox[\textwidth][c]{\scshape\lapagina}} + \fi + \def\@oddhead{\setbox\@intesta\hbox{\footnotesize\slshape + \rightmark}% \ifdim\wd\@intesta>\textwidth \headWarn{\chapter}\fi% - \underline{\makebox[\textwidth]{\footnotesize\slshape - \strut\leftmark}}}% + \ifTOPnocenterhead + \underline{\makebox[\textwidth][r]{\footnotesize\slshape + \strut\rightmark}}% + \else + \underline{\makebox[\textwidth][c]{\footnotesize\slshape + \strut\rightmark}}% + \fi}% + \def\@evenhead{\setbox\@intesta\hbox{\footnotesize\slshape + \rightmark}% + \ifdim\wd\@intesta>\textwidth \headWarn{\section}\fi% + \ifTOPnocenterhead + \underline{\makebox[\textwidth][r]{\footnotesize\slshape + \strut\leftmark}}% + \else + \underline{\makebox[\textwidth][c]{\footnotesize\slshape + \strut\leftmark}}% + \fi}% + \else % folio in foot + \let\@oddfoot\@empty\let\@evenfoot\@empty \def\@oddhead{\setbox\@intesta\hbox{\footnotesize\slshape \rightmark}% \ifdim\wd\@intesta>\textwidth \headWarn{\section}\fi% - \underline{\makebox[\textwidth]{\footnotesize\slshape - \strut\rightmark}}}% - \def\chaptermark##1{% - \markboth{\thechapter\ -- ##1}{\thechapter\ -- ##1}} - \def\sectionmark##1{\markright{\ifnum\c@secnumdepth>\z@ - \thesection\ -- \fi ##1}}} -\else - \def\ps@headings{\let\@mkboth\markboth - \def\@oddfoot{\null\hfill {\scshape\lapagina} \hfill\null} - \def\@evenfoot{} + \ifTOPnocenterhead + \underline{\makebox[\textwidth][r]{\footnotesize\slshape + \strut\rightmark}}\rlap{\quad\scshape\lapagina}% + \else + \underline{\makebox[\textwidth][c]{\footnotesize\slshape + \strut\rightmark}}\rlap{\quad\scshape\lapagina}% + \fi} + \def\@evenhead{\setbox\@intesta\hbox{\footnotesize\slshape + \rightmark}% + \ifdim\wd\@intesta>\textwidth \headWarn{\chapter}\fi% + \ifTOPnocenterhead + \underline{\llap{\scshape\lapagina\quad}% + \makebox[\textwidth][l]{\footnotesize\slshape\strut\rightmark}}% + \else + \underline{\llap{\scshape\lapagina\quad}% + \makebox[\textwidth][c]{\footnotesize\slshape\strut\rightmark}}% + \fi} + \fi + \def\chaptermark##1{\markboth{\thechapter\ -- ##1}{\thechapter\ -- ##1}} + \def\sectionmark##1{\markright{\ifnum\c@secnumdepth>\z@ + \thesection\ -- \fi ##1}}% + } +\else% oneside + \def\ps@headings{% + \let\@mkboth\markboth\let\@oddhead\@empty\let\@evenhead\@empty + \let\@oddfoot\@empty\let\@evenfoot\@empty + \def\@evenfoot{}\def\@evenhead{}% + \unless\ifTOPfolioinhead % folio in head + \ifTOPnocenterfolio + \def\@oddfoot{\makebox[\textwidth][r]{\scshape\lapagina}} + \else + \def\@oddfoot{\makebox[\textwidth][c]{\scshape\lapagina}} + \fi + \def\@oddhead{% + \setbox\@intesta\hbox{\footnotesize\slshape + \rightmark}% + \ifdim\wd\@intesta>\textwidth \headWarn{\chapter}\fi% + \ifTOPnocenterhead + \underline{\makebox[\textwidth][r]{\footnotesize\slshape + \strut\rightmark}}% + \else + \underline{\makebox[\textwidth][c]{\footnotesize\slshape + \strut\rightmark}}% + \fi + }% + \else % folio in foot + \let\@oddfoot\@empty\let\@evenfoot\@empty \def\@oddhead{\setbox\@intesta\hbox{\footnotesize\slshape \rightmark}% \ifdim\wd\@intesta>\textwidth \headWarn{\chapter}\fi% - \underline{\makebox[\textwidth]{\footnotesize\slshape - \strut\rightmark}}}% - \def\chaptermark##1{\markright{\thechapter\ -- ##1}}} + \ifTOPnocenterhead + \underline{\makebox[\textwidth][r]{\footnotesize\slshape + \strut\rightmark}}\makebox[\z@][l]{\enspace\scshape\lapagina}% + \else + \underline{\makebox[\textwidth][c]{\footnotesize\slshape + \strut\rightmark}}\makebox[\z@][l]{\enspace\scshape\lapagina}% + \fi} + \fi + \def\chaptermark##1{\markright{\thechapter\ -- ##1}}% + } \fi \def\headWarn#1{\PackageWarning{toptesi}{% @@ -3148,7 +3270,7 @@ School of Turin. % in Italy theses rarely contain these lists; the question is: “is a % thesis a technical report?”. In Italy, in most cases, the answer is “no”. % We require also some other boolean variables to handle the -% difference between front matter and main matter; this +% difference between front matter and main matter; these % differences are already defined in the \texttt{book} % document class, but not in the \texttt{report} one. % \begin{macrocode} @@ -3244,12 +3366,65 @@ School of Turin. % names for localising the package in a language different % from Italian and English. % +% When and if a PDF/A compliant file has to be produced, it is +% necessary to load the \pack{pdfx} package in the document to +% be typeset and to create a special metadata file. The Italian +% documentation |toptesi-it| explains how to do these actions, +% in particular how to generate the necessary metadata and how +% to prepare the |\jobname.xmpdata| file; it was suggested +% to use the |filecontents| environment as redefined by package +% \pack{filecontents}. But the situation has become a little clumsy +% by the end of 2019 because the functionalities of the package +% have been introduced int the \LaTeX kernel. But the new upgraded +% kernel definition of the |filecontents| environment as redefined +% by the previous version of \pack{filecontents} becomes available +% only trough suitable options. This makes previous versions of +% theses typeset with the previous versions behave as if the +% \pack{filecontents} package was not loaded. In other words what +% was made in the examples accompanying this class and package does +% not work anymore as it used to do, when they are typeset with an +% updated version of the \TeX system; today with the 2020 \TeXLive +% version, they do not perform as they used to do, since they do not +% update the metadata without deleting the previous file that +% contained the previous version. You get the previous functionality +% if you edit the files and add the suitable options: \opz{noheader} +% and \opz{overwrite} to the opening environment statement. +% For new files we suggest to use a new environment in order to +% create the proper metadata file, with the proper name and contents. +% This new environment can be used in the thesis preamble anywhere +% before using the \pack{pdfx} package. +% +% The new environment has a very descriptive name: \env{pdfxmetadata}; +% it does not require asterisks or options; its contents are the +% metadata. Its use is a such: +%\begin{flushleft}\obeylines +%\cs{documentclass}\oarg{options}\Marg{toptesi} +%\meta{special packages} +%\Bambiente{pdfxmetatada} +%\meta{metada} +%\Eambiente{pdfxmetadata} +%... +%\cs{usepackage}\Oarg[a-1b]\Marg{pdfx} +%\meta{other packages} +%\meta{settings and definitions} +%\Bambiente{document} +%\end{flushleft} +% Here is the very simple code thanks to the |VerbatimOut| +% environment defined by the |fancyvrb| package, invoked +% without the \cs{begin} and \cs{end} commands that may not perform +% correctly within other environments. +% \begin{macrocode} +\newenvironment{pdfxmetadata}{% +\VerbatimOut{\jobname.xmpdata}}{\endVerbatimOut} +% \end{macrocode} +% % We have to modify the |\chapter| and |\part| commands so % that as the user first uses one of these commands the % typesetting style is switched to that of the main matter. % But by exploiting certain facilities of the |xparse| package, % some delicate tests could be developed by |xparse| itself; therefore -% the whole command was redefined so that the new syntax is the following: +% the whole commands were redefined so that the new syntax is the +% following: %\begin{flushleft}\obeylines %\cs{chapter}\meta{$\star$}\oarg{toc entry}\oarg{headings entries}\marg{title}\oarg{pagestyle} %\end{flushleft} @@ -3302,22 +3477,25 @@ School of Turin. % %\item[\meta{title}] with no surprise is the chapter title that % is printed in its opening page. It defines also the default -% \meta{toc entry} and therefore the \meta{headings entry}. +% \meta{toc entry} and therefore the \meta{headings entry} if these +% optional arguments are not specified. % % %\item[\meta{pagestyle}] solves a problem that arises more often % than not: by default the chapter opening page is typeset with % the |plain| page style; sometimes a different style is desired, % for example the |empty| one. The use can specify this optional -% argument with |empty| to have a headerless opening page without -% a printed folio. Actually the user can specify any page style, +% argument with |empty| to have a opening page without both a header +% and a printed folio. Actually the user can specify any page style, % provided it satisfies the typographical best practice. % %\end{description} % Actually the commands to typeset the Summary and the % Acknowledgements chapters, as defined above, are regularly % typeset in the front matter style, opening on any page -% (even or odd) and possibly numbered with small caps roman numerals. +% (even or odd) and possibly with folios numbered with small +% caps roman numerals. The |\chapter*| dos not switch from +% front to main matter; while the starred one does. % \begin{macrocode} \RenewDocumentCommand{\chapter} {s O{#4} O{#2} m O{plain}}{% @@ -3365,9 +3543,14 @@ School of Turin. } % \end{macrocode} % It would be possible to redefine in a similar manner also -% the |\part| command, but it was deemed unnecessary, since -% theses are seldom divided into parts. -% \begin{macrocode} +% the |\part| command, but originally it was deemed unnecessary, +% since theses are seldom divided into parts; now with the +% options on the folio position it is necessary to redefine +% also the |part| command. +% \begin{macrocode} +\RenewDocumentCommand\part{s O{#3} m}{\iffrontmatter\mainmatter\fi +\if@openright \cleardoublepage \else \clearpage \fi +\thispagestyle{plain}\if@twocolumn \onecolumn \@tempswatrue \else \@tempswafalse \fi \null \vfil \IfBooleanTF{#1}{\@spart{#3}}{\@part[#2]{#3}}} \def\@part[#1]#2{\iffrontmatter\mainmatter\fi \ifnum \c@secnumdepth >-2\relax \refstepcounter{part}% @@ -3386,8 +3569,17 @@ School of Turin. \fi \Huge \bfseries #2\par}% \@endpart} - % \end{macrocode} +% The syntax is the following +%\begin{ttsintassi} +%\cs{part}\meta{*}\oarg{short title}{title} +%\end{ttsintassi} +% where the optional star implies no toc entry; in absence of the +% star, the toc entry is the \meta{short title} which, in turn, +% if not specified, assumes the same value as \meta{title}. +% The starred version of |\part|, contrary to the starred version +% of |\chapter|, switches from front to main matter. +% % At the same time we have to make sure that |\tableofcontents|, % |\listoftables| and |\listoffigures| do not exit from the % front matter style. We assume these commands are issued @@ -3396,10 +3588,10 @@ School of Turin. % toc entries with the native commands. We need not define the % headers, because the default title is good for this purpose; % but since such thesis elements are typeset with the front -% matter page style (|plain|), no headers are used; With long +% matter page style (|plain|), no headers are used; with long % indices and/or lists of tables and/or figures, the user might % desire to have headers, so that the declaration -% |\pagestyle{headings}| should be specifies before using the +% |\pagestyle{headings}| should be specified before using the % |\indici| or |\allcontents| commands. % % The table of contents itself is not linked at all, but in order @@ -3440,9 +3632,10 @@ School of Turin. % We need to define |\indici| (alias |\allcontents|) that typesets % the table of contents and, optionally, the lists of tables and/or % figures while softly maintaining the front matter style for -% typesetting. In facts, if the user wants a diffferent styl s/he can select it with a suitable argument the |\pagestyle| command. +% typesetting. In facts, if the user wants a different style s/he +% can select it with a suitable argument to the |\pagestyle| command. % \begin{macrocode} -\def\indici{% If headings are desired, the pagestyle must be set in advance +\def\indici{% If headings are desired, the page style must be set in advance \iffrontmatter\else\frontmattertrue\fi \tableofcontents \iftablespage @@ -3566,7 +3759,7 @@ School of Turin. % % The issue is that I prefer a narrower justified caption % rather than one where the last line is just a short word -% or the right segment of an hyphenated last word. If one +% or the right segment of a hyphenated last word. If one % sets the |\finalhyphendemerits| parameter to an extremely % high value, one might succeed in avoiding a hyphenated % penultimate caption line, but this might lead to a very @@ -3636,7 +3829,7 @@ School of Turin. % By the way, if the package \pack{caption} has been loaded % in the preamble, this specific recalculation must not be % executed at all; it is necessary to delay this definition -% at |\AtBeginDocument| so we know for sure if that the package +% at |\AtBeginDocument| so we know for sure if that package % has been actually loaded. Of course if the \pack{caption} package % has not been loaded the |\captionsetup| macro is not % defined and its use (for example, as a leftover of some @@ -3725,8 +3918,8 @@ School of Turin. % such as when it is set within a mini-page or another similar % environment; in such situations it is not required to use % |\captionof|; actually this command is simulated within this -% very \amb{SD} environment -%. +% very \amb{SD} environment. +% % The actual commands for inserting % the picture and its caption within the |figure| environment % have names starting with |SD|, namely |\SDcaption| and @@ -3765,7 +3958,7 @@ School of Turin. % correct position within the dedicated space; any argument % is substantially valid with the caution that this “anything” % remains local to that particular “image”. In any case when -% the “mage” is a real picture and has to be resized to a +% the “image” is a real picture and has to be resized to a % relative dimension, remember that both the picture and its % caption are typeset within boxes narrower than the total text % width or the total environment width; the best way to access @@ -3782,7 +3975,7 @@ School of Turin. % contains the usual short caption entry for the list of % figures or tables or specific other floats. %\item The \marg{caption} mandatory brace delimited argument -% contains the image caption. +% contains the image caption text. %\item The \marg{label} mandatory brace delimited argument % contains the string that is usually passed to the |\label| % command; this string is mandatory in the sense that it @@ -3873,7 +4066,7 @@ School of Turin. {\SDlinewidth=\textwidth}% % \end{macrocode} % Then we fix our attention to the correct use of the optional third -% argument, whose descriptor assigns it a default value of |0.5|: +% argument, whose descriptor assigns it a default value of |0.5|: % \begin{macrocode} \SDcaptionwidth=#3\SDlinewidth \ifdim\SDcaptionwidth<0.3\SDlinewidth @@ -3887,13 +4080,13 @@ School of Turin. \SDfigurewidth=\dimexpr\SDfigurewidth-\columnsep\relax % \end{macrocode} % We add some test to verify if the environment is used within -% the |figure| floating environment, or it is used ad a fixed +% the |figure| floating environment, or it is used as a fixed % object; we first test if we are within a floating environment; % if not we define |\@captype| to contain the string `figure'; -% if yes we have to test if we are really within the |figure| +% if yes, we have to test if we are really within the |figure| % environment: if not, we locally define |\@captype| else % we relax. This means that we can insert the |SDfigure| even -% within a |table| environment as sometimes a tabular and a +% within a |table| environment as sometimes a tabular and a % drawing should float together (may be because a drawing with % its own caption represents the tabular entries). % @@ -3907,7 +4100,7 @@ School of Turin. % % The code tests if the saved \meta{label} string is empty; % this should never take place, but it is better to perform -% such task. If the string is empty, a fall back value equal +% such task. If the string is empty, a fall back value equal % to the page number of the page that is still open at % processing time is used; may be a warning message would % be helpful, but since this empty string should never be @@ -3929,7 +4122,7 @@ School of Turin. % |.aux| file |\label| saved data, we must access the % string that contains these data but we have to expand % several times the saved macros until we have the real -% string in |\@temD|. +% string in |\@tempD|. % \begin{macrocode} }{%---------------------------------------------------CLOSING {\ifcsdef{r@\@tempSD}% @@ -3979,7 +4172,7 @@ School of Turin. % (optional) argument is intended to collect the “short % caption” to be used, if specified, for the list of floats % entry; if not specified ,as usual, the “long caption” -% second argument is used for this entry. The (optional) +% second argument is used for this entry. The third (optional) % brace delimited argument, on the contrary, is the label % string that usually is passed as the argument of the % |\label| command. If specified it is this |\SDcaption| @@ -4192,7 +4385,7 @@ School of Turin. % \end{macrocode} % % {\tolerance=3000\relax -% The TOPtesi bundle contains two new chapter like sections +% The TOPtesi bundle contains two new chapter-like sections % activated with the commands |\sommario| (alias |\summary|) % and |\ringraziamenti| (alias |\acknowledgements|) respectively. % The infix strings that start these sections depend on the @@ -4296,11 +4489,11 @@ Skipping any redefinition\MessageBreak}% % language as the default one \emph{after} the |\begin{document}| % statement; % \item -% if XeLaTeX\ or LuaLaTeX\ is being used for typesetting, it +% if \XeLaTeX\ or LuaLaTeX\ is being used for typesetting, it % suffices to specify in the preamble the name of the other % language to be used, by means of the |setotherlanguage| % command, and to define the summary and acknowledgments names -% in the same way as with pdf\/\LaTeX; the same must be done +% in the same way as with \pdfLaTeX; the same must be done % at the beginning of the document to declare the new language % as the default one. % \end{itemize} @@ -4325,7 +4518,8 @@ Skipping any redefinition\MessageBreak}% % option implies that the title page is typeset with its % special commands and environments, therefore it sets the % suitable switches so as to avoid loading the |topfront| -% extension file. This applies also to the other modules particular to special thesis types. +% module. This applies also to the other modules specific for +% special thesis types. % \begin{macrocode} \AtBeginDocument{% \unless\ifT@Pfrontespizio\ifTOPfront @@ -4342,12 +4536,13 @@ Skipping any redefinition\MessageBreak}% % |\mapstochar| that produce problems with that format, % because they have a declared width of 0\,pt; this % is no problem for \texttt{pdflatex}, but it is a problem -% for the \sigla{PDF/A} format. Therefore these commands must be -% replaced by equivalent ones that do not use zero-width -% glyphs. For |\not|, another slash can be used, but in -% order to have it the right size in all math typesetting -% modes it is necessary to have a different command for -% every mode; this is achieved with the |\mathchoice| +% for the \sigla{PDF/A} format. Therefore, and only when +% \texttt{pdflatex} is used for typesettiNg the document, +% these commands must be replaced by equivalent ones that +% do not use zero-width glyphs. For |\not|, another slash can +% be used, but in order to have it the right size in all math +% typesetting modes it is necessary to have a different +% command for every mode; this is achieved with the |\mathchoice| % primitive as such: % \begin{macrocode} \ifPDFTeX @@ -4391,6 +4586,7 @@ Skipping any redefinition\MessageBreak}% % of other useful packages, such as \pack{pdfpages}. % % \subsection{The \opz{classica} option} +% % As mentioned above, the \opz{classica} option was % devised in order to cope with theses in humanities and % the specifications came from Paolo Ciacchi, a student @@ -4398,7 +4594,7 @@ Skipping any redefinition\MessageBreak}% % thesis in classical Greek philology. The necessity % of the large normal size derived from the necessity of % having clear mark-up signs among the myriad signs -% philologists use, that sometimes I believe that the +% philologists use; sometimes I believe that the % philological mark-up requires typesetting environments % similar to the mathematical ones: in facts the material % to be typeset does not form linear sequences, as in plain @@ -4414,7 +4610,7 @@ Skipping any redefinition\MessageBreak}% % % The singular and plural masculine and feminine strings % for “candidate” are redefined in the |topfront| module. -% For other languages the configuration file is very handy. +% For other languages using the configuration file is very handy. % % Since theses in humanities may end up to occupy several % volumes\footnote{Classically “tomo” in Italian means “volume”, @@ -4433,14 +4629,16 @@ Skipping any redefinition\MessageBreak}% % is going to be printed in the title page. But when several % tomes are involved, instead of using the |\frontespizio| % macro or |frontespizio| environment, use the |\tomo| macro. -% There is no equivalent to the |frontespizio| environment. -% |\tomo| provides to stepping up the volume counter before -% actually printing the new tome title page. +% This |classica| thesis style does no allow to use a title page +% environment; therefore all necessary data necessary for the +% title pages of each tome must be specified before using the +% \cs{tomo} macro. This macro provides to stepping up the volume +% counter before actually printing the new tome title page. % \begin{macrocode} \newcounter{tomo} \newcommand*{\tomo}{\clearpage\stepcounter{tomo}\boolfalse{topTPTlogos}% \fr@ntespizio} -% \end{macrocode} +% \end{macrocode}^^A>>>>>>>>>>> % Folios as well are to be redefined and also the page styles % require a redefinition so as to being able to use old style % numbers. The macro |\lapagina| (it's not a case that this @@ -4469,10 +4667,13 @@ Skipping any redefinition\MessageBreak}% % headings because the \texttt{classica} option changes % completely the left and the right headers depending on the % option \opz{autoretitolo}; in this case the left header -% contains the candidate's name and a short version of the +% contains the candidate's name and the (short) version of the % thesis title, while the right heading contains the chapter % (short) title; if this option is not in force, headings -% appear as usual. The redefinition of the \texttt{headings} +% appear as usual, but without using the settings relative to +% the folio position and the header text position. +% +% The redefinition of the \texttt{headings} % page style is made only if this option is in force. In case % of two-sided printing where the left head and the right % heads are different, the left heading contains the author @@ -4501,7 +4702,7 @@ Skipping any redefinition\MessageBreak}% % ragged margins, and eventually these boxes are set one % next to the other with an intermediate glob of infinitely % stretchable glue, and finally set in the header box with -% a rule underneath the two of them. The result might be +% a rule underneath both of them. The result might be % barely acceptable if both vertical boxes do not exceed % two lines and no words have to be hyphenated, but in % general I believe it is an ugly layout; the user is warned! @@ -4509,52 +4710,52 @@ Skipping any redefinition\MessageBreak}% % without the ID number if any. % \begin{macrocode} \if@utoretitolo - \if@twoside -% - \renewcommand*{\ps@headings}{\let\@mkboth\markboth% - \def\@oddfoot{\null \hfill \textbf{\lapagina} \hfill \null}% - \let\@evenfoot\@oddfoot - \def\@evenhead{% - \setbox\@intesta\hbox{\ifPDFTeX\latintext\fi - \footnotesize\strut\textsc{% - \@@author\ifcsvoid{@secondauthor}{\ et al.}: \@stitle}% - }% - \ifdim\wd\@intesta>\textwidth\headwrn{\titolo}\fi - \underline{\makebox[\textwidth]{\box\@intesta}}}% - \def\@oddhead{\ifPDFTeX\latintext\fi - \setbox\@intesta\hbox{% - \footnotesize\strut\textsl{\rightmark}}% - \ifdim\wd\@intesta>\textwidth \headWarn{\section}\fi% - \underline{\makebox[\textwidth]{\box\@intesta}}}% - \def\chaptermark##1{\markright{\thechapter\ -- ##1}}% - \def\sectionmark##1{}}% - \else - \renewcommand*{\ps@headings}{\let\@mkboth\markboth - \def\@oddfoot{\null \hfill \textbf{\lapagina}\hfill \null}% - \let\@evenfoot\empty\let\@evenhead\empty - \def\@oddhead{{\setbox\z@\hbox{\ifPDFTeX\latintext\fi - \footnotesize\textsc{% - \@@author\ifcsvoid{@secondauthor}{}{\ et al.}: \@stitle}}% - \setbox\tw@\hbox{\ifPDFTeX\latintext\fi - \footnotesize\textsl{\rightmark}}% - \dimen@=\dimexpr2em + \wd\z@ + \wd\tw@\relax - \ifdim\dimen@<\textwidth \relax - \else - \setbox\z@\vbox{\hsize.48\textwidth\parindent\z@ - \raggedright - \ifPDFTeX\latintext\fi\footnotesize\textsc{% - \@@author\ifcsvoid{@secondauthor}{}{\ et al.}: \@stitle - }}% - \setbox\tw@\vbox{\hsize.48\textwidth\parindent\z@ - \raggedleft - \ifPDFTeX\latintext\fi\footnotesize - \textsl{\rightmark}}% - \fi - \setbox\@intesta\vbox to\z@{% - \vss\hbox to\textwidth{\strut\box\z@\hfill\box\tw@}}% - \underline{\box\@intesta}}}% - \def\chaptermark##1{\markright{\thechapter\ -- ##1}}} + \if@twoside +% + \renewcommand*{\ps@headings}{\let\@mkboth\markboth% + \def\@oddfoot{\null \hfill \textbf{\lapagina} \hfill \null}% + \let\@evenfoot\@oddfoot + \def\@evenhead{% + \setbox\@intesta\hbox{\ifPDFTeX\latintext\fi + \footnotesize\strut\textsc{% + \@@author\ifcsvoid{@secondauthor}{\ et al.}: \@stitle}% + }% + \ifdim\wd\@intesta>\textwidth\headwrn{\titolo}\fi + \underline{\makebox[\textwidth]{\box\@intesta}}}% + \def\@oddhead{\ifPDFTeX\latintext\fi + \setbox\@intesta\hbox{% + \footnotesize\strut\textsl{\rightmark}}% + \ifdim\wd\@intesta>\textwidth \headWarn{\section}\fi% + \underline{\makebox[\textwidth]{\box\@intesta}}}% + \def\chaptermark##1{\markright{\thechapter\ -- ##1}}% + \def\sectionmark##1{}}% + \else + \renewcommand*{\ps@headings}{\let\@mkboth\markboth + \def\@oddfoot{\null \hfill \textbf{\lapagina}\hfill \null}% + \let\@evenfoot\empty\let\@evenhead\empty + \def\@oddhead{{\setbox\z@\hbox{\ifPDFTeX\latintext\fi + \footnotesize\textsc{% + \@@author\ifcsvoid{@secondauthor}{}{\ et al.}: \@stitle}}% + \setbox\tw@\hbox{\ifPDFTeX\latintext\fi + \footnotesize\textsl{\rightmark}}% + \dimen@=\dimexpr2em + \wd\z@ + \wd\tw@\relax + \unless\ifdim\dimen@<\textwidth + \setbox\z@\vbox{\hsize.48\textwidth\parindent\z@ + \raggedright + \ifPDFTeX\latintext\fi + \footnotesize\textsc{% + \@@author\ifcsvoid{@secondauthor}{}{\ et al.}: \@stitle + }}% + \setbox\tw@\vbox{\hsize.48\textwidth\parindent\z@ + \raggedleft + \ifPDFTeX\latintext\fi\footnotesize + \textsl{\rightmark}}% \fi + \setbox\@intesta\vbox to\z@{% + \vss\hbox to\textwidth{\strut\box\z@\hfill\box\tw@}}% + \underline{\box\@intesta}}}% + \def\chaptermark##1{\markright{\thechapter\ -- ##1}}} + \fi \fi % \end{macrocode} % @@ -4564,17 +4765,16 @@ Skipping any redefinition\MessageBreak}% % like to have also unnumbered notes within numbered % ones, as if they were two separate sets; of course % specialised extension modules, such as, for example, -% the |eledmac| or |reledmac| packages, are available on -% CTAN, but as a poor man solution the command |\nota| was -% introduced that inserts a note with a symbol as a note -% mark; the symbol \emph{must} be a mathematical one as -% the dagger or the double dagger; by default it is the -% asterisk. At the same time the default definition of -% the mathematical asterisk is that of a binary operator; -% I have experienced that the note symbol gets a +% the |eledmac|, |reledmac|, or |xreledmac| packages, are +% available in \TeXLive and MiKTeX, but as a poor man +% solution the command |\nota| was introduced that inserts +% a note with a symbol as a note mark; the symbol \emph{must} +% be a mathematical one as the dagger or the double dagger; +% by default it is the asterisk. At the same time the default +% definition of the mathematical asterisk is that of a binary +% operator; I have experienced that the note symbol gets a % better positioning if it is used as an ordinary symbol -% through |\mathord|. -% This is why its math code is redefined. +% through |\mathord|. This is why its math code is redefined. % % A final unusual request was to be able to put a blank % unnumbered note, as a (rather wide) note separator. @@ -4599,7 +4799,7 @@ Skipping any redefinition\MessageBreak}% % typesetting a page with one or more witty sentences. % The first request has a trivial solution, but at least % |\paginavuota| (alias |\emptypage|) is much shorter to -% type in than its expansion. +% type than its expansion. % % The environments \texttt{dedica} (alias \texttt{dedication}) % for the dedication, and \texttt{citazioni} (alias @@ -4617,7 +4817,9 @@ Skipping any redefinition\MessageBreak}% % The \texttt{citazioni}/\texttt{wittysentences} % environment typesets its material with the default font % shape series and size, so the author has to specify any -% change s/he desires. These three commands, though, are +% change s/he desires. +% +% These three commands and environments, though, are % available irrespective of the \texttt{classica} option, % so that they can be used also for theses outside the % field of humanities. @@ -4656,12 +4858,13 @@ Skipping any redefinition\MessageBreak}% % \fi % % \subsection{The \texttt{topfront.sty} code}\label{sec:topfront} +% % This file is input by \texttt{toptesi}, version 6 and higher % provided that no title page or thesis type options have been % specified by the user; it can also be used as an independent % extension module with (hopefully) any document class. % -% It contains all the definition for the composition of just +% It contains all the definitions for the composition of just % the title page of “standard” theses along the style % requirements of \texttt{toptesi}, version 5.x or higher. It is not % loaded by |toptesi| even when typesetting the title page @@ -4670,9 +4873,9 @@ Skipping any redefinition\MessageBreak}% % |toptesi| loading of |topfront| is inhibited and in its % place another extension module, |toptesi-scudo|, is loaded. % The same holds true with the other special thesis modules. -% This latter files are described in a subsequent sections. +% This latter files are described in subsequent sections. % -% It |topfront| makes use of an optional configuration file +% The |topfront| package makes use of an optional configuration file % where the user can define a lot of default information and % all the infix language dependent strings that are peculiar % to the title page. Among other things it can typeset @@ -4720,8 +4923,8 @@ Skipping any redefinition\MessageBreak}% \ifcsundef{ifsecondaria}{\newif\ifsecondaria\secondariafalse}{} \ifcsundef{ifplurale}{\newif\ifplurale\pluralefalse}{} -\ifcsundef{ifTOPfront}{\newif\ifTOPfront \TOPfronttrue -\newif\ifevenboxes \evenboxesfalse}{} +\ifcsundef{ifTOPfront}{\newif\ifTOPfront \TOPfronttrue}{} +\ifcsundef{ifevenboxes}{\newif\ifevenboxes \evenboxesfalse}{} \ifcsundef{c@tomo}{\newcounter{tomo}}{} @@ -4877,15 +5080,13 @@ Skipping any redefinition\MessageBreak}% \let\@stitle\empty -\newcommand*{\titolo}[2][]{% +\providecommand\titolo{} +\RenewDocumentCommand\titolo{O{#2} m}{% \ifbool{triennale}{% \PackageWarning{topfront}{Il titolo deve essere impostato con il comando \string\monografia} }{% -\def\@tempA{#1}\ifdefempty{\@tempA}% - {\gdef\@stitle{#2}}{\gdef\@stitle{#1}}% - \gdef\@titolo{#2}% - }% + \gdef\@stitle{#1}}\gdef\@titolo{#2}% } \def\sottotitolo#1{\gdef\@subtitle{#1}} % \end{macrocode} @@ -4901,22 +5102,24 @@ Skipping any redefinition\MessageBreak}% % of tetratricotomised blond hair} %\end{verbatim} % and the title page, for example, will contain something like this:\\[\bigskipamount] -% \begin{minipage}{\textwidth}\centering +% \fbox{\begin{minipage}{\textwidth}\centering % {\Large Master Thesis\\ in\\ Applied Tetratricotomy\par}\bigskip % {\huge Tetratricotomy of blond hair\par}\bigskip % {\large Accurate measurements of the four fourths\\ % of tetratricotomised blond hair} -% \end{minipage}\bigskip +% \end{minipage}}\bigskip +% % \begin{macrocode} \let\@materia\empty \def\Materia#1{\def\@materia{#1}}\let\materia\Materia % \end{macrocode} % % Things get more complicated for doctoral theses; in general -% there is no supervisor; at most if a professor is assigned to supervise or control the PhD student's work this may be called +% there is no supervisor; at most if a professor is assigned +% to supervise or control the PhD student's work this may be called % in whatever mode but here we assume his name is input % with the command |\tutore| even if “tutor” does not appear -% as the best choice; in any case in Italian “tutore” does +% to be the best choice; in any case in Italian “tutore” does % not have the same meaning as the English word “tutor”. % % Most Doctoral Schools require to name the School's director @@ -4940,7 +5143,7 @@ Skipping any redefinition\MessageBreak}% % this bundle accepts up to three names for each category. % The |\second...| commands set the plural forms of the % labels printed above the name lists. For the candidates -% there are different commands to input ladies or gentlemen +% there are different commands to input women or men % names; according to the masculine (ending in `o') % or feminine (ending in `a') commands, the appropriate % true or false values are assigned to the boolean variable @@ -4966,7 +5169,7 @@ Skipping any redefinition\MessageBreak}% % specification so that different actions must be taken; % if the option \texttt{classica} is in force, then the % formatting of the “date” may be still different. -% This command is aliased with |\esamendidottorato| +% For PhD theses this command is aliased by |\esamendidottorato| % which literally means “defence of the doctoral dissertation”; % nevertheless both commands refer to a simple date % in one of those formats. @@ -5058,7 +5261,7 @@ Skipping any redefinition\MessageBreak}% \def\annoaccademico#1{\ifclassica \def\@submitdate{{\large\textsc{\AnnoAccademico}} {\Large\s@tanno#1!}} \else - \PackageWarning{toptesi}{\string\annoaccademico\space + \PackageWarning{topfront}{\string\annoaccademico\space is usable only when the\MessageBreak `classica' option is in force}% \def\@submitdate{\AnnoAccademico\ #1 --- Needs the `classica' option} @@ -5077,7 +5280,11 @@ Skipping any redefinition\MessageBreak}% % literal information to be typeset in the title page. % |\ciclodidottorato| requires an uppercase roman numeral % (in Italy), but it can accept anything that can precede -% the infix word “cycle”. +% the infix word “cycle”. Notice: in many contries roman numerals +% are generally used as ordinal adjectives; in other countries +% roman numerals are just numbers; therefore the fortieth cycle +% in Italy is marked as “XL ciclo”, while in France it is marked +% as “XL\raise0.7ex\hbox{\scriptsize e} cycle”. % Macros |\corsodilaurea| and |\corsodidottorato| specify % the degree course qualification; you would specify just % “Elettronica”, for example, and the module will write @@ -5244,8 +5451,7 @@ Skipping any redefinition\MessageBreak}% % override the configuration ones. % % \begin{description}[noitemsep] -% \def\Item[#1]{\item[\normalfont\texttt{\char92#1}] -% sets or changes the string} +% \def\Item[#1]{\item[\cs{\char92#1}] sets or changes the string} % \Item[FacoltaDi] “Facolt\`a di” in, say, “Faculty of” % \Item[DottoratoIn] “Dottorato in” in, say, “PhD in” % \Item[CorsoDiLaureaIn] “Corso di Laurea in” in, say, @@ -5311,14 +5517,13 @@ Skipping any redefinition\MessageBreak}% % the single |\CandidateName| that should be used in a % language depended way and with the correct number and % gender once for all. -% The four endings in the Italian strings allow to -% exercise the correct selection only for Italian; -% a specific test is made inside the |\frontespizio| -% command; because of this, the same machinery cannot -% be used, say, for French but maybe in the future this -% feature is resolved in a proper way. The same is true -% for the supervisor and the co-supervisor strings that -% may be changed once for all with |\AdvisorName| and +% The four endings in the Italian strings used to allow +% the correct selection only for Italian. +% With the current of this TOPtesi bundle the tests work +% in a different way, so as to perform correctly also in +% other languages. The same is true for the supervisor +% and the co-supervisor strings that may be changed once +% for all with |\AdvisorName| and % |\CoAdvisorName|. % \begin{macrocode} \IfFileExists{\jobname.cfg}{\input{\jobname.cfg}}% @@ -5511,7 +5716,7 @@ Skipping any redefinition\MessageBreak}% % environment, we have to behave as with the |\frontespizio| % command, but we must test for a possible asterisk following % the command; for this reason we defined the |\TPTmaybestar| -% that% absorbs one following token: if the token is an +% that absorbs one following token: if the token is an % asterisk, we set the appropriate settings for the previous % behaviour of the isolated command, but if it is % not an asterisk we must set it back into the list after @@ -5714,7 +5919,7 @@ Skipping any redefinition\MessageBreak}% % Going down in the title page, now comes the optional % insertion of the university logo(s); “optional” in both % meanings: one or more university logos are not generally -% required in a thesis, and in case it depends if the +% required in a thesis, and, in case, it depends if the % logo(s) have to be put in the header or here. % This is a simple task since the |\logosede| already % defined the contents to the box |\TPT@logobox|, and this @@ -5722,7 +5927,7 @@ Skipping any redefinition\MessageBreak}% % with its argument in a specific line of the configuration % file or within the |frontespizio| environment. % If such box |\TPT@logobox| is void, the already defined -% |\printloghi| macro does not do anything. +% |\printloghi| macro does not do anything.^^A >>>>>> % \begin{macrocode} \unless\iftopTPTlogos {\vfill\centering \printloghi\par}\fi @@ -5784,7 +5989,7 @@ Skipping any redefinition\MessageBreak}% % % For the supervisor(s) and the candidate(s) name(s) % a different approach is used for each one of the three -% categories of theses. If a bachelor degree +% categories of theses persons. If a bachelor degree % report is dealt with, the name of the \emph{single} % candidate is centred and written in caps-and-small-caps. % \begin{macrocode} @@ -5800,7 +6005,7 @@ Skipping any redefinition\MessageBreak}% % line with proper number and gender; in the second line % the first name, and in the subsequent lines, % if there are any, the other names. These virtual boxes -% actually contain a tabular environment each; these +% in reality contain a tabular environment each; these % environments shall be actually typeset when these virtual % box macros are executed. If the \texttt{classica} option % is in force no label is set over the principal advisor @@ -5824,7 +6029,7 @@ Skipping any redefinition\MessageBreak}% % below the candidate's name. % If the user wants it typeset on the same line and or with a % different label s/he has to redefine the macro |\IDlabel| by -% means of the \cs{ID} macro described in previous sections; +% means of the \cs{ID} macro described in previous sections. % % Example redefinitions are shown in the sample files. % Notice that with the new definition of the candidates' setting @@ -5990,9 +6195,9 @@ Skipping any redefinition\MessageBreak}% % words and labels, and the commands to introduce the % specific thesis data; eventually it specifies the title % page layout and provides for its generation and to a -% copyright and disclaimer sentence on its verso page. +% copyright and disclaimer sentence on its page verso. % -% It produces also a colophon where some data concerning +% The module produces also a colophon where some data concerning % the thesis typesetting details are given. This colophon % is saved and used on the last even page of the complete thesis. % @@ -6049,27 +6254,29 @@ Skipping any redefinition\MessageBreak}% % \begin{macrocode} \AtBeginDocument{% \providecommand\diff{}\renewcommand{\diff}{\mathop{}\!\mathrm{d}} -\providecommand{\gei}{\ensuremath{\mathop{\mathrm{\mathstrut j}}\nolimits}} +\providecommand{\iu}{\ensuremath{\mathop{\mathrm{\mathstrut i}}\nolimits}} +\providecommand{\ju}{\ensuremath{\mathop{\mathrm{\mathstrut j}}\nolimits}} \providecommand{\eu}{\ensuremath{\mathop{\mathrm{e}}\nolimits}} -\let\iu\gei} +\let\gei\ju} % \end{macrocode} % Such a definition allows to typeset math expression containing % integrals with a small space between the integrand and the % integrating differential; on the contrary the leading space does % not disturb typesetting differential equations. The above % definitions include also the \sigla{ISO} compliant ways of writing -% the Napier number `e', and the imaginary unit |\iu| that -% sets an operator-like roman `j' as it is customary in -% most engineering disciplines. The alias |\iu| to the |\gei| -% command may be redefined if the PhD student wants to use for -% example ‘i’; the example file \texttt{toptesi-scudo-example.tex} -% uses the Greek ‘iota’ and specifies that this use is \emph{wrong}! +% the Napier number `e', and the two forms of imaginary unit |\iu| +% and |\ju| that set an operator-like roman `i' or`j' as it is customary in +% most engineering disciplines. The common alias |\gei| to the |\ju| +% command may be redefined if the PhD student wants to use a common +% phonetically transliterated name for the letter `j'; the example file +% \texttt{toptesi-scudo-example.tex} uses the Greek ‘iota’ and specifies +% that this use is \emph{wrong}! % % Next an option is defined, |mybibliostyle| which allows the user to % establish his own style for the bibliography. By default the % |toptesi-scudo| module loads |biblatex| with a set of options that % allow numerical listing and numerical citation according to the IEEE -% standards for its Transaction. PhD students doing their theses in +% standards for its Transactions. PhD students doing their theses in % other scientific domains may use different styles for bibliographics % listings and citation methods. By setting this option |mybibliostyle| % among the class ones, it is automatically treated as a global option @@ -6115,12 +6322,11 @@ Skipping any redefinition\MessageBreak}% % are preferred by many users who are not aware that % computations are now native of modern typesetting % programs\footnote{All the three typesetting programs we are dealing -% with here. \LuaLaTeX\ can do also floating point computations -% thanks to the language Lua; all programs may benefit from the -% advances of the \LaTeX3 language, that has a special facilities +% with here. All modern programs may benefit from the +% advances of the \LaTeX3 language, that has special facilities % to perform floating point calculations.}; also advanced % tests are natively available with such programs, but -% since this class loads the |etooolbox|, its powerful +% since this class loads the |etoolbox|, its powerful % and robust commands are already available; therefore % these packages are loaded only for the user comfort, % although they are not really required. @@ -6162,7 +6368,7 @@ Skipping any redefinition\MessageBreak}% \@ifpackageloaded{xparse}{}{% \RequirePackage{xparse}}% Command and environment advanced definitions \RequirePackage{lscape} % Supports landscape Layout -\RequirePackage{setspace} % Define line spacing in paragraph. Don't use! +\RequirePackage{setspace} % Define line spacing in paragraph. Don't use it! \RequirePackage{calc} % Calculation macros \RequirePackage{ifthen} % Conditional statements \RequirePackage{caption} % Configure captions @@ -6178,7 +6384,7 @@ Skipping any redefinition\MessageBreak}% % groups is defined; they are mostly examples of “how to”; % and in particular they are models to define other % nomenclature groups. Notice that the string comparison -% tests are made through the testing robust commands +% tests are made through the robust testing commands % provided by the |etoolbox| package. % \begin{macrocode} \usepackage[intoc]{nomencl}% Generate nomenclatures or glossaries @@ -6198,10 +6404,10 @@ Skipping any redefinition\MessageBreak}% % raw file must be processed by means of program % \prog{makeindex} with special options. Assuming % that your thesis main file is named |MyPhDthesis.tex|, -% after compiling with pdfLaTeX, you have to open a +% after compiling with pdfLaTeX, you should open a % terminal, change the working directory into that % where your main file is stored, and -% issue and execute the line command +% enter and execute the line command %{\small %\begin{verbatim} %makeindex -s nomencl.ist -t MyPhDthesis.nlg -o MyPhDthesis.nls MyPhDthesis.nlo @@ -6223,9 +6429,11 @@ Skipping any redefinition\MessageBreak}% % procede by closing the auxiliary file that collect % nomenclature entries, and run \prog{makeindex} with % the proper options and file names directly through the -% “magic command” |\write18|. -% -% We then define a new command +% “magic command” |\write18|. Again all this is automatically +% performed by the macros defined by the \file{toptesi-scudo} +% module, therefore your nomenclature is up to date at each +% run, without any need to explicitly use unusual undocumented +% native \TeX\ commands. In facts we define a new command % to process the nomenclature files and print them out. % % Again the test for an empty optional argument is made by @@ -6277,7 +6485,7 @@ Skipping any redefinition\MessageBreak}% % |resources.bib|, if it exists; since a generic name is not recommended, % we suggest to name at least one of your databases with the same name % as the user's thesis master file with extension |.bib|; the |\jobname| -% macro, actually contains the thesis master file. If neither +% macro, actually contains the thesis master file name. If neither % |resources.bib| nor |\jobname.bib| exist or the typesetting engine % cannot find them, it is the user's responsibility to create a |.bib| % file and include it in his/her master file preamble as an argument to @@ -6662,6 +6870,7 @@ This class is available in every up-to-date and complete % \fi % % \subsection{The \texttt{topcoman.sty} code} +% % This file may be used as an independent extension package % for the \texttt{report} document class, and possibly for % other classes. @@ -6705,7 +6914,7 @@ This class is available in every up-to-date and complete % Greek letters taken from the math italic font; the % upright ones are still available within the |\mathrm| % command argument. -% Attention: \cs{DeclareSlantedCapitalGreekLetters} is defined +% Warning: \cs{DeclareSlantedCapitalGreekLetters} is defined % only when using \prog{pdflatex}; with the other two engines % it is disabled and produces a warning. % \begin{macrocode} @@ -6758,7 +6967,8 @@ This class is available in every up-to-date and complete % \texttt{babel} language if the thesis is typeset with % \textsf{pdflatex} that loads that package; these commands % are not predefined if the thesis is typeset with \XeLaTeX\ -% or \LuaLaTeX\ that do not load the \texttt{babel} package; +% or \LuaLaTeX\ that often load \pack{polyglossia} instead +% of the \pack{babel} package; % but remember; this package may be used as a stand alone % one, without the initial call by the \texttt{toptesi} % document class, so that the language Italian might be @@ -6768,60 +6978,69 @@ This class is available in every up-to-date and complete % \begin{macrocode} \providecommand{\ohm}{\textormath{\textohm}{\mathrm{\Omega}}} \@ifpackageloaded{toptesi}{% -\providecommand\ped{}\providecommand\ap{}% -\renewcommand*{\ped}[1]{\textormath{\textsubscript{#1}}{_{\mathrm{#1}}}}% -\renewcommand*{\ap}[1]{\textormath{\textsuperscript{#1}}{^{\mathrm{#1}}}}}% -{\providecommand*{\ped}[1]{\textormath{\textsubscript{#1}}% - {_{\mathrm{#1}}}}% -\providecommand*{\ap}[1]{\textormath{\textsuperscript{#1}}% - {^{\mathrm{#1}}}}} -% -\@ifpackageloaded{siunitx}{\def\unit#1{\si{\,#1}}}% - {\providecommand\unit{}% - \renewcommand\unit[1]{\ensuremath{{\mathrm{\,#1}}}}% - } -\providecommand{\gei}{\ensuremath{\mathop{\mathrm{\mathstrut j}\nolimits}}} + \providecommand\ped{}\providecommand\ap{}% + \renewcommand*{\ped}[1]{\textormath{\textsubscript{#1}}{_{\mathrm{#1}}}}% + \renewcommand*{\ap}[1]{\textormath{\textsuperscript{#1}}{^{\mathrm{#1}}}}% + \providecommand\diff{}\renewcommand{\diff}{\mathop{}\!\mathrm{d}} +% +}{% + \providecommand*{\ped}[1]{\textormath{\textsubscript{#1}}% + {_{\mathrm{#1}}}}% + \providecommand*{\ap}[1]{\textormath{\textsuperscript{#1}}% + {^{\mathrm{#1}}}}% +} +% +\@ifpackageloaded{siunitx}{% + \def\unit#1{\si{\,#1}} +}{% + \providecommand\unit{}% + \renewcommand\unit[1]{\ensuremath{{\mathrm{\,#1}}}}% +} +\providecommand{\gei}{\ensuremath{\mathop{\mathrm{\mathstrut j}}\nolimits}} \providecommand{\eu}{\ensuremath{\mathop{\mathrm{e}}\nolimits}} -\providecommand{\micro}{\textormath{\textmu}{% - \ifPDFTeX - \ifdefined\muup\muup\else\mbox{\textmu}\fi - \else - \mathup{\mu}% - \fi -}} +\providecommand{\micro}{% + \textormath{\textmu}{% + \ifPDFTeX + \ifdefined\muup\muup\else\mbox{\textmu}\fi + \else + \mathup{\mu}% + \fi + }% +} \providecommand{\gradi}{\textormath{\textdegree}{^\circ}} % \end{macrocode} % -% Before this version 6.xx.yy this package used to define +% Before this major version 6, this package used to define % the command |\listing| for listing program sources; those -% definitions got very obsolete in front of several packages -% already available for this task. For example the package -% |listings|, very elegant also for the various configurations +% definitions became obsolete compared to several packages +% available for this task. For example the package +% |listings|,that is very elegant also for the various configurations % it can use; un fortunately it works fine only for verbatim % sources that contain only \textsc{ascii} characters; yes, % it is possible the definition of special commands to typeset % isolated characters not belonging to the \textsc{ascii} % table, but it is an error prone process. Giving up the -% niceties of |listings|, the |fancyvrb| works very fine +% niceties of |listings|, the |fancyvrb| works very well % with \sigla{UNICODE} and UTF-8 encoded characters. % % For backwards compatibility we maintain the command % |\listing| as a user interface to the |VerbatimInput| % of package |fancyvrb| with an initial setting of a -%|\small| font size. +% |\small| font size. % \begin{macrocode} \RequirePackage{fancyvrb} \fvset{fontsize=\small} \let\listing\VerbatimInput % \end{macrocode} +% % Of course before using |\listing| the user can set any other % special configuration s/he desires among those usable with -% package |fancyvrb|; the default set up shown above is good -% for \LaTeX\ code input, as well as for any programming language, whose -% source lines are shorter than 75--80 characters, depending +% package |fancyvrb|; the default set-up shown above is good +% for \LaTeX\ code input, as well as for any programming language, +% whose source lines are shorter than 75--80 characters, depending % on the normal font size and the document text width; the user -% can edit the source file as well as setting a smaller font -% size than |\small|. In certain circumstances the user +% can edit the source file as well as setting a font +% size smaller than |\small|. In certain circumstances the user % should accept protruding lines as well as a compromise % between editing the source file and selecting a smaller % font size. This is not a bug of the package, nor a fault @@ -6834,7 +7053,7 @@ This class is available in every up-to-date and complete % Remember that the comma as a decimal separator is % required for all languages except English. If you % use this module outside TOPtesi, but as an extension -% of other classes or modules, it's up to you to define +% to other classes or modules, it's up to you to define % an “intelligent comma” macro or to load either the % |icomma.sty| or the |ncccomma.sty| modules that define % such a macro: the |icomma| package defines the comma @@ -6858,10 +7077,10 @@ This class is available in every up-to-date and complete % on and off by using the commands |\IntelligentComma| % and |\NoIntelligentComma|. % -% The solution of the solutions would be using the |siunitx| -% package, whose command |\num| handles any fractional -% decimal number in the proper way adding also the digit -% triplets separation of digits when they exceed the number +% The best solution would be using the |siunitx| +% package; its |\num| command handles any fractional +% decimal number in the proper way and also adds the +% triplet digit separation when they exceed the number % of four before and/or after the decimal separator. In % many cases this might be a heavy burden to load a whole % complex package just for this task, but |siunitx| @@ -6897,11 +7116,11 @@ This class is available in every up-to-date and complete %\textsf{B\simulatedSC{ib}\TeX} %\end{verbatim} % in order to get a decent approximation of small caps; this -% poor man solution should not be necessary when using OpenType +% poor man solution is not necessary when using OpenType % fonts that have their facilities to use fake small caps in case -% this shape was missing from the collection. This is why the -% \cs{simulatedSC} macro is defined only if |pdfLaTeX| is being -% used for typesetting. +% this shape was missing from the selected font collection. +% This is why the \cs{simulatedSC} macro is defined only if +% |pdfLaTeX| is being used for typesetting. % % A user, Antonio Mele, suggested and requested the % possibility of having the figure and table names @@ -6943,10 +7162,16 @@ This class is available in every up-to-date and complete %\iffalse %<*topmon>^^A MONOGRAFIA -- TRIENNALE %\fi -%\subsection{The \texttt{monografia} module code} +%\subsection{The \texttt{toptesi-monografia} module code} +% % We start by checking if certain files have ben loaded and in % case we load then. We check if certain switches are defined, % and in case we define such switches. +% Notice that by loading this module for bachelor theses the facilities +% for selecting the folio and/or the header text position are not +% available if this module is used with any class different from +% \class{toptesi}; after all this module defines mainly the way +% of typesetting the title page. % \begin{macrocode} \monografiatrue \@ifpackageloaded{etoolbox}{}{\RequirePackage{etoolbox}} @@ -7092,6 +7317,7 @@ This class is available in every up-to-date and complete \newcommand\StrutturaDi[1]{\gdef\@strutturadi{#1\unskip\xspace}} \newcommand\struttura[2][]{\gdef\@struttura{\ifempty{#1}{}{#1 }% \@strutturadi #2}} +\let\FacoltaDi\StrutturaDi \let\facolta\struttura % \end{macrocode} % Generally bachelor degree courses are not developed within % international agreements such as Erasmus, but it may not be @@ -7154,9 +7380,9 @@ This class is available in every up-to-date and complete % two more commands are optionally used: |\luogo| to establish % the location of the signature, and |\giorno| to establish a % signature date different from the current date. If the |\giorno| -% is not specified, its value maintains a meaningless default +% is not specified, its value is a meaningless default % string, and upon testing for such a string, no location, -% date and signature is typeset in the legal page; if the +% date and signature is typeset in the copyright page; if the % current date should be used, the user should specify % |\giorno{}|, with a really empty argument. % \begin{macrocode} @@ -7183,7 +7409,7 @@ This class is available in every up-to-date and complete % The label for the candidate list requires a list of comma % separated names, to a maximum of four names; in order they % should be the singular masculine, the plural masculine, the -% singular feminine, and the plural feminine names. No one is +% singular feminine, and the plural feminine names. No one is % mandatory, and the list may be completely empty if the label % should remain blank. The list is scanned and the names are % assigned to some internal variables that will be used according @@ -7200,13 +7426,13 @@ This class is available in every up-to-date and complete %\end{ttsintassi} % This command, as it may be seen, may be used also to set the % name list in languages different from Italian. -% It goes by itself that if the user typesets the thesis in a +% It goes without saying that if the user typesets the thesis in a % language where names are gender indifferent (as English, % Spanish, and other ones) s/he has two choices: ether s/he % uses the command with just two arguments, as shown above, % and uses only the masculine commands |\candidato|, % |\secondocandidato|, and |\terzocoandidato| even with names -% of female students, or s/he specifies the same names in the +% of student women, or s/he specifies the same names in the % arguments~3 and~4, as in arguments ~1 and~2. Lacking this % action, the corresponding titling names are blank. % \begin{macrocode} @@ -7238,7 +7464,7 @@ This class is available in every up-to-date and complete % from the \LaTeX\ kernel environments that accepts an optional % asterisk that becomes part of the environment name, and must % be repeated in the closing environment statement, with the -% |xparse| facilities the asterisk is just an argument to the +% |xparse| facilities the asterisk is just an argument among the % argument list of the opening command: therefore the source % file contains an opening statement of the form % |\begin{environment}*|, not |\begin{environment*}|. The user @@ -7394,7 +7620,8 @@ This class is available in every up-to-date and complete %\iffalse %<*topmag>^^A MAGISTRALE %\fi -% \subsection{Code for \texttt{master} thesis} +% \subsection{The \texttt{toptesi-magistrale} module code} + % Here we document the code for the \opz{magistrale} option. % It is a little more complicated than the code for other % thesis types, because the title page may be typeset in different @@ -7409,6 +7636,9 @@ This class is available in every up-to-date and complete % In facts if this module does not receive the suitable % settings from package |toptesi|,it is possible to call it % with the suitable options as explained below. +% In any case if the module is loaded by a class different +% from \class{toptesi} the facilities for chosing the folio and/or +% the header text positions are not available. % \begin{macrocode} \@ifpackageloaded{etoolbox}{}{\RequirePackage{etoolbox}} \@ifpackageloaded{xspace}{}{\RequirePackage{xspace}} @@ -7449,8 +7679,7 @@ This class is available in every up-to-date and complete % in the counter remains available anyhow; therefore it is % not excluded that multiple tomes might be typeset in one % output \sigla{PDF} file to be split in separate files as described -% in section~\ref{sec:topmagistrale}; I did not test this -% functionality but I do not exclude it.^^A CONTROLLARE +% in section~\ref{sec:topmagistrale}. % \begin{macrocode} \ifcsundef{c@tomo}{\newcounter{tomo}{\setcounter{tomo}{0}}}{} \providecommand\tomo{} @@ -7560,10 +7789,9 @@ This class is available in every up-to-date and complete % \begin{macrocode} \let\@stitle\empty % default short title string -\newcommand*{\titolo}[2][]{% -\ifstrequal{#1}{}% - {\gdef\@stitle{#2}}{\gdef\@stitle{#1}}% - \gdef\@titolo{#2}% +\providecommand\titolo{} +\RenewDocumentCommand{\titolo}{O{#2} m}{% + \gdef\@stitle{#1}\gdef\@titolo{#2}% }% \def\sottotitolo#1{\gdef\@subtitle{#1}} @@ -7640,7 +7868,7 @@ This class is available in every up-to-date and complete % Here we define the necessary commands to fill up a comma % separated list of logo graphic-file names; we define % everything up to the |\printlogos| command that provides -% to printing a list of images, duly separated by adequate +% printing a list of images, duly separated by adequate % space, all scaled to the same height, and, possibly, even % the whole logo string duly scaled to fit in the title page % width. The |\logosede| command, that can be used several @@ -7648,12 +7876,12 @@ This class is available in every up-to-date and complete % argument consisting in a dimension; it is used to scale the % height of the logo image to the desired value, so that the % whole string of images does not have unusual different -% logo heights. This dimension is preset to one seventh of -% the |\textwidth| and on the average it is well suited. With -% the standard |toptesi| class printed on A4 paper, such height -% equals 25\,mm; of course on smaller paper it is proportionally -% smaller; on American sized sheets it may be a little larger, -% but in general it is adequate to the page size. +% logo heights. This dimension is preset to 80\% the mean +% width of the page margins, and on the average it is well suited. +% With the standard |toptesi| class printed on A4 paper, such +% height equals about 25\,mm; of course on smaller paper it is +% proportionally smaller; on American sized papers it may be +% a little larger, but in general it is adequate to the page size. % \begin{macrocode} \newlength{\TPT@logospace}\TPT@logospace=3em\relax \newsavebox{\TPT@logobox} @@ -7706,7 +7934,7 @@ This class is available in every up-to-date and complete % % Here we define the preset strings; most of them are empty % strings, but some are real words; the setting commands -% listed before can easily be used to localise such string +% listed before can easily be used to localise such strings % in different languages. % \begin{macrocode} \@ifundefined{@titolo}{\def\@titolo{}}{} @@ -7817,7 +8045,7 @@ This class is available in every up-to-date and complete % is wrong. % % This choice was made because its programming is simpler, -% but in view of the end user it is simpler to use: for +% but also, in view of the end user, it is simpler to use: for % example, if the user does not use the asterisk for typesetting % the logos at the top of the page, and in a second time % s/he decides that the title page should be typeset with @@ -8024,7 +8252,7 @@ This class is available in every up-to-date and complete \par\clearpage % \end{macrocode} % -% It is useful to remind that the legal page in general is not +% It is useful to remind that the copyright page in general is not % compulsory, but it is becoming frequently requested by more % and more universities. The user can fill up the % |\retrofrontespizio| argument with as many paragraphs as are @@ -8054,7 +8282,7 @@ This class is available in every up-to-date and complete %\iffalse %<*topdoc>^^A DOTTORALE %\fi -% \subsection{The \texttt{toptesi-dottorale} module} +% \subsection{The \texttt{toptesi-dottorale} module code} % What follows is mainly a replica of the |topfront| module % where useless commands have been eliminated; “useless” % in view of creating a title page for a Ph.D.~thesis. @@ -8306,7 +8534,7 @@ This class is available in every up-to-date and complete \let\struttura\facolta % \end{macrocode} % -% next we define how to handle one or more logos; even in +% Next we define how to handle one or more logos; even in % PH.D. schools there might be situations where the Ph.D.~program % has been carried on in several universities; it might be % required to set the logos of the universities where the research @@ -8452,10 +8680,10 @@ This class is available in every up-to-date and complete % We now start setting the |ThesisTitlePage| environment; % we use the |xparse| functionality to define it; the % environment accepts an optional asterisk as its first -% and only argument, that is a single token may be entered -% without brackets as the very first token after the -% environment opening statement. If the user wants to use -% this optional argument, s/he must enter +% and only (boolean type) argument, that is a single token +% is entered without brackets as the very first token after +% the environment opening statement. If the user wants to +% use this optional argument, s/he must enter % |\begin{ThesisTitlePage}*| with the asterisk after the % closing brace. The presence of the asterisk sets the % logo position to the title page lower half, while its @@ -8705,7 +8933,10 @@ This class is available in every up-to-date and complete % %\fi % +%^^A SCUOLA SECONDARIA SUPERIORE +% % \subsection{The \texttt{toptesi-sss} module code} +% % The module for typesetting the high-school final-work % title-page starts here. We avoid using a |.def| file and put % all necessary commands in one file. @@ -8738,7 +8969,6 @@ This class is available in every up-to-date and complete \RequirePackage{ifthen} % Conditional statements \RequirePackage{booktabs} % professional rules in tables \RequirePackage{multirow} % Multirow table cells are not professional -\RequirePackage[autostyle]{csquotes} % necessary for biblatex \ifPDFTeX \RequirePackage{indentfirst}\fi \raggedbottom % \end{macrocode} @@ -8978,4 +9208,13 @@ Anno scolastico \@annoscolastico}} % package xparse new (may be not that new, but new for me) syntax % that allows to declare the optional argument descriptors so as to % inherit the values of other arguments.Such syntax avoids a lot of -% fragile tests, and is very handy. \ No newline at end of file +% fragile tests, and is very handy. +%%%% (version 6.3.07) corrected "Attention!" and "It goes by itself" +% by "Warning!" and "It goes without saying" respectively. +%%%% (version 6.4.02) Besides correcting some typos, some options were +% added in order to set page headers and folios on specific positions; +% by default headers are centred, and folios are centred in footers; +% options allow to shift them towards the external margins and +% sometimes to set footers in headers. Moreover the PDF/A-2b is now +% described and suggested to set it as the preferred PDF/A conformance +% level. Documentation has been modified accordingly. diff --git a/macros/latex/contrib/toptesi/toptesi.pdf b/macros/latex/contrib/toptesi/toptesi.pdf index 6b16bbf05c..b2f705688b 100644 Binary files a/macros/latex/contrib/toptesi/toptesi.pdf and b/macros/latex/contrib/toptesi/toptesi.pdf differ diff --git a/macros/latex/contrib/toptesi/veraPDFnoconformance.pdf b/macros/latex/contrib/toptesi/veraPDFnoconformance.pdf new file mode 100644 index 0000000000..97db0b107b Binary files /dev/null and b/macros/latex/contrib/toptesi/veraPDFnoconformance.pdf differ diff --git a/macros/luatex/latex/cloze/cloze.dtx b/macros/luatex/latex/cloze/cloze.dtx index 18780780f2..e8d7e3ea17 100644 --- a/macros/luatex/latex/cloze/cloze.dtx +++ b/macros/luatex/latex/cloze/cloze.dtx @@ -1,6 +1,6 @@ % \iffalse meta-comment % -% Copyright (C) 2015-2016 by Josef Friedrich +% Copyright (C) 2015-2020 by Josef Friedrich % ---------------------------------------------------------------------- % This work may be distributed and/or modified under the conditions of % the LaTeX Project Public License, either version 1.3 of this license @@ -28,13 +28,15 @@ %\NeedsTeXFormat{LaTeX2e}[1999/12/01] %\ProvidesPackage{cloze} %<*package> - [2016/06/23 v1.2 Package to typeset cloze worksheets or cloze tests] + [2020/05/20 v1.4 Package to typeset cloze worksheets or cloze tests] % %<*driver> \documentclass{ltxdoc} \usepackage[show]{cloze} +\usepackage{graphicx} \usepackage{paralist} \usepackage{titlesec} +\usepackage{mdframed} \titleformat{\paragraph}[hang]{% \normalfont\normalsize\bfseries% }{\theparagraph}{1em}{} @@ -59,38 +61,9 @@ \newcommand{\@minipagerestore}{\setlength{\parindent}{10pt}} \makeatother -\newsavebox{\examplebox} -\newenvironment{clozeexample}{% - \noindent% - \begin{lrbox}{\examplebox}% - \begin{minipage}{0.9\textwidth}% - \footnotesize% -}{% - \end{minipage}% - \end{lrbox}% - \begin{center}% - \fbox{\usebox{\examplebox}}% - \end{center}% -} - -% Colors for the codebox -\definecolor{grayline}{gray}{0.9} +\newmdenv{example} \definecolor{graybackground}{gray}{0.97} - -\newsavebox{\codebox} -\newenvironment{code}{% - \noindent% - \begin{lrbox}{\codebox}% - \begin{minipage}{0.9\textwidth}% -}{% - \end{minipage}% - \end{lrbox}% - \begin{center}% - \fcolorbox{grayline}{graybackground}{\usebox{\codebox}}% - \end{center}% -} - -\newcommand{\tighten}{\vspace{-6pt}} +\surroundwithmdframed[backgroundcolor=graybackground]{verbatim} \newcommand{\getdefaults}[1]{% \directlua{tex.print(cloze.get_defaults('#1'))}% @@ -114,7 +87,7 @@ \raggedleft% \MacroFont% \tt{% - #1% + \scantokens{\catcode`\_=12\relax#1}% }% }% } @@ -181,11 +154,9 @@ Lua\TeX{} that would be extremely painful otherwise"} in TUGboat, Volume the capabilities of the modern \TeX{} engine \emph{Lua\TeX}. Therefore, you must use Lua\LaTeX{} to create documents containing gaps. -\begin{code} \begin{verbatim} lualatex cloze-text.tex \end{verbatim} -\end{code} The main feature of the package is that the formatting doesn't change when using the |hide| and |show| \secref{sec:option-hide} options. @@ -197,18 +168,18 @@ aliqua. Ut enim ad minim veniam, quis nostrud \cloze{exercitation} ullamco laboris nisi ut \cloze{aliquip} ex ea commodo consequat.% } -\begin{clozeexample} +\begin{example} \clozelorem -\end{clozeexample} +\end{example} \clozeset{hide} The command |\clozeset{hide}| only shows gaps. When you put both texts on top of each other you will see that they perfectly match. -\begin{clozeexample} +\begin{example} \clozelorem -\end{clozeexample} +\end{example} \clozeset{show} @@ -218,9 +189,15 @@ on top of each other you will see that they perfectly match. \section{Usage} -There are three commands and one environment to generate -cloze texts: \cmd{\cloze}, \cmd{\clozefix}, \cmd{\clozefil} and -|clozepar|. +There are the commands +\cmd{\cloze}, +\cmd{\clozefix}, +\cmd{\clozefil}, +\cmd{\clozenol}, +\cmd{\clozestrike} and the environments +|clozepar| and +|clozebox| +to generate cloze texts. %% % \cloze @@ -238,28 +215,28 @@ width of a gap depends on the number of letters and the font used. The only option which affects the widths of a gap is the option |margin| \secref{sec:option-margin}. -\begin{clozeexample} +\begin{example} Lorem ipsum \cloze{dolor} sit amet, \cloze{consectetur} adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore \cloze{magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi} ut aliquip ex ea commodo consequat. -\end{clozeexample} +\end{example} \noindent It is possible to convert a complete paragraph into a `gap'. But don't forget: There is a special environment for this: \tt{clozepar} \secref{sec:command-clozepar}. -\begin{clozeexample} +\begin{example} \cloze{Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat.} -\end{clozeexample} +\end{example} \noindent The command \cmd{\cloze} doesn't change the behavior of the hyphenation. Let's try some long German words: -\begin{clozeexample} +\begin{example} es \cloze{Te\-le\-kom\-mu\-ni\-ka\-tions\-ü\-ber\-wach\-ung} geht @@ -289,7 +266,7 @@ die \cloze{Ab\-teil\-ungs\-lei\-ter\-in} Würze \cloze{Ober\-kom\-mi\-sar\-in} -\end{clozeexample} +\end{example} %% % \clozesetfont @@ -310,9 +287,9 @@ has the same effect as \clozesetfont{\Large} -\begin{clozeexample} +\begin{example} Excepteur \cloze{sint} occaecat \cloze{cupidatat} non proident. -\end{clozeexample} +\end{example} \noindent Please do not put any color definitions in \cmd{\clozesetfont}, as it won't work. Use the option @@ -323,9 +300,9 @@ into a normal sized typewriter font. \clozesetfont{\ttfamily\normalsize} -\begin{clozeexample} +\begin{example} Excepteur \cloze{sint} occaecat \cloze{cupidatat} non proident. -\end{clozeexample} +\end{example} \clozesetfont{\itshape} @@ -340,7 +317,7 @@ Excepteur \cloze{sint} occaecat \cloze{cupidatat} non proident. The command \cmd{\clozefix} creates gaps with a fixed width. The clozes are default concering the width \tt{\getdefaults{width}}. -\begin{clozeexample} +\begin{example} \noindent Lorem ipsum dolor sit amet: \begin{compactenum} \item \clozefix[width=5cm]{consectetur} @@ -348,27 +325,53 @@ clozes are default concering the width \tt{\getdefaults{width}}. \item \clozefix[width=5cm]{elit} \end{compactenum} sed do eiusmod. -\end{clozeexample} +\end{example} Gaps with a fixed width are much harder to solve. -\begin{clozeexample} +\begin{example} Lorem ipsum dolor \clozefix[align=center,width=3cm]{sit} amet, \clozefix[align=center,width=3cm]{consectetur} adipisicing elit, sed do eiusmod tempor incididunt \clozefix[align=center,width=3cm]{ut} labore et dolore magna aliqua. -\end{clozeexample} +\end{example} Using the option |align| you can make nice tabulars like this: -\begin{clozeexample} +\begin{example} \begin{tabular}{p{5cm}p{4cm}} \raggedleft Composer & Life span \\ \clozefix[width=5cm,align=right]{Joseph Haydn} & \clozefix{1723-1809} \\ \clozefix[width=5cm,align=right]{Wolfgang Amadeus Mozart} & \clozefix{1756-1791} \\ \clozefix[width=5cm,align=right]{Ludwig van Beethoven} & \clozefix{1770-1827} \\ \end{tabular} -\end{clozeexample} +\end{example} + +%% +% \clozenol +%% + +\subsubsection{\cmd{\clozenol}} +\label{sec:command-clozenol} +\DescribeMacro{\clozenol} \cmd{\clozenol}\oarg{options}\marg{some text}: +The macro name |clozenol| stands for \emph{“cloze no line”}. As the +the name suggests this macro typesets cloze texts without a line. + +\begin{verbatim} +Lorem \clozenol{ipsum dolor} sit amet. +\end{verbatim} + +\begin{example} +Lorem \clozenol{ipsum dolor} sit amet. +\end{example} + +\begin{verbatim} +Lorem \clozenol[textcolor=green]{ipsum dolor} sit amet. +\end{verbatim} + +\begin{example} +Lorem \clozenol[textcolor=green]{ipsum dolor} sit amet. +\end{example} %% % \clozefil @@ -382,12 +385,43 @@ The name of the command is inspired by \cmd{\hfil}, \cmd{\hfill}, and \cmd{\hfilll}. Only \cmd{\clozefil} fills out all available horizontal spaces with a line. -\begin{clozeexample} +\begin{example} Lorem ipsum dolor sit amet, \clozefil{consectetur adipisicing elit, sed do eiusmod.} Ut enim \clozefil{ad minim veniam} exercitation. -\end{clozeexample} +\end{example} + +%% +% \clozeextend +%% + +\subsubsection{\cmd{\clozeextend}} +\label{sec:command-clozeextend} + +\DescribeMacro{\clozeextend} \cmd{\clozeextend}\oarg{spaces}: +The command |\clozeextend| adds some invisible placeholders to extend +some cloze texts with blank space. + +\begin{verbatim} +\begin{itemize} +\item \clozefil{Lorem ipsum dolor sit amet, consectetur adipisicing +elit, sed do eiusmod tempor incididunt ut labore et dolore magna +aliqua.} +\item \clozefil{Ut enim ad minim veniam \clozeextend[20]} +\item \clozefil{quis nostrud \clozeextend[20]} +\end{itemize} +\end{verbatim} + +\begin{example} +\begin{itemize} +\item \clozefil{Lorem ipsum dolor sit amet, consectetur adipisicing +elit, sed do eiusmod tempor incididunt ut labore et dolore magna +aliqua.} +\item \clozefil{Ut enim ad minim veniam \clozeextend[20]} +\item \clozefil{quis nostrud \clozeextend[20]} +\end{itemize} +\end{example} %% % clozepar @@ -401,7 +435,7 @@ Ut enim \clozefil{ad minim veniam} exercitation. transforms a complete paragraph into a cloze text. The options |align|, |margin| and |width| have no effect on this environment. -\begin{clozeexample} +\begin{example} Lorem ipsum dolor sit amet, consectetur adipisicing elit ullamco laboris nisi. @@ -412,7 +446,140 @@ reprehenderit in voluptate velit esse cillum. \end{clozepar} Excepteur sint occaecat cupidatat non proident. -\end{clozeexample} +\end{example} + +%% +% clozebox +%% + +\subsubsection{\tt{clozebox}} +\label{sec:command-clozebox} + +\DescribeEnv{clozebox} |\begin{clozebox}|*\oarg{options} \dots +\textit{some text} \dots |\end{clozebox}|: The environment \tt{clozebox} +surrounds a text with a box. The starred version omits the line +around the box. Use the options |boxwidth| and |boxheight| to specify +the dimensions of the box. By default the width of the box is +|\linewidth|. + +\begin{verbatim} +\begin{clozebox} +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod +tempor incididunt ut labore et dolore magna aliqua. +\end{clozebox} +\end{verbatim} + +\bigskip +\noindent +|\clozehide| +\clozehide +\bigskip + +\begin{center} +\begin{clozebox}[boxwidth=8cm] +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod +tempor incididunt ut labore et dolore magna aliqua. +\end{clozebox} +\end{center} + +\bigskip +\noindent +|\clozeshow| +\clozeshow +\bigskip + +\begin{center} +\begin{clozebox}[boxwidth=8cm] +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod +tempor incididunt ut labore et dolore magna aliqua. +\end{clozebox} +\end{center} + +\paragraph{Option boxwidth} +\label{sec:command-clozebox-boxwidth} +See the documentation about the option \secref{sec:option-boxwidth}. + +\begin{verbatim} +\begin{clozebox}[boxwidth=5cm] +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod +tempor incididunt ut labore et dolore magna aliqua. +\end{clozebox} +\end{verbatim} + +\begin{center} +\begin{clozebox}[boxwidth=5cm] +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod +tempor incididunt ut labore et dolore magna aliqua. +\end{clozebox} +\end{center} + +\paragraph{Option boxheight} +\label{sec:command-clozebox-boxheight} +See the documentation about the option \secref{sec:option-boxheight}. + +\begin{verbatim} +\begin{clozebox}[boxwidth=5cm,boxheight=5cm] +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod +tempor incididunt ut labore et dolore magna aliqua. +\end{clozebox} +\end{verbatim} + +\begin{center} +\begin{clozebox}[boxwidth=5cm,boxheight=5cm] +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod +tempor incididunt ut labore et dolore magna aliqua. +\end{clozebox} +\end{center} + +\paragraph{starred} + +% starred +\begin{verbatim} +\begin{clozebox}*[boxwidth=5cm,boxheight=5cm] +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod +tempor incididunt ut labore et dolore magna aliqua. +\end{clozebox} +\end{verbatim} + +\begin{center} +\begin{clozebox}*[boxwidth=5cm,boxheight=5cm] +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod +tempor incididunt ut labore et dolore magna aliqua. +\end{clozebox} +\end{center} + +%% +% clozespace +%% + +\subsubsection{\tt{clozespace}} +\label{sec:command-clozespace} + +\DescribeEnv{clozespace} |\begin{clozespace}|\oarg{options} \dots +\textit{some text} \dots |\end{clozespace}| + +\begin{verbatim} +\begin{clozespace}[spacing=2] +\clozesetfont{\ttfamily\Huge} +Lorem \cloze{ipsum} dolor sit \cloze{amet}, consectetur adipisicing +elit, sed do eiusmod tempor incididunt ut labore et dolore magna +aliqua. Ut enim ad minim veniam, quis \cloze{nostrud} +exercitation ullamco \cloze{laboris} nisi ut aliquip ex ea commodo +consequat. +\end{clozespace} +\end{verbatim} + +\begin{example} +\begin{clozespace}[spacing=2] +\clozesetfont{\ttfamily\Huge} +Lorem \cloze{ipsum} dolor sit \cloze{amet}, consectetur adipisicing +elit, sed do eiusmod tempor incididunt ut labore et dolore magna +aliqua. Ut enim ad minim veniam, quis \cloze{nostrud} +exercitation ullamco \cloze{laboris} nisi ut aliquip ex ea commodo +consequat. +\vspace{-0.8cm} +\end{clozespace} +\end{example} %% % \clozeline @@ -428,20 +595,16 @@ To create a cloze line of a certain width, use the command \tt{\getdefaults{width}}. In combination with the other cloze commands you can create for example an irregular alignment of the cloze text. -\begin{code} \begin{verbatim} Ut enim ad \clozeline[width=1cm]\cloze{minim}\clozeline[width=3cm] minim veniam \end{verbatim} -\end{code} -\tighten - -\begin{clozeexample} +\begin{example} Ut enim ad \clozeline[width=1cm]\cloze{minim}\clozeline[width=3cm] minim veniam, -\end{clozeexample} +\end{example} %% % \clozelinefil @@ -456,9 +619,61 @@ This command \cmd{\clozelinefil} fills the complete available horizontal space with a line. Moreover, \cmd{\clozelinefil} was used to create \cmd{\clozefil}. -\begin{clozeexample} +\begin{example} Lorem\clozelinefil -\end{clozeexample} +\end{example} + +%% +% \clozestrike +%% + +\subsubsection{\cmd{\clozestrike}} +\label{sec:command-clozelinefil} + +\DescribeMacro{\clozestrike} +\cmd{\clozestrike}\oarg{options}\marg{wrong text}\marg{correct text} + +\begin{verbatim} +Lorem \clozestrike{ipsum}{dolor} sit amet. +\end{verbatim} + +\begin{example} +Lorem \clozestrike{ipsum}{dolor} sit amet. +\end{example} + +\begin{verbatim} +Lorem \clozestrike[textcolor=red]{ipsum}{dolor} sit amet. +\end{verbatim} + +\begin{example} +Lorem \clozestrike[textcolor=red]{ipsum}{dolor} sit amet. +\end{example} + +\begin{example} +\begin{clozespace} +invidunt ut \clozestrike{labore}{et dolore magna aliquyam erat}, sed +diam voluptua. At \clozestrike{vero eos}{et accusam et justo} duo +dolores et ea \clozestrike{rebum. Stet}{clita kasd gubergren}, no sea +takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum +\clozestrike{dolor sit amet, consetetur }{sadipscing elitr, sed diam} +nonumy eirmod tempor invidunt ut labore et dolore magna +aliquyam erat, \clozestrike{sed diam voluptua}{At vero}. +\end{clozespace} +\end{example} + +\begin{example} +\clozehide +\begin{clozespace} +invidunt ut \clozestrike{labore}{et dolore magna aliquyam erat}, sed +diam voluptua. At \clozestrike{vero eos}{et accusam et justo} duo +dolores et ea \clozestrike{rebum. Stet}{clita kasd gubergren}, no sea +takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum +\clozestrike{dolor sit amet, consetetur }{sadipscing elitr, sed diam} +nonumy eirmod tempor invidunt ut labore et dolore magna +aliquyam erat, \clozestrike{sed diam voluptua}{At vero}. +\end{clozespace} +\clozeshow +\end{example} %----------------------------------------------------------------------- % Options @@ -490,37 +705,29 @@ declaration, the cloze package offers a special command to set \cmd{\clozeset}\marg{global options}: The command can set \emph{global} options for each paragraph. -\begin{code} \begin{verbatim} \clozeset{textcolor=red} Lorem \cloze{ipsum} dolor \par \clozeset{textcolor=green} Lorem \cloze{ipsum} dolor \end{verbatim} -\end{code} - -\tighten -\begin{clozeexample} +\begin{example} \clozeset{textcolor=red} Lorem \cloze{ipsum} dolor \par \clozeset{textcolor=green} Lorem \cloze{ipsum} dolor -\end{clozeexample} +\end{example} \noindent \cmd{\clozeset} does not change the options within a paragraph. As you can see in the example below the last \cmd{\clozeset} applies the color green for both gaps. -\begin{code} \begin{verbatim} \clozeset{textcolor=red} Lorem \cloze{ipsum} dolor \clozeset{textcolor=green} Lorem \cloze{ipsum} dolor \end{verbatim} -\end{code} - -\tighten -\begin{clozeexample} +\begin{example} \clozeset{textcolor=red} Lorem \cloze{ipsum} dolor \clozeset{textcolor=green} Lorem \cloze{ipsum} dolor -\end{clozeexample} +\end{example} \clozereset @@ -535,7 +742,6 @@ applies the color green for both gaps. \cmd{\clozereset}: The command resets all \emph{global} options to the default values. It has no effect on the \emph{local} options. -\begin{code} \begin{verbatim} \clozeset{ thickness=3mm, @@ -544,26 +750,21 @@ default values. It has no effect on the \emph{local} options. margin=-2pt } \end{verbatim} -\end{code} - -\tighten \clozeset{thickness=3mm,linecolor=yellow,textcolor=magenta,margin=-2pt} -\begin{clozeexample} +\begin{example} Very \cloze{silly} global \cloze{options}. -\end{clozeexample} +\end{example} -\begin{code} -|\clozereset| -\end{code} +\begin{verbatim} +\clozereset +\end{verbatim} \clozereset -\tighten - -\begin{clozeexample} +\begin{example} \cloze{Relax!} We can reset \cloze{those} options. -\end{clozeexample} +\end{example} %% % \clozereset @@ -577,29 +778,25 @@ Very \cloze{silly} global \cloze{options}. \cmd{\clozeshow} and \cmd{\clozehide}: This commands are shortcuts for \cmd{\clozeset}\marg{show} and \cmd{\clozeset}\marg{hide}. -\begin{code} -|\clozehide| -\end{code} +\begin{verbatim} +\clozehide +\end{verbatim} \clozehide -\tighten - -\begin{clozeexample} +\begin{example} Lorem \cloze{ipsum dolor sit} amet, consectetur \cloze{adipisicing} elit. -\end{clozeexample} +\end{example} -\begin{code} -|\clozeshow| -\end{code} +\begin{verbatim} +\clozeshow +\end{verbatim} \clozeshow -\tighten - -\begin{clozeexample} +\begin{example} Lorem \cloze{ipsum dolor sit} amet, consectetur \cloze{adipisicing} elit. -\end{clozeexample} +\end{example} %% % align @@ -620,11 +817,35 @@ of the line is larger than the width of the text. \desc{#1}% } -\begin{clozeexample} +\begin{example} \optionsalign{left} \optionsalign{center} \optionsalign{right} -\end{clozeexample} +\end{example} + +%% +% boxheight +%% + +\subsubsection{\tt{boxheight}} +\label{sec:option-boxheight} + +|boxheight| specifies the height of a cloze box. This option has only +an effect on the environment |clozebox| \secref{sec:command-clozebox}. +An example can be found in the section about the environment +\secref{sec:command-clozebox-boxheight}. + +%% +% boxwidth +%% + +\subsubsection{\tt{boxwidth}} +\label{sec:option-boxwidth} + +|boxwidth| specifies the width of a cloze box. This option has only +an effect on the environment |clozebox| \secref{sec:command-clozebox}. +An example can be found in the section about the environment +\secref{sec:command-clozebox-boxwidth}. %% % distance @@ -647,11 +868,11 @@ to appear above the baseline. The default value is \par% } -\begin{clozeexample} +\begin{example} \optiondistance{\getdefaults{distance}} \optiondistance{3pt} \optiondistance{-3pt} -\end{clozeexample} +\end{example} %% % hide and show @@ -673,12 +894,12 @@ options -- |hide| and |show| -- the last option "wins". \desc{#1}% } -\begin{clozeexample} +\begin{example} \optionshow{hide} \optionshow{show} \optionshow{show,hide} \optionshow{hide,show} -\end{clozeexample} +\end{example} %% % linecolor and textcolor @@ -693,12 +914,10 @@ options -- |hide| and |show| -- the last option "wins". Values for both color options are color names used by the xcolor package. To define your own color use the following command: -\begin{code} \begin{verbatim} \definecolor{myclozecolor}{rgb}{0.1,0.4,0.6} \cloze[textcolor=myclozecolor]{Lorem ipsum} \end{verbatim} -\end{code} \definecolor{myclozecolor}{rgb}{0.1,0.4,0.6} \newcommand{\optioncolor}[2]{% @@ -708,21 +927,19 @@ package. To define your own color use the following command: \par% } -\tighten - -\begin{clozeexample} +\begin{example} \optioncolor{textcolor}{myclozecolor} \optioncolor{textcolor}{red} \optioncolor{textcolor}{green} -\end{clozeexample} +\end{example} \noindent You can use the same color names to colorize the cloze lines. -\begin{clozeexample} +\begin{example} \optioncolor{linecolor}{myclozecolor} \optioncolor{linecolor}{red} \optioncolor{linecolor}{green} -\end{clozeexample} +\end{example} %% % margin @@ -743,13 +960,13 @@ and \cmd{\clozefil}. The default value of the option is \desc{#1}% } -\begin{clozeexample} +\begin{example} \optionmargin{0pt} \optionmargin{5mm} \optionmargin{1cm} \optionmargin{6em} \optionmargin{-4pt} -\end{clozeexample} +\end{example} % Folgt ein Satzzeichen direkt auf eine Lücke, so findet der % Zeilenumbruch erst nach dem Satzzeichen statt. Auch ein noch so großer @@ -758,15 +975,28 @@ and \cmd{\clozefil}. The default value of the option is line breaks after this punctation mark. Even the most large value of |margin| does not affect this behavior. -\begin{clozeexample} +\begin{example} \clozeset{margin=3mm} \cloze{Lorem}, \cloze{ipsum}. \cloze{dolor}; \cloze{sit}: \cloze{amet}, \cloze{consectetur}. \cloze{adipisicing}; \cloze{elit}: \cloze{sed}, \cloze{do}. \cloze{eiusmod}; \cloze{tempor}. -\end{clozeexample} +\end{example} \clozereset +%% +% spacing +%% + +\subsubsection{\tt{spacing}} +\label{sec:option-spacing} + +\option{spacing}{number}: This option provides support for setting the +spacing between lines. A larger font used for the cloze texts needs +more line space to avoid unsteady line distances. +This option only affects the environment |clozespace| +\secref{sec:command-clozespace}. + %% % thickness %% @@ -786,11 +1016,11 @@ option is \tt{\getdefaults{thickness}}. \desc{#1}% } -\begin{clozeexample} +\begin{example} \optionthickness{0.01pt} \optionthickness{1pt} \optionthickness{2pt} -\end{clozeexample} +\end{example} %% % width @@ -809,11 +1039,11 @@ option is \tt{\getdefaults{width}}. \desc{#1}% } -\begin{clozeexample} +\begin{example} \optionwidth{3cm} \optionwidth{5cm} \optionwidth{7cm} -\end{clozeexample} +\end{example} %----------------------------------------------------------------------- % Special application areas @@ -827,21 +1057,19 @@ option is \tt{\getdefaults{width}}. \subsubsection{The \tt{tabbing} environment} -\begin{code} \begin{verbatim} \begin{tabbing} col1 \hspace{1cm} \= col2 \hspace{1cm} \= col3 \hspace{1cm} \= col4 \\ \cloze{col1} \> \> \clozefix{col3} \\ \end{tabbing} \end{verbatim} -\end{code} -\begin{clozeexample} +\begin{example} \begin{tabbing} col1 \hspace{1cm} \= col2 \hspace{1cm} \= col3 \hspace{1cm} \= col4 \\ \cloze{col1} \> \> \clozefix{col3} \\ \end{tabbing} -\end{clozeexample} +\end{example} %% % picture @@ -849,7 +1077,6 @@ col1 \hspace{1cm} \= col2 \hspace{1cm} \= col3 \hspace{1cm} \= col4 \\ \subsubsection{The \tt{picture} environment} -\begin{code} \begin{verbatim} \begin{picture}(320,100) \put(80,25){\cloze{Lorem}} @@ -857,15 +1084,14 @@ col1 \hspace{1cm} \= col2 \hspace{1cm} \= col3 \hspace{1cm} \= col4 \\ \put(240,75){\clozefil{dolor}} \end{picture} \end{verbatim} -\end{code} -\begin{clozeexample} +\begin{example} \begin{picture}(320,100) \put(80,25){\cloze{Lorem}} \put(160,50){\clozefix{ipsum}} \put(240,75){\clozefil{dolor}} \end{picture} -\end{clozeexample} +\end{example} %% % tabular @@ -873,7 +1099,6 @@ col1 \hspace{1cm} \= col2 \hspace{1cm} \= col3 \hspace{1cm} \= col4 \\ \subsubsection{The \tt{tabular} environment} -\begin{code} \begin{verbatim} \begin{tabular}{l c} \cloze{Lorem} & \cloze{ipsum} \\ @@ -881,18 +1106,17 @@ col1 \hspace{1cm} \= col2 \hspace{1cm} \= col3 \hspace{1cm} \= col4 \\ \cloze{sed} & \cloze{do} \\ \end{tabular} \end{verbatim} -\end{code} % No |c| inside because of short verbatim. -\begin{clozeexample} +\begin{example} \clozeset{width=1cm} \begin{tabular}{l c} \cloze{Lorem} & \cloze{ipsum} \\ \clozefix{amet} & \clozefix{consectetur} \\ \cloze{sed} & \cloze{do} \\ \end{tabular} -\end{clozeexample} +\end{example} \DocInput{cloze.dtx} \pagebreak @@ -958,7 +1182,7 @@ or manually: % % \fi % -% \CheckSum{128} +% \CheckSum{0} % % \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 @@ -979,9 +1203,15 @@ or manually: % % \changes{v0.1}{2015/06/16}{Converted to DTX file} % \changes{v1.0}{2015/07/08}{Inital release} -% \changes{v1.1}{2016/06/13}{Make cloze compatible to LuaTeX version 0.95} +% \changes{v1.1}{2016/06/13}{Make cloze compatible to LuaTeX version +% 0.95} % \changes{v1.2}{2016/06/23}{The cloze makros are now working in % tabular, tabbing and picture environments} +% \changes{v1.3}{2017/03/13}{Add the new macros \cmd{\clozenol} and +% \cmd{\clozeextend} and the environments \texttt{clozebox} and +% \texttt{clozespace} (This version was not published on CTAN.)} +% \changes{v1.4}{2020/05/20}{Add the new macro \cmd{\clozestrike} and +% improve the documentation} % % \DoNotIndex{\newcommand,\newenvironment,\def,\directlua} % @@ -1001,26 +1231,56 @@ or manually: % % \subsection{The file \tt{cloze.sty}} % -% This four packages are used to build \emph{cloze}: +% This packages are used to build \emph{cloze}: % -% \begin{itemize} -% \item \href{https://www.ctan.org/pkg/fontspec}{fontspec} is not +% \subsubsection{Dependencies} +% +% The package \href{https://www.ctan.org/pkg/fontspec}{fontspec} is not % necessarily required. When using Lua\LaTeX{} it is good form to load % it. Apart from this the package supplies helpful messages, when you % compile a Lua\LaTeX{} document with pdf\LaTeX{}. -% -% \item \href{https://www.ctan.org/pkg/luatexbase}{luatexbase} allows to -% register multiple Lua callbacks. -% -% \item \href{https://www.ctan.org/pkg/kvoptions}{kvoptions} takes the -% handling of the options. -% -% \item \href{https://www.ctan.org/pkg/xcolor}{xcolor} is required to -% colorize the text and the line of a gap. -% \end{itemize} +% \begin{macrocode} +\RequirePackage{fontspec} +% \end{macrocode} +% The package \href{https://www.ctan.org/pkg/luatexbase}{luatexbase} +% allows to register multiple Lua callbacks. +% \begin{macrocode} +\RequirePackage{luatexbase-mcb} +% \end{macrocode} +% The package \href{https://www.ctan.org/pkg/kvoptions}{kvoptions} +% takes the handling of the options. +% \begin{macrocode} +\RequirePackage{kvoptions} +% \end{macrocode} +% The package \href{https://www.ctan.org/pkg/setspace}{setspace} is used +% by the environment |clozespace|. +% \begin{macrocode} +\RequirePackage{setspace} +% \end{macrocode} +% The package \href{https://www.ctan.org/pkg/xcolor}{xcolor} is required +% to colorize the text and the line of a gap. +% \begin{macrocode} +\RequirePackage{xcolor} +% \end{macrocode} +% The package \href{https://www.ctan.org/pkg/xcolor}{xparse} is used by +% the environment |clozebox|. +% \begin{macrocode} +\RequirePackage{xparse} +% \end{macrocode} +% The package \href{https://www.ctan.org/pkg/stackengine}{stackengine} +% is required by the command |\clozestrike{}{}|. +% \begin{macrocode} +\RequirePackage{stackengine} +% \end{macrocode} +% The package \href{https://www.ctan.org/pkg/ulem}{ulem} is required by +% the command |\clozestrike{}{}|. +% \begin{macrocode} +\RequirePackage{ulem} +\normalem +% \end{macrocode} % % \begin{macrocode} -\RequirePackage{fontspec,luatexbase-mcb,kvoptions,xcolor} +\RequirePackage{transparent} % \end{macrocode} % % Load the cloze lua module and put all return values in the variable @@ -1032,6 +1292,10 @@ or manually: } % \end{macrocode} % +% \begin{macrocode} +\newif\ifclozeshow\clozeshowtrue +% \end{macrocode} +% % \subsubsection{Internal macros} % % \begin{macro}{\cloze@set@to@global} @@ -1170,6 +1434,30 @@ or manually: \define@key{CLZ}{align}[]{\cloze@set@option[align]{#1}} % \end{macrocode} % +% \paragraph{\tt{boxheight}} +% +% \noindent Please read the section \secref{sec:sec:command-clozebox} +% how to use the option |boxheight|. |boxheight| affects only the +% environment \cmd{clozebox}. +% \secref{sec:command-clozefix}. +% +% \begin{macrocode} +\DeclareStringOption{boxheight} +\define@key{CLZ}{boxheight}[]{\cloze@set@option[boxheight]{#1}} +% \end{macrocode} +% +% \paragraph{\tt{boxwidth}} +% +% \noindent Please read the section \secref{sec:sec:command-clozebox} +% how to use the option |boxwidth|. |boxwidth| affects only the +% environment \cmd{clozebox}. +% \secref{sec:command-clozefix}. +% +% \begin{macrocode} +\DeclareStringOption{boxwidth} +\define@key{CLZ}{boxwidth}[]{\cloze@set@option[boxwidth]{#1}} +% \end{macrocode} +% % \paragraph{\tt{distance}} % % \noindent Please read the section \secref{sec:option-distance} how to @@ -1189,6 +1477,7 @@ or manually: % % \begin{macrocode} \DeclareVoidOption{hide}{% + \clozeshowfalse% \cloze@set@option[hide]{true}% \cloze@set@option[show]{false}% } @@ -1203,6 +1492,7 @@ or manually: \DeclareStringOption{linecolor} \define@key{CLZ}{linecolor}[]{% \cloze@set@option[linecolor]{\cloze@color{#1}}% + \cloze@set@option[linecolor_name]{#1}% } % \end{macrocode} % @@ -1225,11 +1515,22 @@ or manually: % % \begin{macrocode} \DeclareVoidOption{show}{% + \clozeshowtrue% \cloze@set@option[show]{true}% \cloze@set@option[hide]{false}% } % \end{macrocode} % +% \paragraph{\tt{spacing}} +% +% \noindent Please read the section \secref{sec:option-spacing} how to +% use the option |spacing|. +% +% \begin{macrocode} +\DeclareStringOption{spacing} +\define@key{CLZ}{spacing}[]{\cloze@set@option[spacing]{#1}} +% \end{macrocode} +% % \paragraph{\tt{textcolor}} % % \noindent Please read the section \secref{sec:option-textcolor} how to @@ -1239,6 +1540,7 @@ or manually: \DeclareStringOption{textcolor} \define@key{CLZ}{textcolor}[]{% \cloze@set@option[textcolor]{\cloze@color{#1}}% + \cloze@set@option[textcolor_name]{#1}% } % \end{macrocode} % @@ -1364,6 +1666,27 @@ or manually: % \end{macrocode} % \end{macro} % +% \begin{macro}{\clozenol} +% The usage of the command \cmd{\clozenol} is described in detail in +% section \secref{sec:command-clozenol}. +% TODO: Realize this macro with lua code, without ugly |\color{white}|. +% command. +% \begin{macrocode} +\newcommand{\clozenol}[2][]{% + {% + \cloze@set@local@options{#1}% + \clozefont\relax% + \ifclozeshow% + \color{\directlua{tex.print(cloze.get_value('textcolor_name'))}}% + \else% + \color{white}% + \fi% + #2% + }% +} +% \end{macrocode} +% \end{macro} +% % \begin{environment}{clozepar} % The usage of the environment |clozepar| is described in detail in % section \secref{sec:command-clozepar}. @@ -1383,6 +1706,64 @@ or manually: % \end{macrocode} % \end{environment} % +% \begin{macro}{\cloze@get@value} +% \begin{macrocode} +\newcommand{\cloze@get@value}[1]{% + \directlua{ + tex.print(cloze.get_value('#1')) + }% +} +% \end{macrocode} +% \end{macro} +% +% \begin{environment}{clozebox} +% The usage of the environment |clozebox| is described in detail in +% section \secref{sec:command-clozebox}. +% TODO: Realize this macro with lua code, without ugly |\color{white}| +% command. +% \begin{macrocode} +\newsavebox{\cloze@box} +\NewDocumentEnvironment{clozebox}{ s O{} +b}{% + \cloze@set@local@options{#2}% + \noindent% + \begin{lrbox}{\cloze@box}% + \directlua{ + local boxheight = cloze.get_value('boxheight') + local boxwidth = cloze.get_value('boxwidth') + if boxheight then + tex.print('\\begin{minipage}[t][' .. boxheight .. '][t]{' .. boxwidth .. '}') + else + tex.print('\\begin{minipage}[t]{' .. boxwidth .. '}') + end + } + \clozefont\relax% + \ifclozeshow% + \color{\directlua{tex.print(cloze.get_value('textcolor_name'))}}#3% + \else% + \color{white}#3% + \fi% + \end{minipage}% + \end{lrbox}% + \IfBooleanTF{#1}% + {\usebox{\cloze@box}}% + {\fbox{\usebox{\cloze@box}}}% +}{} +% \end{macrocode} +% \end{environment} +% +% \begin{environment}{clozespace} +% The usage of the environment |clozespace| is described in detail in +% section \secref{sec:command-clozespace}. +% TODO: Realization without setspace package. +% \begin{macrocode} +\newenvironment{clozespace}[1][]% +{% + \cloze@set@local@options{#1}% + \begin{spacing}{\directlua{tex.print(cloze.get_value('spacing'))}}% +}{\end{spacing}} +% \end{macrocode} +% \end{environment} +% % \begin{macro}{\clozefil} % The usage of the command \cmd{\clozefil} is described in detail in % section \secref{sec:command-clozefil}. @@ -1393,6 +1774,20 @@ or manually: % \end{macrocode} % \end{macro} % +% \begin{macro}{\clozeextend} +% TODO: Use node library to create kern nodes. +% \begin{macrocode} +\newcommand{\clozeextend}[1][1]{% + \directlua{ + local loop = #1 + for variable = 1, loop do + tex.print(' \string\\hspace{1em} \string\\strut') + end + } +} +% \end{macrocode} +% \end{macro} +% % \begin{macro}{\clozeline} % The usage of the command \cmd{\clozeline} is described in detail in % section \secref{sec:command-clozeline}. @@ -1417,6 +1812,59 @@ or manually: % \end{macrocode} % \end{macro} % +% \begin{macro}{\cloze@text@color} +% \begin{macrocode} +\newcommand{\cloze@text@color}[1]{% + \textcolor% + {\directlua{tex.print(cloze.get_value('textcolor_name'))}}% + {#1}% +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\cloze@strike@line} +% \begin{macrocode} +\newcommand\cloze@strike@line{% + \bgroup% + \markoverwith{% + \cloze@text@color{% + \rule[0.5ex]{2pt}{1pt}% + }% + }% + \ULon% +} +% \end{macrocode} +% \end{macro} +% +% \begin{macro}{\clozestrike} +% \begin{macrocode} +\newcommand{\clozestrike}[3][]{% + \cloze@set@local@options{#1}% + \ifclozeshow% + \stackengine% + {\Sstackgap}% \Sstackgap or \Lstackgap or \stackgap or stacklength + {\cloze@strike@line{#2}}% anchor + {\cloze@text@color{\clozefont{}#3}}% item + {O}% O or U + {c}% \stackalignment or l or c or r + {\quietstack}% \quietstack or T or F + {T}% \useanchorwidth or T or F + {\stacktype}% \stacktype or S or L + \else% + \stackengine% + {\Sstackgap}% \Sstackgap or \Lstackgap or \stackgap or stacklength + {#2}% anchor + {\texttransparent{0}{\clozefont{}#3}}% item + {O}% O or U + {c}% \stackalignment or l or c or r + {\quietstack}% \quietstack or T or F + {T}% \useanchorwidth or T or F + {\stacktype}% \stacktype or S or L + \fi% +} +% \end{macrocode} +% \end{macro} +% % \iffalse % %<*lua> @@ -1436,7 +1884,7 @@ or manually: % module. % \begin{macrocode} if not modules then modules = { } end modules ['cloze'] = { - version = '0.1', + version = '1.4', comment = 'cloze', author = 'Josef Friedrich, R.-M. Huber', copyright = 'Josef Friedrich, R.-M. Huber', @@ -1463,14 +1911,20 @@ registry.user_id = 3121978 registry.storage = {} registry.defaults = { ['align'] = 'l', + ['boxheight'] = false, + ['boxwidth'] = '\\linewidth', ['distance'] = '1.5pt', ['hide'] = false, ['linecolor'] = '0 0 0 rg 0 0 0 RG', -- black + ['linecolor_name'] = 'black', ['margin'] = '3pt', ['resetcolor'] = '0 0 0 rg 0 0 0 RG', -- black + ['resetcolor_name'] = 'black', ['show_text'] = true, ['show'] = true, + ['spacing'] = '1.6', ['textcolor'] = '0 0 1 rg 0 0 1 RG', -- blue + ['textcolor_name'] = 'blue', -- blue ['thickness'] = '0.4pt', ['width'] = '2cm', } @@ -1504,7 +1958,7 @@ base.is_registered = {} % % \paragraph{Color handling (color)} % -% \clozeluafunction{create\_colorstack} +% \clozeluafunction{create_colorstack} % Create a whatsit node of the subtype |pdf_colorstack|. |data| is a PDF % colorstack string like |0 0 0 rg 0 0 0 RG|. % \begin{macrocode} @@ -1519,7 +1973,7 @@ function nodex.create_colorstack(data) end % \end{macrocode} % -% \clozeluafunction{create\_color} +% \clozeluafunction{create_color} % |nodex.create_color()| is a wrapper for the function % |nodex.create_colorstack()|. It queries the current values of the % options |linecolor| and |textcolor|. The argument |option| accepts the @@ -1542,7 +1996,7 @@ end % % \paragraph{Line handling (line)} % -% \clozeluafunction{create\_line} +% \clozeluafunction{create_line} % Create a rule node, which is used as a line for the cloze texts. The % |depth| and the |height| of the rule are calculated form the options % |thickness| and |distance|. The argument |width| must have the length @@ -1559,7 +2013,7 @@ function nodex.create_line(width) end % \end{macrocode} % -% \clozeluafunction{insert\_list} +% \clozeluafunction{insert_list} % Insert a |list| of nodes after or before the |current|. The |head| % argument is optional. In some edge cases it is unfortately necessary. % if |head| is omitted the |current| node is used. The argument @@ -1580,7 +2034,7 @@ function nodex.insert_list(position, current, list, head) end % \end{macrocode} % -% \clozeluafunction{insert\_line} +% \clozeluafunction{insert_line} % Enclose a rule node (cloze line) with two PDF colorstack whatsits. The % first colorstack node dyes the line, the seccond resets the color. % @@ -1606,7 +2060,7 @@ function nodex.insert_line(current, width) end % \end{macrocode} % -% \clozeluafunction{write\_line} +% \clozeluafunction{write_line} % This function enclozes a rule node with color nodes as it the function % |nodex.insert_line| does. In contrast to |nodex.insert_line| the three % nodes are appended to \TeX’s ‘current list’. They are not inserted in @@ -1630,7 +2084,7 @@ end % % \paragraph{Handling of extendable lines (linefil)} % -% \clozeluafunction{create\_linefil} +% \clozeluafunction{create_linefil} % This function creates a line which stretchs indefinitely in the % horizontal direction. % \begin{macrocode} @@ -1646,7 +2100,7 @@ function nodex.create_linefil() end % \end{macrocode} % -% \clozeluafunction{write\_linefil} +% \clozeluafunction{write_linefil} % The function |nodex.write_linefil| surrounds a indefinitely strechable % line with color whatsits and puts it to \TeX’s ‘current (node) list’. % \begin{macrocode} @@ -1659,7 +2113,7 @@ end % % \paragraph{Kern handling (kern)} % -% \clozeluafunction{create\_kern} +% \clozeluafunction{create_kern} % This function creates a kern node with a given width. The argument % |width| had to be specified in scaled points. % \begin{macrocode} @@ -1670,7 +2124,7 @@ function nodex.create_kern(width) end % \end{macrocode} % -% \clozeluafunction{strut\_to\_hlist} +% \clozeluafunction{strut_to_hlist} % To make life easier: We add at the beginning of each hlist a strut. % Now we can add line, color etc. nodes after the first node of a hlist % not before - after is much more easier. @@ -1685,7 +2139,7 @@ function nodex.strut_to_hlist(hlist) end % \end{macrocode} % -% \clozeluafunction{write\_margin} +% \clozeluafunction{write_margin} % Write kern nodes to the current node list. This kern nodes can be used % to build a margin. % \begin{macrocode} @@ -1695,7 +2149,7 @@ function nodex.write_margin() end % \end{macrocode} % -% \clozeluafunction{search\_hlist} +% \clozeluafunction{search_hlist} % Search for a |hlist| (subtype |line|). Return false, if no |hlist| can % be found. % \begin{macrocode} @@ -1725,7 +2179,7 @@ end % some additional data like the local options. % \end{enumerate} % -% \clozeluafunction{create\_marker} +% \clozeluafunction{create_marker} % We create a user defined whatsit node that can store a number (type = % 100). In order to distinguish this node from other user defined % whatsit nodes we set the |user_id| to a large number. We call this @@ -1741,7 +2195,7 @@ function registry.create_marker(index) end % \end{macrocode} % -% \clozeluafunction{write\_marker} +% \clozeluafunction{write_marker} % Write a marker node to \TeX's current node list. The argument |mode| % accepts the string values |basic|, |fix| and |par|. The argument % |position|. The argument |position| is either set to |start| or to @@ -1754,7 +2208,7 @@ function registry.write_marker(mode, position) end % \end{macrocode} % -% \clozeluafunction{is\_marker} +% \clozeluafunction{is_marker} % This functions checks if the given node |item| is a marker. % \begin{macrocode} function registry.is_marker(item) @@ -1768,7 +2222,7 @@ function registry.is_marker(item) end % \end{macrocode} % -% \clozeluafunction{check\_marker} +% \clozeluafunction{check_marker} % This functions tests, whether the given node |item| is a marker. The % argument |item| is a node. The argument |mode| accepts the string % values |basic|, |fix| and |par|. The argument |position| is either set @@ -1784,7 +2238,7 @@ function registry.check_marker(item, mode, position) end % \end{macrocode} % -% \clozeluafunction{get\_marker} +% \clozeluafunction{get_marker} % |registry.get_marker| returns the given marker. The argument |item| is % a node. The argument |mode| accepts the string values |basic|, |fix| % and |par|. The argument |position| is either set to |start| or to @@ -1804,7 +2258,7 @@ function registry.get_marker(item, mode, position) end % \end{macrocode} % -% \clozeluafunction{get\_marker\_data} +% \clozeluafunction{get_marker_data} % |registry.get_marker_data| tests whether the node |item| is a marker. % The argument |item| is a node of unspecified type. % \begin{macrocode} @@ -1819,7 +2273,7 @@ function registry.get_marker_data(item) end % \end{macrocode} % -% \clozeluafunction{get\_marker\_values} +% \clozeluafunction{get_marker_values} % First this function saves the associatied values of a marker to the % local options table. Second it returns this values. The argument % |marker| is a whatsit node. @@ -1831,7 +2285,7 @@ function registry.get_marker_values(marker) end % \end{macrocode} % -% \clozeluafunction{remove\_marker} +% \clozeluafunction{remove_marker} % This function removes a given whatsit marker. It only deletes a node, % if a marker is given. % \begin{macrocode} @@ -1842,7 +2296,7 @@ end % % \paragraph{Storage functions (storage)} % -% \clozeluafunction{get\_index} +% \clozeluafunction{get_index} % |registry.index| is a counter. The functions |registry.get_index()| % increases the counter by one and then returns it. % \begin{macrocode} @@ -1855,7 +2309,7 @@ function registry.get_index() end % \end{macrocode} % -% \clozeluafunction{set\_storage} +% \clozeluafunction{set_storage} % |registry.set_storage()| stores the local options in the Lua table % |registry.storage|. It returns a numeric index number. This index % number is the key, where the local options in the Lua table are @@ -1874,7 +2328,7 @@ function registry.set_storage(mode, position) end % \end{macrocode} % -% \clozeluafunction{get\_storage} +% \clozeluafunction{get_storage} % The function |registry.get_storage()| retrieves values which belong to % a whatsit marker. The argument |index| is a numeric value. % \begin{macrocode} @@ -1885,7 +2339,7 @@ end % % \paragraph{Option processing (option)} % -% \clozeluafunction{set\_option} +% \clozeluafunction{set_option} % This function stores a value |value| and his associated key |key| % either to the global (|registry.global_options|) or to the local % (|registry.local_options|) option table. The global boolean variable @@ -1904,7 +2358,7 @@ function registry.set_option(key, value) end % \end{macrocode} % -% \clozeluafunction{set\_is\_global} +% \clozeluafunction{set_is_global} % |registry.set_is_global()| sets the variable |registry.is_global| to % the value |value|. It is intended, that the variable takes boolean % values. @@ -1914,7 +2368,7 @@ function registry.set_is_global(value) end % \end{macrocode} % -% \clozeluafunction{unset\_local\_options} +% \clozeluafunction{unset_local_options} % This function unsets the local options. % \begin{macrocode} function registry.unset_local_options() @@ -1922,7 +2376,7 @@ function registry.unset_local_options() end % \end{macrocode} % -% \clozeluafunction{unset\_global\_options} +% \clozeluafunction{unset_global_options} % |registry.unset_global_options| empties the global options storage. % \begin{macrocode} function registry.unset_global_options() @@ -1930,7 +2384,7 @@ function registry.unset_global_options() end % \end{macrocode} % -% \clozeluafunction{get\_value} +% \clozeluafunction{get_value} % Retrieve a value from a given key. First search for the value in the % local options, then in the global options. If both option storages are % empty, the default value will be returned. @@ -1946,7 +2400,7 @@ function registry.get_value(key) end % \end{macrocode} % -% \clozeluafunction{get\_value\_show} +% \clozeluafunction{get_value_show} % The function |registry.get_value_show()| returns the boolean value % |true| if the option |show| is true. In contrast to the function % |registry.get_value()| it converts the string value `true' to a @@ -1965,7 +2419,7 @@ function registry.get_value_show() end % \end{macrocode} % -% \clozeluafunction{has\_value} +% \clozeluafunction{has_value} % This function tests whether the value |value| is not empty and has a % value. % \begin{macrocode} @@ -1978,7 +2432,7 @@ function registry.has_value(value) end % \end{macrocode} % -% \clozeluafunction{get\_defaults} +% \clozeluafunction{get_defaults} % |registry.get_defaults(option)| returns a the default value of the % given option. % \begin{macrocode} @@ -2003,7 +2457,7 @@ end % % \noindent\includegraphics[width=\linewidth]{graphics/picture} % -% \clozeluafunction{basic\_make} +% \clozeluafunction{basic_make} % The function |cloze.basic_make()| makes one gap. The argument |start| % is the node, where the gap begins. The argument |stop| is the node, % where the gap ends. @@ -2043,7 +2497,7 @@ function cloze.basic_make(start, stop) end % \end{macrocode} % -% \clozeluafunction{basic\_search\_stop} +% \clozeluafunction{basic_search_stop} % Search for a stop marker. % \begin{macrocode} function cloze.basic_search_stop(head) @@ -2061,7 +2515,7 @@ function cloze.basic_search_stop(head) end % \end{macrocode} % -% \clozeluafunction{basic\_search\_start} +% \clozeluafunction{basic_search_start} % Search for a start marker. Also begin a new cloze, if the boolean % value |cloze.status.continue| is true. The knowledge of the last % hlist node is a requirement to begin a cloze. @@ -2086,7 +2540,7 @@ function cloze.basic_search_start(head) end % \end{macrocode} % -% \clozeluafunction{basic\_recursion} +% \clozeluafunction{basic_recursion} % Parse recursivley the node tree. Start and stop markers can be nested % deeply into the node tree. % \begin{macrocode} @@ -2115,7 +2569,7 @@ function cloze.basic(head) end % \end{macrocode} % -% \clozeluafunction{fix\_length} +% \clozeluafunction{fix_length} % Calculate the length of the whitespace before (|l.kern_start|) and % after (|l.kern_stopt|) the text. % \begin{macrocode} @@ -2139,7 +2593,7 @@ function cloze.fix_length(start, stop) end % \end{macrocode} % -% \clozeluafunction{fix\_make} +% \clozeluafunction{fix_make} % The function |cloze.fix_make| generates a gap of fixed width. % % \subparagraph*{Node lists} @@ -2199,7 +2653,7 @@ function cloze.fix_make(start, stop) end % \end{macrocode} % -% \clozeluafunction{fix\_recursion} +% \clozeluafunction{fix_recursion} % Function to recurse the node list and search after marker. |head| is % the head node of a node list. % \begin{macrocode} @@ -2365,6 +2819,7 @@ base.set_is_global = registry.set_is_global base.unset_local_options = registry.unset_local_options base.reset = registry.unset_global_options base.get_defaults = registry.get_defaults +base.get_value = registry.get_value base.marker = registry.write_marker % \end{macrocode} % diff --git a/macros/luatex/latex/cloze/cloze.pdf b/macros/luatex/latex/cloze/cloze.pdf index a3af3efb6d..7afedd6a8c 100644 Binary files a/macros/luatex/latex/cloze/cloze.pdf and b/macros/luatex/latex/cloze/cloze.pdf differ diff --git a/macros/xetex/latex/xepersian-hm/xepersian-hm-doc.ltx b/macros/xetex/latex/xepersian-hm/xepersian-hm-doc.ltx index 42c5562caf..e114505229 100644 --- a/macros/xetex/latex/xepersian-hm/xepersian-hm-doc.ltx +++ b/macros/xetex/latex/xepersian-hm/xepersian-hm-doc.ltx @@ -27,7 +27,7 @@ } } -\date{Released \quad 2020-05-12 \quad v0.5e} +\date{Released \quad 2020-05-20 \quad v0.5f} \let\tmpthepage\thepage \renewcommand{\thepage}{\lr{\Large\textbf\tmpthepage}} @@ -161,8 +161,8 @@ The options available in \textsf{xepersian-hm} are: xelatex kashida-example.tex} Please note that this feature is still experimental and is not regarded as stable. - If you are going to use this option be ready for unpredictable results. Note that - the value of \texttt{Kashida} is mandatory. + If you are going to use this option be ready for unpredictable results. Also, note + that the value of \texttt{Kashida} is mandatory. \item \texttt{hrule}: \\ which uses a horizontal rule (\verb|\hrule|) to stretch the text. diff --git a/macros/xetex/latex/xepersian-hm/xepersian-hm-doc.pdf b/macros/xetex/latex/xepersian-hm/xepersian-hm-doc.pdf index 06a9d05ddd..161c34f012 100644 Binary files a/macros/xetex/latex/xepersian-hm/xepersian-hm-doc.pdf and b/macros/xetex/latex/xepersian-hm/xepersian-hm-doc.pdf differ diff --git a/macros/xetex/latex/xepersian-hm/xepersian-hm.dtx b/macros/xetex/latex/xepersian-hm/xepersian-hm.dtx index d762f805d3..582a05d638 100644 --- a/macros/xetex/latex/xepersian-hm/xepersian-hm.dtx +++ b/macros/xetex/latex/xepersian-hm/xepersian-hm.dtx @@ -67,7 +67,7 @@ make time to fix. % }^^A % } % -% \date{Released \quad 2020-05-12 \quad v0.5e} +% \date{Released \quad 2020-05-20 \quad v0.5f} % % \maketitle % @@ -96,7 +96,7 @@ make time to fix. \RequirePackage{zref-savepos}[2020-03-03] \RequirePackage{xepersian} \ExplSyntaxOn -\ProvidesExplPackage {xepersian-hm} {2020-05-12} {0.5e} { Fixes~issues~in~xepersian~package } +\ProvidesExplPackage {xepersian-hm} {2020-05-20} {0.5f} { Fixes~issues~in~xepersian~package } \int_const:Nn \c_xephm_ksh_int {"0640} % kashida \int_const:Nn \c_xephm_lrm_int {"200E} % left-right-mark @@ -209,21 +209,27 @@ make time to fix. \l_xephm_lig_rlig_tl , { \l_xephm_lig_rlig_clist } , } -\msg_new:nnn { xepersian-hm } { kashida-character-is-not-available-in-the-main-font } +\msg_new:nnn { xepersian-hm } { error-kashida-character-is-not-available-in-the-main-font } { Sorry,~ kashida~ character~ is~ not~ available~ in~ the~ main~ font~! } -\msg_new:nnn { xepersian-hm } { value-not-available-for-kashida-option } +\msg_new:nnn { xepersian-hm } { error-value-not-available-for-kashida-option } { Sorry,~ value~ `#1'~ is~ not~ available~ for~ `Kashida'~ option~ yet~! } -\msg_new:nnn { xepersian-hm } { specify-value-for-kashida-option } +\msg_new:nnn { xepersian-hm } { error-specify-value-for-kashida-option } { Sorry,~ you~ must~ specify~ a~ value~ for~ `Kashida'~ option~ yet~! } +\msg_new:nnn { xepersian-hm } { warning-experimental-feature } + { + Please~ note~ that~ the~ feature~ `#1'~ is~ still~ experimental~ + and~ is~ not~ regarded~ as~ stable. + } + \keys_define:nn { xepersian-hm } { Kashida .code:n = @@ -242,7 +248,7 @@ make time to fix. \int_set:Nn \l_xephm_kashida_slot_int { \xetex_charglyph:D \c_xephm_ksh_int } \int_compare:nT { \l_xephm_kashida_slot_int = \c_zero_int } { - \msg_error:nn { xepersian-hm } { kashida-character-is-not-available-in-the-main-font } + \msg_error:nn { xepersian-hm } { error-kashida-character-is-not-available-in-the-main-font } } } } @@ -251,7 +257,7 @@ make time to fix. \tl_set:Nn \l_xephm_gap_filler_tl { \l_xephm_stretch_hrule_tl } } } { } { \tl_set:Nx \l_xephm_gap_filler_tl { #1 } } - \tl_if_empty:NT \l_xephm_gap_filler_tl { \msg_error:nn { xepersian-hm } { specify-value-for-kashida-option } } + \tl_if_empty:NT \l_xephm_gap_filler_tl { \msg_error:nn { xepersian-hm } { error-specify-value-for-kashida-option } } \bool_set_true:N \l_xephm_kashida_hm_fix_bool } , @@ -345,7 +351,7 @@ make time to fix. % \begin{macrocode} %<*kashida-xepersian-hm-def> \ExplSyntaxOn -\ProvidesExplFile {kashida-xepersian-hm.def} {2020-05-12} {0.5e} { Fixes~implementation~of~Kashida~in~xepersian~package } +\ProvidesExplFile {kashida-xepersian-hm.def} {2020-05-20} {0.5f} { Fixes~implementation~of~Kashida~in~xepersian~package } \newXeTeXintercharclass \c_xephm_d_charclass % dual-joiner class \newXeTeXintercharclass \c_xephm_l_charclass % lam @@ -430,17 +436,15 @@ make time to fix. \mode_leave_vertical: \tex_global:D \tex_advance:D \l_xephm_counter_int \c_one_int - \tl_set:Nx \l_xephm_pos_tl { pos_\tex_romannumeral:D \l_xephm_counter_int } - \tl_set:Nx \l_xephm_zref_tl { zref_\tex_romannumeral:D \l_xephm_counter_int } + \tl_set:Nx \l_xephm_pos_tl { p\tex_romannumeral:D \l_xephm_counter_int } + \tl_set:Nx \l_xephm_zref_tl { z\tex_romannumeral:D \l_xephm_counter_int } \zsaveposx{x_i_\l_xephm_zref_tl} \tl_set:Nx \l_tmpa_tl { \iow_now:cx { @auxout } { - \ExplSyntaxOn - \tl_gset:Nn \exp_after:wN \token_to_str:N \cs:w get_x_i\l_xephm_pos_tl \cs_end: { \zposx{ x_i_\l_xephm_zref_tl } } - \ExplSyntaxOff + \token_to_str:N \gdef \exp_after:wN \token_to_str:N \cs:w xi\l_xephm_pos_tl \cs_end: { \zposx{ x_i_\l_xephm_zref_tl } } } } \l_tmpa_tl @@ -450,19 +454,17 @@ make time to fix. { \iow_now:cx { @auxout } { - \ExplSyntaxOn - \tl_gset:Nn \exp_after:wN \token_to_str:N \cs:w get_x_f\l_xephm_pos_tl \cs_end: { \zposx{ x_f_\l_xephm_zref_tl } } - \ExplSyntaxOff + \token_to_str:N \gdef \exp_after:wN \token_to_str:N \cs:w xf\l_xephm_pos_tl \cs_end: { \zposx{ x_f_\l_xephm_zref_tl } } } } \l_tmpa_tl \exp_after:wN \if_meaning:w - \cs:w get_x_i\l_xephm_pos_tl \cs_end: \tex_relax:D + \cs:w xi\l_xephm_pos_tl \cs_end: \tex_relax:D \else: \dim_set:Nn \l_xephm_diff_pos_dim { - \dim_eval:n { \cs:w get_x_i\l_xephm_pos_tl \cs_end: sp - \cs:w get_x_f\l_xephm_pos_tl \cs_end: sp } + \dim_eval:n { \cs:w xi\l_xephm_pos_tl \cs_end: sp - \cs:w xf\l_xephm_pos_tl \cs_end: sp } } \dim_compare:nTF { \l_xephm_diff_pos_dim == 0sp } { } @@ -590,7 +592,13 @@ make time to fix. \XeTeXinterchartoks \c_xephm_l_charclass \c_xephm_a_charclass = { } } - } { } { \msg_error:nnx { xepersian-hm } { value-not-available-for-kashida-option } { \l_xephm_gap_filler_tl } } + } + { + \msg_warning:nnn { xepersian-hm } { warning-experimental-feature } { Kashida=glyph } + } + { + \msg_error:nnx { xepersian-hm } { error-value-not-available-for-kashida-option } { \l_xephm_gap_filler_tl } + } \NewDocumentCommand \KashidaHMFixOn {} { \bool_set_true:N \l_xephm_kashida_hm_fix_bool } \NewDocumentCommand \KashidaHMFixOff {} { \bool_set_false:N \l_xephm_kashida_hm_fix_bool } diff --git a/macros/xetex/latex/xepersian-hm/xepersian-hm.pdf b/macros/xetex/latex/xepersian-hm/xepersian-hm.pdf index bf0ff83fe0..c244dee46f 100644 Binary files a/macros/xetex/latex/xepersian-hm/xepersian-hm.pdf and b/macros/xetex/latex/xepersian-hm/xepersian-hm.pdf differ diff --git a/support/classpack/MANIFEST b/support/classpack/MANIFEST index 20b8b2d153..964598d886 100644 --- a/support/classpack/MANIFEST +++ b/support/classpack/MANIFEST @@ -1,17 +1,6 @@ -README -MANIFEST classpack.dtx classpack.ins classpack.pdf -classpack.sty -doctexbook.dtd -getgis.sh -test.sh -../db2dtx.xsl -../db2bibtex.xsl -../db2plaintext.xsl -../decommentbbl.awk -doctexbook.dtd -lppl.xml -../prepost.xml -../readme.xml +MANIFEST +README.md +VERSION diff --git a/support/classpack/README b/support/classpack/README deleted file mode 100644 index 99d3d81e45..0000000000 --- a/support/classpack/README +++ /dev/null @@ -1,129 +0,0 @@ -README -This is the README file for the classpack package. -1 Summary -LaTeX document classes and packages are normally created, maintained, -and distributed in .dtx format using the ltxdoc class, which provides -facilities for modular or fragmentary coding combined with interleaved -documentation. However, the accurate construction of these files is -technically challenging. -ClassPack allows a developer to create an XML document containing user -documentation and annotated code, based on the DocBook vocabulary (with -some minor abuses). An XSLT2 script then generates the .dtx and .ins -files, ensuring that all the relevant pieces are emitted in the correct -order and in the correct syntax. -This is experimental software, and is incomplete. It has been -successfully used in-house by the author since 2008 for several -institutional and commercial packages and classes. There are some known -deficiencies which remain to be corrected, and some legacy code -(originally included for one specific package) which needs to be removed -to an external file. -A paper describing the system has been accepted for the Balisage markup -conference 2013 in Montréal. - -2 Normal installation -This package is distributed as a .tds.zip file (TDS is the TeX Directory -Structure, the standard layout for a modern TeX installation). Install -it on any personal TDS-compliant TeX system by unzipping it into your -personal TeX directory (folder). This will put all the files into the -right places, so you can start using them immediately. -If you haven't yet created a personal TeX directory, see below for -details of what one is, and how to create it. -On a shared (multiuser) system like a server, unzip it into the -$TEXMFLOCAL directory instead (see below), and run your TeX -directory-indexing program (eg texhash, mktexlsr, Update FNDB, etc) so -that everyone can use it. -If you are using an old non-TDS-compliant system, see below under Manual -Installation. -2.1 Your personal TeX directory -This is a directory (folder) on single-user systems like desktops and -laptops where you put all your local manual modifications, updates, and -additions such as classes, packages, and fonts. The name and location -are fixed: - Apple Mac OS X - ~/Library/texmf - Unix and GNU/Linux - ~/texmf - MS-Windows 95/XP - C:\texmf - MS-Windows 2007 and above - Computer\System\YOURNAME\texmf -Create that folder if it does not already exist. - WARNING: If you are a Windows user running MiKTeX - ! - ! When you create the folder, you must add it to MiKTeX's list of - ! supported folders. Run the MiKTeX Maintenance/Settings program, - ! select the Roots tab, and add the folder. You only have to do this - ! once. - ! - ! Each time you add or remove software in your personal TeX folder, - ! you MUST also click on the Update FNDB button in the General tab. - -Unix (Mac and GNU/Linux) users do not need to (indeed, should not) run -their filename database indexer (mktexlsr or texhash) for files put in -your personal TeX directory. -2.2 Installation on shared systems -On multi-user systems (Unix-based), identify the shared local directory -tree with the command - kpsewhich -expand-var '$TEXMFLOCAL' - -This will give you the location of the shared texmf directory into which -you must install these files. -Do not forget to run the texhash or mktexlsr (filename indexer) program -after installation, otherwise the files will not be found by LaTeX and -nothing will work! - -3 Manual installation (non-TDS systems) -To install this software manually, unzip the zip file into a temporary -directory and move the classpack.sty file from the tex/latex/classpack -directory to a location (directory/folder) where LaTeX will find it on -your system. This referred to in some documentation as "the TEXINPUTS -directory", although it may be called something else on your system. -IT IS YOUR RESPONSIBILITY TO KNOW WHERE THIS LOCATION IS. See the -question in the TeX FAQ at -http://www.tex.ac.uk/cgi-bin/texfaq2html?label=inst-wlcf for more -information. If you do not know, or cannot find it, or do not have -access to it, your TeX system may be out of date need replacing. -3.1 Last resort -In an emergency, and as a last resort on unmanageable systems, it is -possible simply to put the classpack.sty file in your current working -directory (the same folder as your .tex file[s]). -While this may work, it is not supported, and may lead to other -resources (packages, fonts, etc) not being found. - -4 Usage -Make this the first line of your LaTeX document: - \usepackage[options]{classpack} - -Read the documentation for the options available. The documentation is -distributed as a PDF document in the zip file. You can also regenerate -it by typesetting the classpack.dtx file with LaTeX (and BiBTeX and -makeindex) in the normal way. - -5 Bugs and TODO -No outstanding reported bugs at the time of this version, but there are -many facilities and features unimplemented, and the documentation is -incomplete. - -6 Copyright -The following statement is included in the source code: -% Extracted from classpack.xml -% classpack.sty is copyright © 2012-2013 by Peter Flynn -% -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either -% version 1.3 of this license or (at your option) any later -% version. The latest version of this license is in: -% -% http://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 maintainer of this work is Peter Flynn -% -% This work consists of the files classpack.dtx and classpack.ins, -% the derived file classpack.sty, and any ancillary files listed -% in the MANIFEST. - diff --git a/support/classpack/README.md b/support/classpack/README.md new file mode 100644 index 0000000000..98aca922ca --- /dev/null +++ b/support/classpack/README.md @@ -0,0 +1,206 @@ + +[//]: # (classpack LaTeX package) + +# classpack + +This is the README.md file for the classpack LaTeX package v1.19 (2020-05-19) +generated by ClassPack v.1.19 (2020-05-19) on 20 May 2020 at 14:32:36 + +## Summary + +LaTeX document classes and packages are conventionally created, +maintained, and distributed in DocTeX (`.dtx`) format using the _ltxdoc_ +class, which provides for interleaved code and documentation (“literate +programming”). However, the accurate construction of these files is +technically challenging, and editing them is tedious and error-prone. + +_ClassPack_ allows a developer to create a _DocBook5_ XML document for a +class or package, containing the documentation and annotated code, and +it provides XSLT3 scripts to generate the `.dtx`, `.ins`, and other +files, which can be combined into a zip file suitable for submission to +CTAN. + +_This package __classpack__ contains the small typographic adjustments +and utilities needed to re-typeset the documentation of classes and +packages developed using __classpack-dev__. It is not used for any other +purpose and is not required for using any other class or package, only +for the documentation of __ClassPack__–developed classes and packages._ + +**You do not need to install the upcoming development package +**_classpack-dev_** unless you want to develop classes or packages by +using **_ClassPack_** yourself.** + +_ClassPack_ is a work-in-progress. A paper describing an earlier version +was presented at the Balisage markup conference in Montréal (Flynn, +2013). + + +## Automated installation + +If this package is distributed from CTAN, it should be in a zip file +which allows it to be installed automatically by the TeX Live Manager +(tlmgr) and similar automated installers. + +If you are using automated LaTeX package installation, no further action +is required: the package will be installed the first time you use it in +a LaTeX document. + +If you are using the TeX Live Manager (_tlmgr_) program manually, you +can install this package with the command: + + $ tlmgr install classpack + + +## TDS installation + +This package is also available as a TeX Directory System (TDS) zip file +(`.tds.zip`). This is the standard directory layout for a modern TeX +installation which enables the package to be unzipped directly into your +Personal TeX Directory without the need to use _tlmgr_. If you haven’t +yet created a Personal TeX Directory, see below for details of what one +is, and how to create it. + * You can install this package on any TDS-compliant personal system +(laptop, desktop, workstation, table, smartphone, PDA, etc) by unzipping +it straight into your Personal TeX Directory. This will put all the +files into the right places, so you can start using them immediately. + * On a shared (multiuser) system like a server, the administrator can +unzip it into the `$TEXMFLOCAL` directory instead (see below), and run +your TeX directory-indexing program (eg _texhash_, _mktexlsr_, etc) so +that everyone can use it. + * If you are using an old non-TDS-compliant system, see below under Manual +Installation. + +### Your Personal TeX Directory + +This is a directory (folder) where you should put all local manual +modifications (updates, additions such as new or updated classes, +packages, and fonts) that are _not_ handled automatically by _tlmgr_. +The name and location are fixed (for all practical purposes): + * Apple Mac OS X + + ~/Library/texmf + * Unix and GNU/Linux + + ~/texmf + * MS-Windows 95/XP/NT + + C:\texmf + * MS-Windows 2007 and above + + Computer\System\YOURNAME\texmf + +Create that folder now if it does not already exist. Put (or unzip) all +additions to your system that are _not_ handled by _tlmgr_ into this +directory, following _exactly_ the subdirectory structure that is used +in your main TeX distribution (unzipping a TDS file does this for you). +This is what enables LaTeX to find stuff automatically. + + +> #### If you are a Windows user running _MiKTeX_ +> When you create the folder for your Personal TeX Directory, you MUST add it to _MiKTeX_ ’s list of supported folders. Run the _MiKTeX Maintenance/Settings_ program, select the `Roots` tab, and add the folder. You only have to do this once. +> > Each time you add or remove software in your Personal TeX Directory, you MUST then click on the `Update FNDB` button in the `General` tab of the _MiKTeX Maintenance/Settings_ program, otherwise _MiKTeX_ will not find them and nothing will work! +> + +Unix (Mac and GNU/Linux) users do not need to (indeed, should not) run +their filename database indexer program (_mktexlsr_ or _texhash_) for +files put into a personal TeX directory. + + +## Installation on shared systems + +On multi-user systems (Unix-based), identify the shared local directory +tree with the command + + kpsewhich -expand-var '$TEXMFLOCAL' + +This will give you the location of the shared `texmf` directory into +which you must unzip these files. + +Do not forget to run your local TeX filename database indexer program +(_texhash_ or _mktexlsr_) after installation, otherwise the files will +not be found by LaTeX and nothing will work! + + +## Manual installation (non-TDS systems) + +To install this software manually, download and unzip the _non-_TDS zip +file into a temporary directory and move the class and/or package +file[s] and other files to the proper locations where LaTeX will find +them on your system. This is referred to in some documentation as “the +`TEXINPUTS` directory”, although it may be called something else on your +system. + +_It is your responsibility to know where this location is._ See the +question in the TeX FAQ at +http://www.tex.ac.uk/cgi-bin/texfaq2html?label=inst-wlcf for more +information. If you do not know, or cannot find it, or do not have +access to it, your TeX system may be out of date and may need replacing. + + + +## Online systems and “last resort” systems + +Some online LaTeX systems use CTAN, so a package from there should be +available on demand. For other online LaTeX systems where you do not +have access to the file system, unzip the _non-_TDS zip file into a +temporary directory and upload the files to the online system. Follow +their instructions for where to put them. + +In an emergency, or as a last resort on unmanageable systems, it is +possible simply to put the class and/or package file[s] into your +current working directory (the same folder as your `.tex` file[s]). + +While this may work, it is not supported, and may lead to other +resources (packages, fonts, images etc) not being found. + + +## Usage + +Include the line shown below in the Preamble of your LaTeX document; a +`\documentclass` line should be at the top; a `\usepackage` command +normally goes anywhere in the Preamble: + + \usepackage[options]{classpack} + +(similarly for other classes or packages if more than one is supplied +with this package). Read the documentation for the options available, if +any. The documentation is distributed as a PDF document in the zip file. +You can also regenerate it by typesetting the `classpack.dtx` file with +`xelatex` (and `biber` and _makeindex_) in the normal way. + + +## Bugs and TODO + +No outstanding reported bugs at the time of this version. + +For TODO items, see the PDF documentation. + + +## Copyright + +The following statement is included in the source code: + + Transformed from classpack.xml by ClassPack db2dtx.xsl + version 1.19 (2020-05-19) on Wednesday 20 May 2020 at 14:32:36 + + classpack.sty is copyright © 2012-2020 by Peter Flynn + + This work may be distributed and/or modified under the + conditions of the LaTeX Project Public License, either + version 1.3 of this license or (at your option) any later + version. The latest version of this license is in: + + http://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 maintainer of this work is Peter Flynn + + This work consists of the files classpack.dtx and classpack.ins, + the derived file , + and any other ancillary files listed in the MANIFEST. + + diff --git a/support/classpack/VERSION b/support/classpack/VERSION new file mode 100644 index 0000000000..d58f8224ae --- /dev/null +++ b/support/classpack/VERSION @@ -0,0 +1 @@ +Date of most recent change is 2020-05-19 diff --git a/support/classpack/classpack.dtx b/support/classpack/classpack.dtx index 39c95c16fb..57fa2b7bf2 100644 --- a/support/classpack/classpack.dtx +++ b/support/classpack/classpack.dtx @@ -1,7 +1,9 @@ % \iffalse meta-comment % -% Extracted from classpack.xml -% classpack.dtx is copyright © 2012-2013 by Peter Flynn +% Transformed from classpack.xml by ClassPack db2dtx.xsl +% version 1.19 (2020-05-19) on Wednesday 20 May 2020 at 14:32:36 +% +% classpack.dtx is copyright © 2012-2020 by Peter Flynn % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -13,146 +15,464 @@ % 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'. +% This work has the LPPL maintenance status ‘maintained’. % % The current maintainer of this work is Peter Flynn % % This work consists of the files classpack.dtx and classpack.ins, -% the derived file classpack.sty, and any ancillary files listed -% in the MANIFEST. +% the derived file , +% and any other ancillary files listed in the MANIFEST. % % \fi % \iffalse -%\NeedsTeXFormat{LaTeX2e}[2011/06/27] -%\ProvidesPackage{classpack}[2013/05/28 v0.77 -% XML mastering for LaTeX classes and packages] +%\NeedsTeXFormat{LaTeX2e}[2015/01/01] +%\ProvidesPackage{classpack}[2020/05/19 v1.19 +% Macros for ClassPack documentation] %<*driver> -\PassOptionsToPackage{svgnames}{xcolor} +\RequirePackage{fix-cm}% included by default. +\PassOptionsToPackage{svgnames}{xcolor}% xcolor/dox/hyperref implied \documentclass[12pt]{ltxdoc} %% -%% Packages added automatically -%% -\let\SavedShow\show -\usepackage[utf8x]{inputenc}% was detected. -\AtBeginDocument{\let\show\SavedShow} -\DeclareUnicodeCharacter{9251}{\textvisiblespace} -\usepackage[T1]{fontenc}% was detected. -\usepackage{lmodern}% was detected. -\usepackage{mflogo}% was detected. -\usepackage{array}% tgroup was detected. -\usepackage{calc}% was detected. -\usepackage[inline]{enumitem}% orderedlist/@spacing='compact' was detected. -\setlist[description]{style=unboxed} -\usepackage{fancybox}% guibutton was detected. -\usepackage{fancyvrb}% programlisting was detected. -\usepackage{fmtcount}% xref/@linkend='varlistentry' was detected. -\usepackage[textwidth=150mm,textheight=8.5in]{geometry}% was detected. -\usepackage{listings}% programlisting was detected. -\lstdefinelanguage[DocBook]{XML} {morekeywords={abstract,address,affiliation,annotation,arg,author, book,chapter,classname,cmdsynopsis,command,constraintdef,contrib, copyright,cover,date,email,emphasis,envar,filename,firstname, footnote,guibutton,guilabel,guimenu,guimenuitem,guisubmenu, holder,info,itemizedlist,listitem,literal,member,option, orderedlist,orgdiv,orgname,package,para,parameter,part, personname,phrase,procedure,productname,programlisting,quote, refsection,remark,constructorsynopsis,methodparan,modifier, funcparams,olink,bibliography,biblioentry,biblioset,subtitle, artpagenums,volumenum,issuenum, releaseinfo,replaceable,revdescription,revhistory,revision, sect1,sect2,sect3,sect4,seg,seglistitem,segmentedlist,segtitle, simplelist,step,surname,systemitem,tag,term,title,uri,userinput, variablelist,varlistentry,wordasword,xref,year,xml:id,xlink:href},} -\lstdefinelanguage[TEI]{XML} {morekeywords={TEI.2,teiHeader,div2,head,p,num,val,xml:id}, }[keywords,comments,strings] -\lstloadlanguages{[LaTeX]TeX,[DocBook]XML,XSLT,bash,R} -\lstset{basicstyle=\small\color{Black}\ttfamily, literate= {Ö}{{\"O}}1 {Ä}{{\"A}}1 {Ü}{{\"U}}1 {ß}{{\ss}}2 {ü}{{\"u}}1 {á}{{\'a}}1 {é}{{\'e}}1 {í}{{\'i}}1 {ó}{{\'o}}1 {ú}{{\'u}}1 {ä}{{\"a}}1 {ö}{{\"o}}1, keywordstyle=\color{DarkGreen}\bfseries, commentstyle=\color{Gray}\upshape, stringstyle=\color{DarkRed}\upshape, emphstyle=\color{MediumBlue}\itshape, showstringspaces=false, columns=fullflexible, keepspaces=true} -\usepackage{makeidx}% was detected. -\makeindex -\usepackage{nicefrac}% was detected. -\def\textonehalf{\ensuremath{\nicefrac12}} -\usepackage{parskip}% was detected. -\usepackage{url}% uri was detected. -\usepackage{varioref}% xref was detected. -\vrefwarning -\labelformat{chapter}{Chapter~#1} -\makeatletter -\labelformat{chapter}{\@chapapp~#1} -\makeatother -\labelformat{section}{section~#1} -\labelformat{subsection}{section~#1} -\labelformat{subsubsection}{section~#1} -\labelformat{paragraph}{section~#1} -\labelformat{figure}{Figure~#1} -\labelformat{table}{Table~#1} -\labelformat{item}{item~#1} -\renewcommand{\reftextcurrent}{elsewhere on this page} -\def\reftextafter{on the \reftextvario{next}{following} page} -\usepackage[svgnames]{xcolor}% was detected. -\makeatletter -\@ifundefined{T}{\newcommand{\T}[2]{{\fontencoding{T1}\selectfont#2}}}{} -\makeatother -\usepackage{dox}% was detected. -\doxitem{Attribute}{attribute}{attributes} -\doxitem{AttributeValue}{attributevalue}{attribute values} -\doxitem{Class}{class}{classes} -\doxitem{Colour}{colour}{colours} -\doxitem{Counter}{counter}{counters} -\doxitem{DTD}{dtd}{DTDs/Schemas} -\doxitem{Element}{element}{element types} -\doxitem{Entity}{entity}{entities} -\doxitem{Error}{error}{errors} -\doxitem{Function}{function}{functions} -\doxitem[macrolike]{Length}{length}{lengths} -\doxitem{Mode}{mode}{mode} -\doxitem{Option}{option}{options} -\doxitem{Package}{package}{packages} -\doxitem{Template}{template}{templates} -\newcommand{\LabelFont}[2][\relax]{\strut {\fontencoding\encodingdefault \fontfamily{lmtt}\fontseries{lc}\selectfont#1#2}\space} -\makeatletter -\def\PrintDescribeAttribute#1{\LabelFont{@#1}} -\makeatother -\def\PrintDescribeAttributeValue#1{\LabelFont[\itshape]{#1}} -\def\PrintDescribeClass#1{\LabelFont{#1}} -\def\PrintDescribeColour#1{\LabelFont[\color{#1}]{#1}} -\def\PrintDescribeCounter#1{\LabelFont{#1}} -\def\PrintDescribeDTD#1{\LabelFont{#1}} -\def\PrintDescribeElement#1{\LabelFont{<#1>}} -\def\PrintDescribeEntity#1{\LabelFont{\}} -\def\PrintDescribeError#1{\LabelFont[\color{Red}!]{#1}} -\def\PrintDescribeFunction#1{\LabelFont{#1}} -\def\PrintDescribeLength#1{\LabelFont{#1}} -\def\PrintDescribeMode#1{\LabelFont[\sffamily]{\textlangle#1\textrangle}} -\def\PrintDescribeOption#1{\LabelFont[\itshape]{#1}} -\def\PrintDescribePackage#1{\LabelFont{#1}} -\def\PrintDescribeTemplate#1{\LabelFont[\fontfamily{lmss}\fontseries{sbc}\selectfont]{#1}} -\usepackage{apacite} +%% Packages added for documentation %% -%% Packages added by author -%% -\usepackage{dejavu} -\usepackage{textgreek} -\usepackage{classpack} +\usepackage{dox}% used by default. (0)% + \makeatletter + \doxitem[idxtype=attribute]{Attribute}{CPK@attribute}{attributes} + \makeatother + \makeatletter + \doxitem[idxtype=attributevalue]{AttributeValue}{CPK@attributevalue}{attribute values} + \makeatother + \makeatletter + \doxitem[idxtype=class]{Class}{CPK@class}{classes} + \makeatother + \makeatletter + \doxitem[idxtype=colour]{Colour}{CPK@colour}{colours} + \makeatother + \makeatletter + \doxitem[idxtype=counter]{Counter}{CPK@counter}{counters} + \makeatother + \makeatletter + \doxitem[idxtype=DTD]{DTD}{CPK@dtd}{DTDs/Schemas} + \makeatother + \makeatletter + \doxitem[idxtype=element]{Element}{CPK@element}{element types} + \makeatother + \makeatletter + \doxitem[idxtype=entity]{Entity}{CPK@entity}{entities} + \makeatother + \makeatletter + \doxitem[idxtype=error]{Error}{CPK@error}{errors} + \makeatother + \makeatletter + \doxitem[idxtype=field]{Field}{CPK@field}{fields} + \makeatother + \makeatletter + \doxitem[idxtype=file]{File}{CPK@file}{files} + \makeatother + \makeatletter + \doxitem[idxtype=font]{Font}{CPK@font}{fonts} + \makeatother + \makeatletter + \doxitem[idxtype=function]{Function}{CPK@function}{functions} + \makeatother + \makeatletter + \doxitem[idxtype=language]{Language}{CPK@language}{languages} + \makeatother + \makeatletter + \doxitem[macrolike,idxtype=length]{Length}{CPK@length}{lengths} + \makeatother + \makeatletter + \doxitem[idxtype=mode]{Mode}{CPK@mode}{modes} + \makeatother + \makeatletter + \doxitem[idxtype=option]{Option}{CPK@option}{options} + \makeatother + \makeatletter + \doxitem[idxtype=package]{Package}{CPK@package}{packages} + \makeatother + \makeatletter + \doxitem[idxtype=variable]{Variable}{CPK@variable}{variables} + \makeatother + \makeatletter + \doxitem[idxtype=parameter]{Parameter}{CPK@parameter}{parameters} + \makeatother + \makeatletter + \doxitem[macrolike,idxtype=switch]{Switch}{CPK@switch}{switches} + \makeatother + \makeatletter + \doxitem[idxtype=template]{Template}{CPK@template}{templates} + \makeatother + \makeatletter + \doxitem[idxtype=typeface]{Typeface}{CPK@typeface}{typefaces} + \makeatother + \makeatletter + \doxitem[macrolike,idxtype=box]{Box}{CPK@box}{boxes} + \makeatother + \newcommand{\LabelFont}[2][\relax]{\strut + {\fontencoding\encodingdefault + \fontfamily{lmtt}\fontseries{lc}#1\selectfont#2}\space} + \makeatletter + \let\CPK@macro\macro\let\CPK@endmacro\endmacro + \makeatother + \makeatletter + \let\CPK@environment\environment\let\CPK@endenvironment\endenvironment + \makeatother + \makeatletter + \def\PrintAttributeName#1{\LabelFont{@#1}} + \makeatother + \def\PrintAttributeValueName#1{\LabelFont{"#1"}} + \def\PrintClassName#1{\LabelFont[\fontfamily{lmss}]{#1}} + \def\PrintColourName#1{\LabelFont[\color{#1}]{#1}} + \def\PrintCounterName#1{\LabelFont{#1}} + \def\PrintDTDName#1{\LabelFont{#1}} + \def\PrintElementName#1{\LabelFont{<#1>}} + \def\PrintEntityName#1{\LabelFont{\}} + \def\PrintEnvironmentName#1{\LabelFont[\fontfamily{lmss}]{#1}} + \def\PrintErrorName#1{\LabelFont[\color{Red}!]{#1}} + \def\PrintFunctionName#1{\LabelFont[\bfseries\itshape]{#1}} + \def\PrintLanguageName#1{\LabelFont{#1}} + \def\PrintLengthName#1{\LabelFont{#1}} + \def\PrintMacroName#1{\LabelFont{#1}} + \def\PrintModeName#1{\LabelFont[\sffamily]{\textlangle#1\textrangle}} + \def\PrintOptionName#1{\LabelFont[\bfseries]{#1}} + \def\PrintPackageName#1{\LabelFont[\fontfamily{lmss}]{#1}} + \def\PrintSwitchName#1{\LabelFont{#1}} + \def\PrintTemplateName#1{\LabelFont[\bfseries]{#1}} + \def\PrintVariableName#1{\LabelFont[\ttfamily]{#1}} + \def\PrintParameterName#1{\LabelFont[\ttfamily]{#1}} + \def\PrintFieldName#1{\LabelFont[\ttfamily]{#1}} +%% fontenc omit: conflict: fontspec (3) +%% inputenc omit: conflict: fontspec (4) +\usepackage{fontspec}% part/@conformance=xelatex detected. (7)% +\usepackage{mflogo}% used by default. (35)% +\usepackage[greek,british]{babel}% requested by author (40)% +\usepackage[backend=biber,doi=true, + isbn=true,url=true,uniquename=false,style=apa]{biblatex}% bibliography/@arch=biblatex detected. (41)% + \makeatletter + \AtBeginDocument{% + \setlength{\bibitemsep}{1ex}% + \setlength{\bibnamesep}{1.5\itemsep}% + \defbibheading{shortbib}[References]% + {\section{#1}}} + \@ifpackagewith{babel}{british}{% + \DeclareLanguageMapping{british}% + {british-apa}}{\relax} + \makeatother + \makeatletter + \providetoggle{blx@skipbiblist} + \makeatother +\usepackage{csquotes}% bibliography/@arch=biblatex detected. (43)% +\usepackage{array}% use of 'tgroup' detected (46)% +\usepackage{calc}% used by default. (49)% + \makeatletter + {\scriptsize + \global\advance\@totalleftmargin by1em + \global\advance\MacroIndent by.5em} + \makeatother +\usepackage{ccaption}% used by default. (52)% + \captionnamefont{\bfseries} + \captionstyle{\raggedright} +\usepackage[inline]{enumitem}% use of 'variablelist' detected (56)% + \setlist[description]{style=unboxed} + \setlist[itemize]{leftmargin=2em} + \setlist[enumerate]{leftmargin=2em} + \newlist{inlineenum}{enumerate*}{1} + \setlist[inlineenum,1]{label=\emph{\alph*}), + itemjoin={{; }},itemjoin*={{; and }}} +\usepackage{fancybox}% use of 'note' detected (57)% +\usepackage{fancyvrb}% use of 'bibliography' detected (60)% +\usepackage{relsize}% use of 'acronym' detected (64)% +\usepackage{textcase}% used by default. (67)% +\usepackage{float}% used by default. (69)% + \renewcommand{\topfraction}{.85} + \renewcommand{\bottomfraction}{.7} + \renewcommand{\textfraction}{.15} + \renewcommand{\floatpagefraction}{.66} + \renewcommand{\dbltopfraction}{.66} + \renewcommand{\dblfloatpagefraction}{.66} + \setcounter{topnumber}{9} + \setcounter{bottomnumber}{9} + \setcounter{totalnumber}{20} + \setcounter{dbltopnumber}{9} +\usepackage[a4paper,left=30mm,top=25mm, + textwidth=150mm,textheight=225mm,headheight=15pt]{geometry}% used by default. (71)% +\usepackage{graphicx}% part/@conformance=xelatex detected. (76)% +\usepackage{listings}% use of 'programlisting' detected (83)% + \lstdefinelanguage{dummy} + {morekeywords={dummy}} + \lstdefinelanguage{Makefile} + {otherkeywords={.PHONY,.DEFAULT},% + morekeywords={PHONY,DEFAULT,shell,ifeq,else,endif},% + keywordsprefix={.},% + moredelim=[l][\color{Green}]{:},% + morecomment=[l]{\#},% + moredelim=[s][\color{Blue}]{\$(}{)}% + } + \lstdefinelanguage{DocBook}[]{XML} + {morekeywords={abstract,address,affiliation,annotation,arg, + author,book,chapter,classname,cmdsynopsis,command, + constraintdef,contrib,copyright,cover,date,email,emphasis, + envar,filename,firstname,footnote,guibutton,guilabel, + guimenu,guimenuitem,guisubmenu,holder,info,itemizedlist, + listitem,literal,member,option,orderedlist,orgdiv,orgname, + package,para,parameter,part,personname,phrase,procedure, + productname,programlisting,quote,refsection,remark, + constructorsynopsis,methodparan,modifier,funcparams,olink, + bibliography,biblioentry,biblioset,subtitle,artpagenums, + volumenum,issuenum,DOCTYPE,SYSTEM,xml:id,releaseinfo, + replaceable,revdescription,revhistory,revision,sect1,sect2, + sect3,sect4,seg,seglistitem,segmentedlist,segtitle, + simplelist,step,surname,systemitem,tag,term,title,uri, + userinput,variablelist,varlistentry,wordasword,xref,year, + xlink:href}} + + \makeatletter + \lstdefinelanguage{bash} + {morestring=[s]{[]},morekeywords={exit,logout,yes,no,@, + password,ssh,URL,cd,dvips,latex,ls,makeindex,man,mkdir, + pdflatex,sudo,texconfig,texdoc,updmap,xelatex,biber, + latexmk,bibtex}} + + \makeatother + \lstdefinelanguage{APA}[]{XML} + {morekeywords={TTL}} + + \lstdefinelanguage{OOXML}[]{XML} + {morekeywords={w:p,w:pPr,w:pStyle,w:rPr,w:rFonts, + w:r,w:t,w:lang}} + + \lstdefinelanguage{SGML}[]{XML} + {morekeywords={sec,ttl}} + + \lstdefinelanguage{DTD}[]{XML} + {morekeywords={ELEMENT,ENTITY,ATTLIST,CDATA,ID,REQUIRED, + IMPLIED,PCDATA}} + + \lstdefinelanguage{Runoff} + {morekeywords={h1}} + + \lstdefinelanguage{GML} + {morekeywords={h1}} + + \lstdefinelanguage{Scribe} + {morekeywords={Heading},morestring=[s]{[]}} + + \lstdefinelanguage{RTF}[]{TeX} + {moretexcs={rtf,ansi,deff,adeflang,fonttbl,f,froman,fprq, + fcharset,f1,fswiss,falt,fnil,colortbl,red,green,blue, + stylesheet,s,snext,nowidctlpar,hyphen,hyphlead,hyphtrail, + hyphmax,cf,kerning,dbch,af,langfe,afs,alang,loch,fs, + pgndec,pard,plain,qc,sb,sa,keepn,b,ab,rtlch,ltrch,par}} + + \lstdefinelanguage{TEI}[]{XML} + {morekeywords={TEI,TEI.2,teiHeader,fileDesc,sourceDesc, + titleStmt,title,author,editor,respStmt,resp,name, + editionStmt,edition,text,body,publicationStmt,publisher, + div,div1,placeName,lg,l,s,cl,phr,w,list,distinct,p,pb, + mls,div2,head,num,val,app,lem,rdg,q,sup,uncl,note, + DOCTYPE,SYSTEM,xml:id}}[keywords,comments,strings] + + \lstdefinelanguage{XSLT2}[]{XML} + {morekeywords={xsl:stylesheet,xsl:transform, + xsl:apply-imports,xsl:attribute-set,xsl:decimal-format, + xsl:import,xsl:include,xsl:key,xsl:namespace-alias, + xsl:output,xsl:param, + xsl:preserve-space,xsl:strip-space,xsl:template, + xsl:variable,xsl:character-map,xsl:function, + xsl:import-schema,xsl:param,xsl:variable, + xsl:apply-imports,xsl:apply-templates,xsl:attribute, + xsl:call-template,xsl:choose,xsl:comment,xsl:copy, + xsl:copy-of,xsl:element,xsl:fallback,xsl:for-each, + xsl:if,xsl:message,xsl:number,xsl:otherwise, + xsl:processing-instruction,xsl:text,xsl:value-of, + xsl:variable,xsl:when,xsl:with-param,xsl:sort, + xsl:for-each-group,xsl:next-match,xsl:analyze-string, + xsl:namespace,xsl:result-document,xsl:copy, + xsl:fallback,xsl:document,xsl:sequence, + xsl:matching-substring,xsl:non-matching-substring, + xsl:perform-sort,xsl:output-character}, + alsodigit={-}} + + \lstdefinelanguage{LaTeXe}[LaTeX]{TeX} + {morekeywords = {selectlanguage,foreignlanguage, + textbrokenbar,textlangle,textrangle,subsection,url, + chapter,tableofcontents,part,subsubsection,paragraph, + subparagraph,maketitle,setlength,listoffigures, + listoftables,color,arraybackslash,includegraphics, + textcite,parencite,graphicspath,lstinline, + DeclareLanguageMapping,textcolor,definecolor,colorbox, + fcolorbox,RequirePackage,PassOptionsToPackage}} + + \lstdefinelanguage{BIBTeX}{ + morekeywords = {title,author,edition,publisher,year, + address}, + morestring=[b]", + } + + \lstdefinelanguage{Email}{ + morekeywords={From,Subject,To,Date}, + } + + \lstset{defaultdialect=LaTeXe,frame=single, + framesep=.5em,backgroundcolor=\color{AliceBlue}, + rulecolor=\color{LightSteelBlue},framerule=1pt} + + \lstloadlanguages{LaTeXe,DocBook,XML,XSLT2,bash} + \lstdefinelanguage{XMLFRAG}{tag=**[s]<>}[html] + \lstnewenvironment{listingsdoc} + {\lstset{language={[LaTeX]TeX}}} + {} + \newcommand\basicdefault[1]{\footnotesize + \color{Black}\ttfamily#1} + + \lstset{basicstyle=\basicdefault{\spaceskip.5em}} + \lstset{literate= + {§}{{\S}}1 + {©}{{\raisebox{.125ex}{\copyright}\enspace}}1 + {«}{{\guillemotleft}}1 + {»}{{\guillemotright}}1 + {Á}{{\'A}}1 + {Ä}{{\"A}}1 + {É}{{\'E}}1 + {Í}{{\'I}}1 + {Ó}{{\'O}}1 + {Ö}{{\"O}}1 + {Ú}{{\'U}}1 + {Ü}{{\"U}}1 + {ß}{{\ss}}2 + {à}{{\`a}}1 + {á}{{\'a}}1 + {ä}{{\"a}}1 + {é}{{\'e}}1 + {í}{{\'i}}1 + {ó}{{\'o}}1 + {ö}{{\"o}}1 + {ú}{{\'u}}1 + {ü}{{\"u}}1 + {¹}{{\textsuperscript1}}1 + {²}{{\textsuperscript2}}1 + {³}{{\textsuperscript3}}1 + {ı}{{\i}}1 + {—}{{---}}1 + {’}{{'}}1 + {…}{{\dots}}1 + {➝}{{$leftarrow$}}1 + {⮠}{{$\hookleftarrow$}}1 + {␣}{{\textvisiblespace}}1, + keywordstyle=\color{DarkGreen}\bfseries, + identifierstyle=\color{DarkRed}, + commentstyle=\color{Gray}\upshape, + stringstyle=\color{DarkBlue}\upshape, + emphstyle=\color{Chocolate}\upshape, + showstringspaces=false, + columns=fullflexible, + keepspaces=true} +\usepackage{makeidx}% used by default. (85)% + \makeindex +\usepackage{nicefrac}% used by default. (91)% + \def\textonehalf{\ensuremath{\nicefrac12}} +\usepackage{parskip}% used by default. (93)% +\usepackage{sectsty}% used by default. (96)% + \allsectionsfont{\sffamily\raggedright} + \renewcommand*{\descriptionlabel}[1]{\hspace\labelsep + \sffamily\bfseries #1} +\usepackage[normalem]{ulem}% use of 'link' detected (103)% +\usepackage{url}% use of 'ulink' detected (104)% + \AtBeginDocument{\urlstyle{tt}} +\usepackage{varioref}% use of 'xref' detected (107)% + \vrefwarning + \labelformat{appendix}{Appendix~#1} + \makeatletter + \labelformat{chapter}{\@chapapp~#1} + \makeatother + \labelformat{section}{section~#1} + \labelformat{subsection}{section~#1} + \labelformat{subsubsection}{section~#1} + \labelformat{paragraph}{section~#1} + \labelformat{figure}{Figure~#1} + \labelformat{table}{Table~#1} + \labelformat{item}{item~#1} + \renewcommand{\reftextcurrent}{elsewhere on this + page} + \def\reftextafter{on the + \reftextvario{next}{following} page} +\usepackage{xcolor}% used by default. (115)% + \makeatletter + \@ifundefined{T}{% + \newcommand{\T}[2]{{\fontencoding{T1}% + \selectfont#2}}}{} + \makeatother +\usepackage{fontawesome}% guiicon/@remap detected. (117)% +\usepackage{menukeys}% use of 'guimenu' detected (118)% + \renewmenumacro{\menu}[>]{roundedmenus} + \renewmenumacro{\directory}[/]{hyphenatepathswithfolder} + \renewmenumacro{\keys}{shadowedroundedkeys} +\usepackage{classpack}[2020/05/19]% used by default. (120)% +\usepackage[ragged]{footmisc}% requested by author (9999)% +\usepackage{classpack}[2020/05/19]% added by spec +\addbibresource{classpack.bib} +% %% -%% Settings for docstrip and latexdoc +%% Settings for docstrip and ltxdoc %% \EnableCrossrefs \CodelineIndex \RecordChanges -\newlength{\revmarg} -\setlength{\revmarg}{1in} -\newcommand{\vstrut}{\vrule height1.2em depth.6667ex width0pt} -\newcommand{\prestrut}{\vrule height1em width0pt} -\newcommand{\poststrut}{\vrule depth.5ex width0pt} -\begin{document}\raggedright\hyphenation{ele-ment attri-bute-value} +\begin{document}\raggedright \DocInput{classpack.dtx} \end{document} % % \fi % -% \CheckSum{45} +% \CheckSum{246} % % \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 \~} +% 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 \~} % +% \changes{v1.19}{2020/05/19}{: 1) Prefixed local variables with CPK; 2) CTAN candidate.} +% \changes{v1.18}{2020/04/01}{: 1) Split project into classpack and classpack-dev; 2) Replaced conformance with YYYY-MM-DD on all date elements in the revision history. This meant a complete regression run after editing all source masters to use this change; 3) Fixed bug in makechapapp where it failed to add the filetype before substringing the full name of the document.} +% \changes{v1.17}{2020/03/19}{: 1) Documentation nearly finished; 2) Added remaining XSLT files and scripts; 3) Recoded the distinction between appendixes in the code part and chapters in the files part..} +% \changes{v1.16}{2019/10/20}{: 1) Documentation ongoing; 2) Added detection of options on url and xcolor; 3) Changed order of packages in prepost.xml to prevent option clashes.} +% \changes{v1.15}{2019/10/10}{: 1) Started massive documentation effort on XSLT; 2) Order of templates changed in XSLT.} +% \changes{v1.14}{2019/07/25}{: 1) Updated the Markdown driver for the README to produce code that displays correctly in the Markdown Viewer 3.6 extension for Chrome and conforms to the CTAN rules.; 2) Added details of ClassPack to the MD file header; 3) Some reorganisation of topics; 4) More annotation-level documentation on the XSLT3 code.} +% \changes{v1.13}{2019/02/18}{: 1) Created commentchar and termcommentchar functions; 2) Untested invocation in sect1 template.} +% \changes{v1.12}{2019/02/17}{: 1) Started tidying up sentinel and fence; 2) Involves rationalising the use of chapter and appendix within part; 3) parameterised a makesentinel, maketermsentinel, and makefence in sect1 but they don't get called because of [2] above; 4) Finished writing the chunk program.} +% \changes{v1.11}{2019/02/13}{: 1) Fixed numerous bugs in handling of listings; 2) Moved DTD annotations to doc as chapter while logic for appendixes not working properly; 3) Finished PE chunking of db2dtx.xsl and doctexbook-master.dtd; 4) Finished writing the chunk program.} +% \changes{v1.10}{2019/01/22}{: 1) Added attributes to programlisting for fragmentary listings; 2) Changed emphasis with role=bold to be plain bold, not bold italic; 3) Changed blockquotes to blue in the PDF, added recognition of xlink:href to give source ack as URI.} +% \changes{v1.09}{2018/07/07}{Skipped the application of headers to appendix files: 1) Files written from the appendix element no longer get the LaTeX headers prepended; 2) The sentinel value for comments in scripts now reflects the double hash; 3) Added the remark element to db2md.xsl (with plain para); 4) Ongoing updates and explanation.} +% \changes{v1.08}{2018/02/07}{Moved RFC2119 warning, and did some minor rewording: 1) Removed RFC2119 warning text from db2dtx.xsl to rfc2119.xml, creating a section to hold it and the bibliography. Rewrote the templates for bibliolist, biblioentry, bibliography, and section/title to accomodate this.; 2) Ongoing updates and explanation.} +% \changes{v1.07}{2018/01/12}{Minor adaptations to quoted chunks of code: Updated to use \XeLaTeX{}.} +% \changes{v1.06}{2017/06/16}{Maintenance release: Rearranged output so that change log and index always get printed.} +% \changes{v1.05}{2017/04/03}{Maintenance: 1) Updated documentation; 2) Tested additional outputs.} +% \changes{v1.04}{2016/12/20}{Reusable code blocks: 1) Added an attribute reuse to the annotation element for use in Appendixes which generate additional \LaTeX{} class or package files, which points at an xml:id attribute on an existing annotation element already used elsewhere so that the same documentation text can be included. Also added an omit attribute to the seglistitem elements in the constraintdef element for class packages which specifies that the relevant package is not required for the additional class or package being generated.; 2) Changed the documentation font to Noto..} +% \changes{v1.03}{2016/08/13}{Bundle identifiers: 1) Added a line to the Makefile to pick out the date of the most-recently-updated file and put it in a file called VERSION (suggestion from Petra Rübe-Pugliese at CTAN based on their docs).; 2) Regularised the identity of the version date from a global variable date, rather than working it out each time..} +% \changes{v1.025}{2016/08/12}{README: Title and identity moved to a template and deleted from readme.xml.} +% \changes{v1.02}{2016/07/05}{Moved specification for babel to pre-options: 1) The babel package is now pre-specified with the PassOptionsToPackage command, to avoid conflicts with options later; 2) Now using \XeLaTeX{} and biber.} +% \changes{v1.01}{2016/06/12}{Edited out duplications in documentation: 1) Tidied explanations and documented the markup in more detail; 2) Now using \XeLaTeX{} and biber.} +% \changes{v1.0}{2016/06/12}{Tidied up the processing and greatly extended documentation: 1) Rewrote almost all the description of how to create the basic XML file; 2) The RFC2119 Note now automatically includes the relevant \BibTeX{} entry in the .bib file (done in the Makefile).} +% \changes{v0.92}{2016/05/12}{Major changes to the way the .dtx code is created: 1) Moved the specification of the processor from an attribute on the root element to the part start-tag for documentation; 2) Switched from the build file to a Makefile (still incomplete).; 3) Enabled the use of \XeLaTeX{} for the documentation in the .dtx file; 4) Largely rewrote the code for auto-detecting and adding packages, combining the auto-detect packages with those specified by the author. It now includes: a] negatable crosslinks specified in the remap on the constructorsynopsis start-tag (eg specifying the use of \XeLaTeX{} automatically invokes fontspec and defeats the autoload of the inputenc and fontenc packages), b] addition of the use of the arch and condition attributes on the bibliography start-tag to hold the \BibTeX{} package (biblatex) and the \BibTeX{} engine (biber), c] changes from the text-mode README to a MarkdownREADME.md to accommodate TUG’s submission process; 5) The layout of the zip files has been significantly changed to accord with the submission requirements of CTAN; 6) A Bibliography of the documentation is now extracted to disk directly in the XSLT3 process, rather than via the VerbatimOut environment in the .dtx file; 7) The RFC2119 Note now automatically includes the relevant \BibTeX{} entry in the .bib file (done in the Makefile).} +% \changes{v0.915}{2016/05/11}{Merged: Merged default packages with author-requested ones..} +% \changes{v0.91}{2016/05/10}{Regenerated: Recreated package with new classpack code to create zip file to the CTAN standard.} +% \changes{v0.905}{2015/10/06}{Enhanced: Added support for \XeLaTeX{}.} +% \changes{v0.9}{2015/12/19}{Removed fixltx2e: The code from the fixltx2e package has now been merged into the kernel, so the preload of this package is no longer needed..} +% \changes{v0.82}{2014/03/31}{Fixed hline bug: Should have been renewcommand not def.} +% \changes{v0.81}{2014/03/14}{Added more logo commands: XeTeX, XeLaTeX.} +% \changes{v0.80}{2014/03/10}{Moved doc commands from XSLT2: ToC settings and revmarg.} +% \changes{v0.79}{2014/03/07}{Editorial update: Small corrections.} +% \changes{v0.78}{2014/03/06}{Changed default code color: MacroFont now DarkBlue.} % \changes{v0.77}{2013/05/28}{Removed unwanted definitions: classorpackage.} % \changes{v0.76}{2013/05/05}{Modified documentation: Started working on Makefile.} % \changes{v0.75}{2013/03/14}{Added secondary files: Secondary output files possible; reversed usage of role attribute on keywords;.} @@ -164,99 +484,80 @@ % \GetFileInfo{classpack.dtx} % % \DoNotIndex{\@,\@@par,\@beginparpenalty,\@empty} -% \DoNotIndex{\@flushglue,\@gobble,\@input} -% \DoNotIndex{\@makefnmark,\@makeother,\@maketitle} -% \DoNotIndex{\@namedef,\@ne,\@spaces,\@tempa} -% \DoNotIndex{\@tempb,\@tempswafalse,\@tempswatrue} -% \DoNotIndex{\@thanks,\@thefnmark,\@topnum} -% \DoNotIndex{\@@,\@elt,\@forloop,\@fortmp,\@gtempa,\@totalleftmargin} -% \DoNotIndex{\",\/,\@ifundefined,\@nil,\@verbatim,\@vobeyspaces} -% \DoNotIndex{\|,\~,\ ,\active,\advance,\aftergroup,\begingroup,\bgroup} -% \DoNotIndex{\mathcal,\csname,\def,\documentstyle,\dospecials,\edef} -% \DoNotIndex{\egroup} -% \DoNotIndex{\else,\endcsname,\endgroup,\endinput,\endtrivlist} -% \DoNotIndex{\expandafter,\fi,\fnsymbol,\futurelet,\gdef,\global} -% \DoNotIndex{\hbox,\hss,\if,\if@inlabel,\if@tempswa,\if@twocolumn} -% \DoNotIndex{\ifcase} -% \DoNotIndex{\ifcat,\iffalse,\ifx,\ignorespaces,\index,\input,\item} -% \DoNotIndex{\jobname,\kern,\leavevmode,\leftskip,\let,\llap,\lower} -% \DoNotIndex{\m@ne,\next,\newpage,\nobreak,\noexpand,\nonfrenchspacing} -% \DoNotIndex{\obeylines,\or,\protect,\raggedleft,\rightskip,\rm,\sc} -% \DoNotIndex{\setbox,\setcounter,\small,\space,\string,\strut} -% \DoNotIndex{\strutbox} -% \DoNotIndex{\thefootnote,\thispagestyle,\topmargin,\trivlist,\tt} -% \DoNotIndex{\twocolumn,\typeout,\vss,\vtop,\xdef,\z@} -% \DoNotIndex{\,,\@bsphack,\@esphack,\@noligs,\@vobeyspaces,\@xverbatim} -% \DoNotIndex{\`,\catcode,\end,\escapechar,\frenchspacing,\glossary} -% \DoNotIndex{\hangindent,\hfil,\hfill,\hskip,\hspace,\ht,\it,\langle} -% \DoNotIndex{\leaders,\long,\makelabel,\marginpar,\markboth,\mathcode} -% \DoNotIndex{\mathsurround,\mbox,\newcount,\newdimen,\newskip} -% \DoNotIndex{\nopagebreak} -% \DoNotIndex{\parfillskip,\parindent,\parskip,\penalty,\raise,\rangle} -% \DoNotIndex{\section,\setlength,\TeX,\topsep,\underline,\unskip,\verb} -% \DoNotIndex{\vskip,\vspace,\widetilde,\\,\%,\@date,\@defpar} -% \DoNotIndex{\[,\{,\},\]} -% \DoNotIndex{\count@,\ifnum,\loop,\today,\uppercase,\uccode} -% \DoNotIndex{\baselineskip,\begin,\tw@} -% \DoNotIndex{\a,\b,\c,\d,\e,\f,\g,\h,\i,\j,\k,\l,\m,\n,\o,\p,\q} -% \DoNotIndex{\r,\s,\t,\u,\v,\w,\x,\y,\z,\A,\B,\C,\D,\E,\F,\G,\H} -% \DoNotIndex{\I,\J,\K,\L,\M,\N,\O,\P,\Q,\R,\S,\T,\U,\V,\W,\X,\Y,\Z} -% \DoNotIndex{\1,\2,\3,\4,\5,\6,\7,\8,\9,\0} -% \DoNotIndex{\!,\#,\$,\&,\',\(,\),\+,\.,\:,\;,\<,\=,\>,\?,\_} -% \DoNotIndex{\discretionary,\immediate,\makeatletter,\makeatother} -% \DoNotIndex{\meaning,\newenvironment,\par,\relax,\renewenvironment} -% \DoNotIndex{\repeat,\scriptsize,\selectfont,\the,\undefined} -% \DoNotIndex{\arabic,\do,\makeindex,\null,\number,\show,\write,\@ehc} -% \DoNotIndex{\@author,\@ehc,\@ifstar,\@sanitize,\@title,\everypar} -% \DoNotIndex{\if@minipage,\if@restonecol,\ifeof,\ifmmode} -% \DoNotIndex{\lccode,\newtoks,\onecolumn,\openin,\p@,\SelfDocumenting} -% \DoNotIndex{\settowidth,\@resetonecoltrue,\@resetonecolfalse,\bf} -% \DoNotIndex{\clearpage,\closein,\lowercase,\@inlabelfalse} -% \DoNotIndex{\selectfont,\mathcode,\newmathalphabet,\rmdefault} -% \DoNotIndex{\bfdefault,\DeclareRobustCommand} -% \DoNotIndex{\varname} -% \DoNotIndex{\section} -% \DoNotIndex{\subsection} -% \DoNotIndex{\raggedright} -% \DoNotIndex{\sffamily} -% \DoNotIndex{\usepackage} -% \DoNotIndex{\title} -% \DoNotIndex{\author} -% \DoNotIndex{\abstractname} -% \DoNotIndex{\changes} -% \DoNotIndex{\RequirePackage} -% \DoNotIndex{\LoadPackage} -% \DoNotIndex{\makeindex} -% \DoNotIndex{\makeatletter} -% \DoNotIndex{\makeatother} -% \DoNotIndex{\def} -% \DoNotIndex{\newwrite} -% \DoNotIndex{\classorpackage} -% \DoNotIndex{\@@doxdescribe} -% \DoNotIndex{\build} -% \DoNotIndex{\label} -% \DoNotIndex{\small} -% \DoNotIndex{\ttfamily} -% \DoNotIndex{\cite} -% \DoNotIndex{\citefield} -% \DoNotIndex{\url} -% \DoNotIndex{\ref} -% \DoNotIndex{\parskip} -% \DoNotIndex{\java} -% \DoNotIndex{\./build} +% \DoNotIndex{\@flushglue,\@gobble,\@input,\@makefnmark} +% \DoNotIndex{\@makeother,\@maketitle,\@namedef,\@ne} +% \DoNotIndex{\@spaces,\@tempa,\@tempb,\@tempswafalse} +% \DoNotIndex{\@tempswatrue,\@thanks,\@thefnmark,\@topnum} +% \DoNotIndex{\@@,\@elt,\@forloop,\@fortmp,\@gtempa} +% \DoNotIndex{\@totalleftmargin,\",\/,\@ifundefined,\@nil} +% \DoNotIndex{\@verbatim,\@vobeyspaces,\|,\~,\ ,\active} +% \DoNotIndex{\advance,\aftergroup,\begingroup,\bgroup} +% \DoNotIndex{\mathcal,\csname,\def,\documentstyle} +% \DoNotIndex{\dospecials,\edef,\egroup,\else,\endcsname} +% \DoNotIndex{\endgroup,\endinput,\endtrivlist} +% \DoNotIndex{\expandafter,\fi,\fnsymbol,\futurelet,\gdef} +% \DoNotIndex{\global,\hbox,\hss,\if,\if@inlabel} +% \DoNotIndex{\if@tempswa,\if@twocolumn,\ifcase,\ifcat} +% \DoNotIndex{\iffalse,\ifx,\ignorespaces,\index,\input} +% \DoNotIndex{\item,\jobname,\kern,\leavevmode,\leftskip} +% \DoNotIndex{\let,\llap,\lower,\m@ne,\next,\newpage} +% \DoNotIndex{\nobreak,\noexpand,\nonfrenchspacing} +% \DoNotIndex{\obeylines,\or,\protect,\raggedleft} +% \DoNotIndex{\rightskip,\rm,\sc,\setbox,\setcounter} +% \DoNotIndex{\small,\space,\string,\strut,\strutbox} +% \DoNotIndex{\thefootnote,\thispagestyle,\topmargin} +% \DoNotIndex{\trivlist,\tt,\twocolumn,\typeout,\vss,\vtop} +% \DoNotIndex{\xdef,\z@,\,,\@bsphack,\@esphack,\@noligs} +% \DoNotIndex{\@vobeyspaces,\@xverbatim,\`,\catcode,\end} +% \DoNotIndex{\escapechar,\frenchspacing,\glossary} +% \DoNotIndex{\hangindent,\hfil,\hfill,\hskip,\hspace,\ht} +% \DoNotIndex{\it,\langle,\leaders,\long,\makelabel} +% \DoNotIndex{\marginpar,\markboth,\mathcode,\mathsurround} +% \DoNotIndex{\mbox,\newcount,\newdimen,\newskip} +% \DoNotIndex{\nopagebreak,\parfillskip,\parindent} +% \DoNotIndex{\parskip,\penalty,\raise,\rangle,\section} +% \DoNotIndex{\setlength,\TeX,\topsep,\underline,\unskip} +% \DoNotIndex{\verb,\vskip,\vspace,\widetilde,\\,\%,\@date} +% \DoNotIndex{\@defpar,\[,\{,\},\],\count@,\ifnum,\loop} +% \DoNotIndex{\today,\uppercase,\uccode,\baselineskip} +% \DoNotIndex{\begin,\tw@,\a,\b,\c,\d,\e,\f,\g,\h,\i,\j,\k} +% \DoNotIndex{\l,\m,\n,\o,\p,\q,\r,\s,\t,\u,\v,\w,\x,\y,\z} +% \DoNotIndex{\A,\B,\C,\D,\E,\F,\G,\H,\I,\J,\K,\L,\M,\N,\O} +% \DoNotIndex{\P,\Q,\R,\S,\T,\U,\V,\W,\X,\Y,\Z,\1,\2,\3,\4} +% \DoNotIndex{\5,\6,\7,\8,\9,\0,\!,\#,\$,\&,\',\(,\)} +% \DoNotIndex{\+,\.,\:,\;,\<,\=,\>,\?,\_,\discretionary} +% \DoNotIndex{\immediate,\makeatletter,\makeatother} +% \DoNotIndex{\meaning,\newenvironment,\par,\relax} +% \DoNotIndex{\renewenvironment,\repeat,\scriptsize} +% \DoNotIndex{\selectfont,\the,\undefined,\arabic,\do} +% \DoNotIndex{\makeindex,\null,\number,\show,\write,\@ehc} +% \DoNotIndex{\@author,\@ehc,\@ifstar,\@sanitize,\@title} +% \DoNotIndex{\everypar,\if@minipage,\if@restonecol,\ifeof} +% \DoNotIndex{\ifmmode,\lccode,\newtoks,\onecolumn,\openin} +% \DoNotIndex{\p@,\SelfDocumenting,\settowidth} +% \DoNotIndex{\@resetonecoltrue,\@resetonecolfalse,\bf} +% \DoNotIndex{\clearpage,\closein,\lowercase} +% \DoNotIndex{\@inlabelfalse,\selectfont,\mathcode} +% \DoNotIndex{\newmathalphabet,\rmdefault,\bfdefault} +% \DoNotIndex{\DeclareRobustCommand} +% \DoNotIndex{\PassOptionsToPackage} +% \DoNotIndex{\MacroFont} +% \DoNotIndex{\subsubsection} % \setcounter{secnumdepth}{5} % \setcounter{tocdepth}{5} % \setcounter{IndexColumns}{2} % \setlength{\columnsep}{3pc} % -% \def\fileversion{0.77} -% \def\filedate{2013/05/28} +% \def\fileversion{1.19} +% \def\filedate{2020/05/19} % \title{The \textsf{classpack} \LaTeXe\ package\thanks{% % This document corresponds to \textsf{classpack} -% \textit{v.}\ \fileversion, dated \filedate.}\enspace\thanks{% -% Development has been supported by UCC Electronic Publishing Unit.} +% \textit{v.}\ \fileversion , dated \filedate.} % \\[1em]\Large -% XML mastering for \LaTeX{} classes and packages} +% XML mastering for \LaTeX{} classes and packages +% \\[1ex]\large +% Literate-programming solution \\for class and +% package maintenance} % \author{Peter Flynn\\\normalsize Silmaril Consultants\\[-.25ex]\normalsize Textual Therapy Division\\\normalsize(\url{peter@silmaril.ie})} % \maketitle % \renewcommand{\abstractname}{Summary}\thispagestyle{empty} @@ -264,2360 +565,533 @@ % \parskip=0.5\baselineskip % \advance\parskip by 0pt plus 2pt % \parindent=0pt% \noindent -% \LaTeX{} document classes and packages are normally -% created, maintained, and distributed in -% {\ttfamily{}.dtx} format using the -% \textsf{ltxdoc} class, which provides facilities for -% modular or fragmentary coding combined with interleaved -% documentation. However, the accurate construction of these -% files is technically challenging.\par +% \LaTeX{} document classes and packages are conventionally +% created, maintained, and distributed in Doc\TeX{} +% ({\ttfamily{}.dtx}) format using the +% \textsf{ltxdoc} class, which provides for +% interleaved code and documentation (`literate +% programming'). However, the accurate construction of +% these files is technically challenging, and editing them is +% tedious and error-prone.\par % \emph{ClassPack} allows a developer to -% create an XML document containing user documentation and -% annotated code, based on the -% \emph{DocBook} vocabulary (with some minor -% abuses). An XSLT2 script then generates the -% {\ttfamily{}.dtx} and {\ttfamily{}.ins} files, -% ensuring that all the relevant pieces are emitted in the -% correct order and in the correct syntax.\par -% This is experimental software, and is incomplete. It has -% been successfully used in-house by the author since 2008 for -% several institutional and commercial packages and classes. -% There are some known deficiencies which remain to be -% corrected, and some legacy code (originally included for one -% specific package) which needs to be removed to an external -% file.\par -% A paper describing the system has been accepted for the -% Balisage markup conference 2013 in Montréal.\par +% create a \emph{DocBook5} {\smaller XML} document for a class or package, +% containing the documentation and annotated code, and it +% provides {\smaller XSLT3} scripts to generate the +% {\ttfamily{}.dtx}, {\ttfamily{}.ins}, and +% other files, which can be combined into a zip file suitable +% for submission to {\smaller CTAN}.\par +% \emph{This package \textsf{classpack} +% contains the small typographic adjustments and utilities +% needed to re-typeset the documentation of classes and +% packages developed using \textsf{classpack-dev}. +% It is not used for any other purpose and is not required for +% using any other class or package, only for the documentation +% of \emph{ClassPack}–developed classes +% and packages.}\par +% \textbf{You do not need to install the +% upcoming development package \textsf{classpack-dev} +% unless you want to develop classes or packages by using +% \emph{ClassPack} +% yourself.}\par +% \emph{ClassPack} is a +% work-in-progress. A paper describing an earlier version was +% presented at the Balisage markup conference in Montréal +% \parencite{flynn2013}.\par % \end{abstract} % \clearpage % \tableofcontents % \clearpage -% \section{Introduction} -% \LaTeX{} document classes (templates) and packages (styles) -% are traditionally distributed as pairs of -% {\ttfamily{}.dtx} and{\ttfamily{}.ins} files, -% written to the specifications and recommendations of the -% \textsf{doc}, \textsf{ltxdoc}, and -% \textsf{clsguide} packages.\par -% \begin{itemize} -% \item The {\ttfamily{}.dtx} (Doc\TeX{}) file is a -% literate-programming document, containing modular code and -% annotations interleaved in such a way that each fragment -% of code and its explanation are adjacent; -% \item The {\ttfamily{}.ins} file is an installer: -% when run through \LaTeX{}, it extracts the code from the -% {\ttfamily{}.dtx} file into the relevant class -% ({\ttfamily{}.cls}), package -% ({\ttfamily{}.sty}), and other files; -% \item Running \LaTeX{} on the {\ttfamily{}.dtx} file -% itself extracts and typesets the documentation. -% \end{itemize} -% The construction of a {\ttfamily{}.dtx} document -% is quite complex, with a special set of tags and conventions -% to allow documentation to be separately identifiable to code. -% The file format relies on the documentation being shielded by -% a leading percent-space (\verb|%␣|) armour -% on each line to prevent it being interpreted as part of the -% code; and the environment tags surrounding the code itself -% must be shielded by four such spaces -% (\verb|%␣␣␣␣|). Apart from the -% documentation, the treatment of the code and control -% statements resembles more a data specification (which in some -% ways it is) than a conventional text document.\par -% XML, particularly in its traditional -% `document' mode, as distinct from its -% use as a data exchange format, offers many similar features to -% \LaTeX{} (for example, the named identification of document -% components), but with a rigid and invariable syntax that can -% be checked programmatically by any validating XML processor. -% By contrast, a \LaTeX{} document (and more specifically, a -% {\ttfamily{}.dtx} document) can only be proved by -% running it through \LaTeX{} itself: there is no equivalent to -% the `pre-flight' type of standalone parsing or -% validating available with XML.\par -% The \emph{DocBook} vocabulary of XML -% is designed for technical documentation in computing. It -% provides markup both for textual documentation -% \emph{and} for data-like structures that occur -% in computer documentation, making it a viable candidate for -% describing a literate-programming type of document such as -% Doc\TeX{}.\par -% The \emph{ClassPack} system is an -% experiment in using \emph{DocBook} XML as -% the storage format for \LaTeX{} class and package source code, -% using the XLST2 language to transform the XML into pairs of -% {\ttfamily{}.dtx} and {\ttfamily{}.ins} files. -% There are a number of advantages to this approach:\par +% \section*{Latest changes} +% \subsection*{v.1.19 (2020-05-19)} % \begin{itemize} -% \item XML's syntax and document construction is extremely -% robust, and the design of the language means that an XML -% file can be machine-checked for errors of syntax and -% construction; -% \item XML markup is traditionally self-descriptive, with -% element types being named according to what they are -% intended to contain. For example, a variable name can be -% marked up as -% \verb|foo|.\par -% While it is perfectly possible to create a -% {\ttfamily{}\textbackslash{}varname} control sequence (macro) to do -% the same in \LaTeX{}, it is rarely done. Instead, authors -% have typically preferred to use visual formatting like -% \verb|\textit{foo}| for italics or -% \verb|\verb+foo+| for monospace type. -% This method means the variable reference is not -% immediately identifiable as containing a variable -% name~--- it could be anything; -% \item Given suitably-descriptive markup, sharing document -% fragments between applications can be done -% programmatically, so a fragment implementing a \LaTeX{} -% feature (with its associated documentation) can be re-used -% in other class and package applications at the XML level -% (eg with XInclude, or as an external entity) without the -% need for manual cutting and pasting; -% \item \label{xmltools}There is a very wide range of software (editors and -% processors, both free and non-free) available to handle -% XML documents, including a lot of useful tools for -% document management and information extraction. +% \item Prefixed local variables with CPK\par +% \item CTAN candidate\par % \end{itemize} -% Everything comes at a cost. The drawbacks of using XML for -% this include:\par +% \subsection*{v.1.18 (2020-04-01)} % \begin{itemize} -% \item It's another language to learn. Despite being so -% widespread, it's not yet a common skill. In particular, -% programmers dislike XML because it's a markup language, -% not a programming language, and the syntax is different -% from that of programming languages; -% \item Although there is plenty of software for editing XML, -% it is not well-developed for text documents in synchronous -% typographic form (often called -% `WYSIWYG'); even the best or most -% expensive editors are designed for XML experts, not for -% the average user. +% \item Split project into \textsf{classpack} +% and \textsf{classpack-dev}\par +% \item Replaced \texttt{@conformance} +% with \texttt{@YYYY-MM-DD} on all +% \texttt{date} elements in the revision history. This +% meant a complete regression run after editing all +% source masters to use this change\par +% \item Fixed bug in makechapapp where it failed to add +% the filetype before substringing the full name of the +% document\par % \end{itemize} -% \subsection{Contents} -% The \emph{ClassPack} framework is -% enabled by two principal software components:\par -% \begin{enumerate} -% \item An XML vocabulary (the -% \emph{DocBook}~{\small DTD}\index{DTD} -% or Schema) used for naming the component parts of -% documentation and code, and specifying where they belong -% and how they fit together; -% \item An XSLT2 script to implement the logic of -% combination and separation needed to create the -% {\ttfamily{}.dtx} and {\ttfamily{}.ins} -% files. -% \end{enumerate} -% The XML vocabulary used is -% \emph{DocBook}, which is in widespread -% use for the documentation of computer systems, and is -% well-supported on all platforms. The current system uses -% version 5. Although it is highly modular and easily adapted -% for many purposes, only a few minor changes have been made -% for its use here, but a number of element types have been -% put to uses not envisaged by the developers.\par -% This habit of using (some say, abusing) XML markup for -% different purposes is very common, and often deprecated -% because it is usually undocumented. This document explains -% what has been [ab]used and for what reasons. Once this -% system settles down, a more formal expression of the -% vocabulary can be made from the RNG source, removing the -% parts that are not required, and making it simpler to edit -% with.\par -% The adaptation of \emph{DocBook} in -% this version subsists mainly in the addition of some -% attributes and entity declarations to allow the conversion -% to \LaTeX{} of special characters and other features that -% would otherwise involve extensive re-parsing of the -% character data content (text). The changes also implement a -% few modifications to the way the \LaTeX{} code is output by -% the XSLT2 program for typographical purposes.\par -% As an example, the entity defining the em rule character -% \texttt{\—} is declared as a \LaTeX{} -% tie (non-breaking space) followed by an em rule followed by -% a normal space (\verb|~---␣|), so that it -% can be used between words~--- like this~--- without the -% need to worry about special spacing in the XML, or the -% inadvertent breaking of a line before the rule:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language=XML] -can be used between words—like this—without the -\end{lstlisting} -% \iffalse -% -% \fi -% If a -% document style requires the use of unspaced dashes, all that -% needs changing is the entity declaration, not the whole -% document.\par -% The current driver in Document Type -% Definition~(\textsc{dtd})\index{Document Type Definition|see{DTD}}\index{DTD|textbf} format is listed in \vref{savedtd}, and is distributed as file -% {\ttfamily{}doctexbook.dtd} so that it can be -% referenced as such in a document without having to copy and -% paste the declarations into every document.\par -% \subsection{Invocation}\label{invocation} -% To create or edit a \emph{ClassPack} -% XML document you must have the -% \emph{ClassPack} DTD -% \emph{and} the DocBook DTD installed and known -% to your XML editor. The DTD customisation file, -% {\ttfamily{}docbooktex.dtd} is distributed with this -% package; an RNG schema version will be available in the -% future.\par -% With the DTD, the standard procedure is to specify it in -% the first line of your XML document. Your class or package -% documents must therefore start with a Document Type -% Declaration. This can specify the Formal -% Public Identifier~(\textsc{fpi})\index{Formal Public Identifier|see{FPI}}\index{FPI|textbf} and the filename of the -% DTD:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language=XML] - - -\end{lstlisting} -% \iffalse -% -% \fi -% or -% you can omit the {\small FPI}\index{FPI} and specify the DTD as a \texttt{SYSTEM} keyword instead:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language=XML] - - -\end{lstlisting} -% \iffalse -% -% \fi -% The DTD file {\ttfamily{}doctexbook.dtd} can be -% anywhere on your system: in these examples it is assumed to -% be in the same directory as your document. If you store it -% elsewhere, just give the full filepath, for example:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language=XML] - - -\end{lstlisting} -% \iffalse -% -% \fi -% When you open a document starting like this, a -% conformant XML editor will look for -% {\ttfamily{}doctexbook.dtd} and read it, so that it -% then knows the names of all the element types that you can -% use, and how they fit together into a document.\par -% \subsection{Document structure} -% Every XML document must have one outermost enclosing -% element (the `root' element) which -% holds everything else. The root element type used in a -% ClassPack document is \texttt{book}, as described in -% detail in \vref{setup}.\par -% Within the \texttt{book} element, the -% \emph{metadata} (information about the -% document) is held in an \texttt{info} element, the -% \emph{user documentation} in a \texttt{part} -% element with the ID of \texttt{doc}, and the -% \emph{annotated code} in a second -% \texttt{part} element, with the ID of -% \texttt{code}.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - - - ... - ... - ... - ... - -\end{lstlisting} -% \iffalse -% -% \fi -% An optional third \texttt{part} with the ID of -% \texttt{files} can be used to include ancillary files that -% are to be recreated as-is, without separate annotation or -% display, such as sample data or example documents (see \vref{ancfiles}).\par -% Ancillary files that require annotating must go in the -% \texttt{code} part as described in -% \vref{secfiles}.\par -% \subsubsection{User documentation} -% The documentation for the end user is descriptive text -% which explains how to use the package or class. The main -% division within a ClassPack \texttt{part} is the -% \texttt{chapter}, which can contain \texttt{sect1} -% sections, which can contain \texttt{sect2} subsections, -% and so on, as described in -% \vref{hierarchy}. User documentation must go in -% a \texttt{chapter} and its sub-elements: it must not be -% directly in the \texttt{part}.\par -% (Because the \textsf{latexdoc} package is -% based on the \textsf{article} package, the -% ClassPack \texttt{chapter}\thinspace{}s become -% \textsf{latexdoc}~{\ttfamily{}\textbackslash{}section}s; -% the ClassPack \texttt{sect1}\thinspace{}s become -% \textsf{latexdoc}~{\ttfamily{}\textbackslash{}subsection}s, -% and so on.)\par -% \paragraph{Structure} -% Your document can use most of the conventional -% structural features of any DocBook document: paragraphs, -% lists, figures, tables, and examples of code (both -% illustrative and for extraction) as described in \vref{pool}. Most of the specialist constructs of -% DocBook are not implemented in ClassPack except for a -% few used in the \texttt{info} section for setup -% purposes. You should refer to the list of markup in -% \vref{pool} for exactly which element types -% do what.\par -% \paragraph{Inline markup} -% Within the text you can use much of the conventional -% semantic markup provided in -% \emph{DocBook} as described in \vref{flow}.\par -% \subsubsection{Annotated code} -% In the \texttt{code} Part, you annotate the inner -% workings of your package or class. The use of the -% \texttt{chapter} and \texttt{sect1} divisional -% structure is also mandated here: everything within the -% chapters is regarded as the package or class.\par -% Your code can be explained in fragments, either as -% alternating \texttt{para} and \texttt{programlisting} -% elements, or as \texttt{annotation} elements, each one -% describing a single macro or environment or other object, -% and containing \texttt{para} and -% \texttt{programlisting} (this makes it indexable). See -% the examples in \vref{pool}.\par -% \subsubsection{Ancillary files}\label{ancfiles} -% There are two types of extractable ancillary -% file:\par -% \begin{itemize} -% \item Ancillary files to be annotated and extracted -% along with the class or package file must each go in -% their own \texttt{appendix} element immediately -% after the last of the \texttt{chapter} element of -% the package or class in the \texttt{code} -% Part -% \item Ancillary files which just need to be extracted -% whole, and do not have any separate documentation must -% go in the \texttt{files} Part as described in \vref{ancfiles}. -% \end{itemize} -% \subsection{Tooling up} -% You need the following tools:\par -% \begin{itemize} -% \item an XML editor: I use -% \emph{Emacs} with -% \emph{psgml-mode} and -% \emph{xxml-mode}, but any competent -% XML editor will do -% \item an XSLT2 processor: I use -% \emph{Saxon} (this also means I -% installed \emph{Java}) -% \item a full installation of \LaTeX{} -% \item a PDF reader -% \item XML tools: I find the -% \emph{LTxml2} toolkit from Edinburgh -% University invaluable for ad-hoc querying of -% documents. -% \end{itemize} -% \clearpage -% \section{Setting up a ClassPack document} -% Using \emph{ClassPack} to create and -% maintain \LaTeX{} classes and packages requires the following -% initial steps. These are only done once, at the start of a new -% class or package. A few items need periodic updating, such as -% the version number, when it changes; the revision history; and -% the list of packages, as and when needed.\par -% \begin{enumerate} -% \item setting up the configuration (see \vref{setup}) -% to specify the name, date, version, type, audience, status, -% and other key metadata; -% \item setting up the documentary metadata (see \vref{metadata}) such as the title, author, contact -% details, abstract, and the initial entry in the revision -% history; -% \item setting up the list of packages (see \vref{constraints}) required for -% \begin{enumerate*}[label=\emph{\alph*})] -% \item the documentation (see \vref{docpax}) -% and -% \item the class or package itself (see \vref{classtypax}) -% \end{enumerate*}, plus any additional initialization -% commands needed for the documentation. -% \end{enumerate} -% \emph{Note particularly that the list of packages -% required by the class or package itself is -% \emph{not} stored inline to the code of the -% class or package. It is stored separately for reasons that -% are explained in detail in \vref{constraints}.}\par -% \subsection{Configuration and setup}\label{setup} -% The \texttt{book} element is the outermost container -% for the document. It is used to carry the configuration -% information in attributes, for example:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - -\end{lstlisting} -% \iffalse -% -% \fi -% \begin{description}[style=unboxed] -% \item[\texttt{xml:id}\thinspace:]\label{rootid}This \textsc{must} be the -% name of the class or package. It will be used as the -% \LaTeX{} filename (with {\ttfamily{}.cls} or -% {\ttfamily{}.sty} and -% {\ttfamily{}.ins} added automatically), so it -% \textsc{should} be all lowercase -% and \textsc{must} consist of -% letters, digits, and hyphens only, starting with a -% letter.\par -% The XML rules for IDs require this restriction, -% which currently makes it impossible to use ClassPack -% to maintain a class or packages whose name begins with -% a digit. -% \item[\texttt{arch}\thinspace:]\label{arch}The `architecture' of the -% document, which defines the type of file you are going -% to produce; this must be either \texttt{"class"} or \texttt{"package"}, corresponding -% exactly with the value of the \texttt{userlevel} -% attribute below. -% \item[\texttt{userlevel}\thinspace:]\label{userlevel}The file type of the class or package document; -% this must be either {\ttfamily{}cls} or -% {\ttfamily{}sty}, corresponding -% exactly with the value of the \texttt{arch} -% attribute above. -% \item[\texttt{version}\thinspace:]The major version of the class or package. -% Conventionally, development (α) or pre-release -% (β) versions of software start at version -% zero. -% \item[\texttt{revision}\thinspace:]\label{revno}The sub-version or release of your class or -% package. This is combined with the major version -% number, separated by a dot, to produce the complete -% version number.\par -% The most recent revision history entry gets tested -% against this when the file is processed, and an error -% message is displayed if the version numbers do not -% match, as a warning that you have updated one without -% updating the other, and may therefore have forgotten -% to document a change (see the \texttt{revision} -% element in -% `\textbf{\texttt{revhistory}}', the last item in the list in \vref{revhist}). -% \item[\texttt{status}\thinspace:]The development status of the class or package, eg -% \texttt{"alpha"}, \texttt{"beta"}, \texttt{"candidate"}, \texttt{"draft"}, \texttt{"final"}, etc. -% \item[\texttt{conformance}\thinspace:]The \TeX{} format required to process the -% {\ttfamily{}.dtx} document. Only the value -% \texttt{"LaTeX2e"} is supported at -% the moment. -% \item[\texttt{condition}\thinspace:]The version of the format identified in \texttt{conformance}, expressed as an -% ISO date (\texttt{"yyyy-mm-dd"}).\par -% Note that this is \emph{not} in the -% \LaTeX{} format -% ({\ttfamily{}yyyy/mm/dd}). -% \item[\texttt{os}\thinspace:]The operating system[s] for which the class or -% package is relevant. Currently, only the value \texttt{"all"} is supported. -% \item[\texttt{audience}\thinspace:]The licence under which the class or package is -% made available. For normal publicly-available \LaTeX{} -% classes or packages which will be uploaded to CTAN, -% use the value \texttt{"lppl"} -% (\LaTeX{} Project Public Licence).\par -% A copy of the LPPL is distributed with ClassPack -% in a file called {\ttfamily{}lppl.xml}, which -% must be copied or soft-linked (aliased) to each -% directory in which you process ClassPack -% documents.\par -% Classes or packages for private or commercial use -% will probably need to use another value, but it is -% used as a filename, so a {\ttfamily{}.xml} -% file with that name must exist in the directory in -% which your ClassPack document is processed. It must -% contain a -% \emph{DocBook}~\texttt{chapter} -% element containing the text of the licence, which will -% be included at the end of the documentation. -% \item[\texttt{security}\thinspace:]The checksum value emitted by -% \textsf{ltxdoc} when it processes your class -% or package to format your documentation. See the -% documentation for the \textsf{ltxdoc} package for details.\par -% Setting this to zero avoids the \LaTeX{} error -% message during early development, when every edit -% would change the checksum. As with the version values, -% you must update this value, if non-zero, to match the -% one that \textsf{ltxdoc} reports. -% \item[\texttt{vendor}\thinspace:]Your name, or the name of the organisation -% responsible for the work on this class or package. -% \item[\texttt{remap}\thinspace:]Any options to pass to the -% \textsf{ltxdoc} package, such as -% \textbf{\texttt{a4paper}}, \textbf{\texttt{12pt}}, -% etc.\par -% This, and the following \texttt{annotations} -% attribute, make it easier to change the global -% formatting of the documentation. -% \item[\texttt{annotations}\thinspace:]Any \LaTeX{} commands required for global -% application at the start of the documentation that -% cannot easily be included anywhere else (eg -% {\ttfamily{}\textbackslash{}raggedright}, -% {\ttfamily{}\textbackslash{}sffamily}, etc). -% \item[\texttt{xml:base}\thinspace:]The name of the \emph{subdirectory} -% where the resulting {\ttfamily{}.cls} or -% {\ttfamily{}.sty} file should be installed in -% a TDS-compliant \TeX{} installation, relative to the -% {\ttfamily{}texmf/tex/latex} directory of the -% tree. For most packages, this means the name of the -% directory you want created by the installation -% {\ttfamily{}.tds.zip} file, in which the -% {\ttfamily{}.cls} or {\ttfamily{}.sty} -% file will be put. -% \item[\texttt{xlink:role}\thinspace:]\label{selfspec}\textsc{Optional}. If this -% is set to a value, then the package being written will -% be included in the setup for the documentation -% (perhaps so that it can be used in examples), with the -% value of this attribute being used as the optional -% argument to the generated -% {\ttfamily{}\textbackslash{}usepackage} command.\par -% If the package is required with no options, use -% this attribute but set it to null (\texttt{""}). The date constraint is -% added automatically, using the current package date as -% defined by the most recent entry in the -% \texttt{revhistory}.\par -% Note that this only works for packages, not -% classes. Classes cannot not be documented using -% themselves. -% \end{description} -% It is essential to get these values correct, otherwise -% subsequent processing will produce unexpected -% results, or no results at all.\par -% \subsection{Metadata}\label{metadata} -% The titling, specification of packages (separately for -% the documentation and for the class or package itself), -% revision history, abstract, copyright, and availability are -% all kept at the top of the document in an element called -% \texttt{info}, immediately after the \texttt{book} start-tag:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - ... - - XML mastering for &LaTeX; document classes... - <author>... - <copyright>... - <releaseinfo>http://latex.silmaril.ie/software</releaseinfo> - <annotation>... - <abstract>... - <revhistory>... -</info> -\end{lstlisting} -% \iffalse -%</ignore> -% \fi -% Of these, the \texttt{cover} element is the most -% complex, as it is [ab]used to hold all the details of -% packages and settings required for the class or package -% \emph{and} for the production of the -% documentation. It therefore gets the whole of -% \vref{constraints} to itself.\par -% The other metadata element types are more obvious, and -% largely use the \emph{DocBook} markup as -% intended.\par -% \begin{description}[style=unboxed] -% \item[\texttt{title}\thinspace:]This contains the title of the class or package in -% natural language. This is \emph{not} the -% content of the {\ttfamily{}\textbackslash{}title} command in -% \LaTeX{} terms, in the {\ttfamily{}.dtx} file, -% which is automatically preset to the phrase -% `The \textsf{{\itshape name}} -% \LaTeXe{} document class' (or -% `package'; where -% {\itshape name} is the name of your -% class or package as specified in the \texttt{xml:id} attribute of the -% \texttt{book} root element).\par -% The title you give in -% \emph{this}~\texttt{title} -% element is the explanatory subtitle which appears -% \emph{under} the automatically-generated -% one on the first page of the typeset -% documentation. -% \item[\texttt{author}\thinspace:]The \texttt{author} element provides identity -% markup for the author[s], using a -% \texttt{personname} element for each author, -% containing subelements for firstname, surname, and -% other forms of naming; optionally followed by an -% \texttt{affiliation} element, where you can identify -% employer or other status; address; email; and URI, as -% in the following example. The name, affiliation, and -% email address are used in the -% {\ttfamily{}\textbackslash{}author} command of the -% {\ttfamily{}.dtx} file.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] -<author role="maintainer"> - <personname> - <firstname>Peter</firstname> - <surname>Flynn</surname> - </personname> - <affiliation> - <orgname>Silmaril Consultants</orgname> - <orgdiv>Textual Therapy Division</orgdiv> - </affiliation> - <address>Cork, Ireland</address> - <email>peter@silmaril.ie</email> - <uri>http://blogs.silmaril.ie/peter</uri> - <contrib role="sponsor">UCC</contrib> -</author> -\end{lstlisting} -% \iffalse -%</ignore> -% \fi -% For multiple authors, you must enclose multiple -% \texttt{author} elements (one per author) in an -% outer \texttt{authorgroup} container element. One of -% the authors must be identified as the maintainer of -% the package or class, by adding the \texttt{role} -% attribute with the value -% {\ttfamily{}maintainer}.\par -% A \texttt{contrib} element with a \texttt{role} attribute set to \texttt{"sponsor"} can be added in an -% \texttt{author} block, to give the -% name of an organisation sponsoring the development of -% the class or package. -% \item[\texttt{copyright}\thinspace:]This element lets you identify the \texttt{year} -% and the name of the \texttt{holder} (you, your -% employer, or some other entity). -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] -<copyright> - <year>2012</year> - <holder>Silmaril Consultants</holder> -</copyright> -\end{lstlisting} -% \iffalse -%</ignore> -% \fi -% \item[\texttt{releaseinfo}\thinspace:]In the absence of other ways of identifying where -% to find your class or package (assuming it will -% eventually find its way onto CTAN), this element can -% be used to hold the URI of a location where it can be -% downloaded, such as your personal or business web -% site. -% \item[\texttt{annotation}\thinspace:]This element is used for a warning or notice you -% want placed in the Preamble of the -% {\ttfamily{}.ins} file, which is used for -% extracting your class or package from the -% {\ttfamily{}.dtx} file, where it will be seen -% by users installing the software. -% \item[\texttt{abstract}\thinspace:]The Abstract is formatted on the front page of -% your documentation. Like any abstract, it should -% summarise what the class or package does, and who might -% want to use it.\par -% The \texttt{abstract} element may start with an -% optional \texttt{title} element, which (if present) -% will be used to change the value of the -% {\ttfamily{}\textbackslash{}abstractname} in the -% {\ttfamily{}.dtx} file -% (`Summary' is a common -% choice).\par -% The rest of the abstract is just paragraphs; note -% that lists, block quotations, figures, tables, etc are -% not allowed in an Abstract. -% \item[\texttt{revhistory}\thinspace:]\label{revhist}This holds the top-level information about each -% major and minor revision, outlining the main changes. -% The version number of the most recent revision, as -% identified by the latest value of the \texttt{conformance} attribute of the -% \texttt{date} element, must match the version number -% composed from the major version and the revision in -% the \texttt{book} root element (see `\textbf{\texttt{revision}}', the \ordinalstringnum{5} item in the list in \vref{revno}).\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] -<revision version="0.72"> - <date conformance="2012-02-11"/> - <revdescription> - <itemizedlist> - <title>Wrote internal documentation - - Created the classpack.xml template - as an example. - - - - -\end{lstlisting} -% \iffalse -% -% \fi -% Comments on individual changes to the code should -% be documented \emph{at the code -% location}, using the \texttt{remark} -% element (see \vref{maintenance}), eg\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] -Added - timestamp -\end{lstlisting} -% \iffalse -% -% \fi -% These \texttt{remark} elements get collated as -% {\ttfamily{}\textbackslash{}changes} commands, and gathered -% together in the changelog by \textsf{ltxdoc} -% during processing. -% \end{description} -% \subsection{Packages and related commands}\label{constraints} -% As mentioned above, the \texttt{cover} element is used -% to provide a place where packages and other \LaTeX{} -% preliminaries can be specified. Using this structure means -% each entry is separately editable, and the same structure is -% used both for packages for the documentation -% \emph{and} packages for the class or package -% itself.\par -% It would of course have been possible just to allow a -% slab of \LaTeX{} code at these points, but that would have made -% commenting and documentation harder, and would also have -% made it more difficult to perform an XML -% element-copy--element-paste or an XInclude when using -% one package or class's settings as the basis for another.\par -% The most important reason is that specifying package -% lists as separately-identifiable blocks makes it possible to -% automate the invocation of frequently-used packages, -% parameters, options, or settings which you may store -% separately for re-use (see \vref{autospec}) by -% adding your own modifications that you like to have included -% whenever you use a particular package.\par -% In particular, the -% \emph{autopackage} feature added to -% ClassPack in v0.74 means that most packages needed for -% documentation are now detected automatically on the basis of -% features you use in your documentation, making it -% unnecessary to specify them by hand. For example, if you use -% compact lists, ClassPack will detect this and add the -% \textsf{enumitem} package for you.\par -% The XSLT2 program also uses this markup in order to -% modify the behaviour of the \LaTeX{} code at several points -% (such as fixing the broken abstract formatting when the -% \textsf{parskip} package is used).\par -% There are at least two, possibly four, sections in the -% \texttt{cover} element where the packages, commands, and -% other data can be defined:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - ...packages for the user documentation are defined here... - - - - ...special commands for the user documentation go here... - - - - ...packages needed for the class or package are defined here... - - - - ...files to add to the MANIFEST/zip file are listed here... - -\end{lstlisting} -% \iffalse -% -% \fi -% These exact \texttt{xml:id} values -% are mandatory when the relevant \texttt{constraintdef} -% elements are used, as they are referenced from elsewhere in -% the document by the XSLT2 program. The only variation is -% that when writing a package ({\ttfamily{}.sty} -% file), the \texttt{"clspackages"} must read -% \texttt{"stypackages"} instead. The first -% three letters are used to match the three-letter filetype -% used as the value of the \texttt{arch} -% attribute that you specified on the \texttt{book} root -% element (see `\textbf{\texttt{arch}}', the \ordinalstringnum{2} item in the list in \vref{arch}).\par -% Each \texttt{constraintdef} element can -% hold one or (in some circumstances, more) of the following -% element types:\par +% \subsection*{v.1.17 (2020-03-19)} % \begin{itemize} -% \item \texttt{segmentedlist} (in a -% \texttt{docpackages}, \texttt{clspackages}, or -% \texttt{stypackages} type of \texttt{constraintdef}\emph{only}), a list structure used to -% specify the packages required: see \vref{packspec}; -% \item \label{cmdsynopsis}\texttt{cmdsynopsis}, used for defining -% \emph{user documentation} setup commands -% to be placed \emph{in} the Preamble. This -% is only meaningful in the \texttt{"docpackages"} type of -% \texttt{constraintdef}: see \vref{cmdspec}; -% \item \texttt{procedure}, used for holding blocks of -% \emph{user documentation} setup commands -% to be placed \emph{after} the Preamble -% (that is, at the start of the document body, after the -% \verb|\begin{document}| command). This is -% only meaningful in the \texttt{"docpackages"} type of -% \texttt{constraintdef}.\par -% Note that this is distinct from commands to be -% placed \emph{in} the Preamble, which are -% held in a more structured manner in the -% \texttt{cmdsynopsis} element deacribed above: see -% \vref{addcmds}; -% \item \texttt{simplelist}, a list whose -% \texttt{member} elements are used to name additional -% files to be included in the distribution zip file -% ({\ttfamily{}MANIFEST}). This is only meaningful -% in a \texttt{manifest} type of -% \texttt{constraintdef}: see -% \vref{manifestfiles}. +% \item Documentation nearly finished\par +% \item Added remaining XSLT files and scripts\par +% \item Recoded the distinction between appendixes in the +% code part and chapters in the files part.\par % \end{itemize} -% \subsubsection{Specifying packages}\label{packspec} -% There are three parts to using -% \texttt{constraintdef} for this:\par -% \begin{enumerate}[noitemsep] -% \item specifying packages for your user documentation (see -% \vref{docpax}); -% \item specifying packages for the class or package you -% are writing (see \vref{classtypax}); -% \item automating the inclusion of extra settings to be -% used whenever you specify a particular package (see -% \vref{autospec}). -% \end{enumerate} -% For the first two, the \texttt{segmentedlist} -% element is used. This contains a sequence of -% \texttt{seglistitem}\thinspace{}s, one per package, each containing a -% \texttt{seg} element holding the package name. An -% optional \texttt{segtitle} element may start the list, -% and if present, is used as a comment (for the -% documentation packages) or a subheading (class or package -% packages).\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - Packages required for documentation - - charter - - - helvet - - ... - -\end{lstlisting} -% \iffalse -% -% \fi -% Each \texttt{seglistitem} provides for -% a documentary comment about why this package is required, -% using the \texttt{role} -% attribute. In the case of the packages for your own class -% or package, this comment is reproduced in the -% documentation of the code.\par -% The package itself is specified as the content of the -% \texttt{seg} element in each item.\par -% Any options for the package being loaded must be -% supplied in the \texttt{role} attribute -% of the \texttt{seg} element. If the -% package must conform to a specific version, the date must -% be provided (in ISO format) in the \texttt{version} attribute.\par -% \paragraph{Declaring packages needed for your documentation}\label{docpax} -% Packages required for your documentation must be -% included in the type of list described above, in the -% \texttt{constraintdef} element that has the \texttt{xml:id} value of \texttt{"docpackages"}. Note that some -% packages are automatically when certain types of -% formatting are implied: see \vref{autopackage} for details.\par -% The relevant {\ttfamily{}\textbackslash{}usepackage} commands -% get included in the {\ttfamily{}.dtx} file right -% after the \verb|\begin{document}| -% command.\par -% If you also want the package you are maintaining to -% be included in the documentation (perhaps so you can use -% it for examples), remember to set the \texttt{xlink:role} attribute on the -% \texttt{book} root element as described in `\textbf{\texttt{xlink:role}}', the last item in the list in \vref{selfspec}.\par -% See \vref{autospec} for details of how to -% specify package command settings that you want included -% by default every time you specify a particular -% package.\par -% \paragraph{Declaring packages needed by the class or package -% itself}\label{classtypax} -% All the packages required for the class or package -% being written must be included in the type of list -% described above, in the \texttt{constraintdef} element -% that has the \texttt{xml:id} value -% of \texttt{"clspackages"} (for classes) -% or \texttt{"stypackages"} (for -% packages).\par -% \subparagraph{Specifying where in the {\ttfamily{}.dtx} -% file to output them\thinspace:} -% Because your class or package design may include -% preliminary commands needed before packages are -% included, the relevant {\ttfamily{}\textbackslash{}RequirePackage} -% commands must be added to the {\ttfamily{}.dtx} -% file \emph{in a location that you must specify -% yourself}. This is done by giving the \texttt{linkend} attribute on the -% enclosing \texttt{constraintdef} element the value -% of an \texttt{xml:id} which you -% have assigned to a chapter or section in your -% annotated code.\par -% \emph{There is no default: you must specify -% this link yourself, otherwise the list of required -% packages will not be output.}\par -% The reason is that you may need to write some of -% your class or package code (option declarations, for -% example, or a {\ttfamily{}\textbackslash{}LoadPackage} command), -% \emph{before} the specified packages are -% loaded.\par +% \subsection*{v.1.16 (2019-10-20)} % \begin{itemize} -% \item If the chapter or section you have specified -% has content (text) in it, the -% {\ttfamily{}\textbackslash{}RequirePackage} commands are -% output as the content of a new chapter or section -% immediately preceding or following it, as -% specified by the value of the \texttt{role} -% attribute (`before' or -% `after'). -% \item If the chapter or section you have specified -% is (deliberately) empty, the -% {\ttfamily{}\textbackslash{}RequirePackage} commands are -% output as the content of that chapter or -% section. +% \item Documentation ongoing\par +% \item Added detection of options on url and xcolor\par +% \item Changed order of packages in +% {\ttfamily{}prepost.xml} to prevent option +% clashes\par % \end{itemize} -% As an example, let us say you specify the -% \texttt{constraintdef} with\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] -... -\end{lstlisting} -% \iffalse -% -% \fi -% You must then have a chapter or section in your -% documented code with the \texttt{xml:id} value of \texttt{"options"}. If -% it is empty (no character data content) like this:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - - <para/> -</sect1> -\end{lstlisting} -% \iffalse -%</ignore> -% \fi -% then the list of {\ttfamily{}\textbackslash{}RequirePackage} commands will -% be output in its place.\par -% If, on the other hand, the specified section -% has text and code of its own:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] -<sect1 xml:id="options"> - <title>Options - text... - -\some{code} - - -\end{lstlisting} -% \iffalse -% -% \fi -% then the list of {\ttfamily{}\textbackslash{}RequirePackage} -% commands will be output immediately after it, as a new -% section at the same level.\par -% In both cases, the \texttt{segtitle} of the -% \texttt{segmentedlist} will be used as the title of -% the section.\par -% \subsubsection{Automated settings for declared packages}\label{autospec} -% There are several reasons for automating package setup:\par -% \begin{itemize} -% \item Many \LaTeX{} authors and designers have -% `favourite' settings that they -% like to use every time they specify a particular -% package. -% \item Some options have now become the \emph{de -% facto} convention for their package, -% (for example, the \textbf{\texttt{T1}} option on the -% \textsf{fontenc} package). -% \item There are commands that need to be used whenever a -% particular package is invoked (for example, the -% \textsf{makeidx} package means you need to -% add the {\ttfamily{}\textbackslash{}makeindex} command to the -% Preamble). -% \item Some packages are only needed in the documentation -% if a particular formatting feature is used (for -% example compact list spacing requires the -% \textsf{enumitem} package). This avoids you -% having to remember to include a specific package when -% you use such a feature; and to remove it if you cease -% to use the feature. -% \end{itemize} -% To help automate these, an ancillary (lookup) file -% called {\ttfamily{}prepost.xml} is used, which -% is a \emph{DocBook} document with a -% \texttt{refsection} root element type containing two -% \texttt{procedure} elements, shown below.\par -% The {\ttfamily{}prepost.xml} file must be in -% the directory specified by your setting of the -% {\ttfamily{}repo} runtime parameter.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - Commands to use before and after packages - - ...steps... - - - ...steps... - - -\end{lstlisting} -% \iffalse -% -% \fi -% The \texttt{"prepackage"} procedure -% is for material which needs to go -% \emph{before} a package is invoked. The \texttt{"postpackage"} procedure is for -% material which needs to go \emph{after} a -% package is invoked.\par -% \paragraph{Identifying each package} -% Within these procedures, each package is identified in -% a \texttt{step} element.\par -% \begin{itemize}[noitemsep] -% \item the \texttt{remap} attribute -% holds the package name; -% \item the \texttt{condition} -% attribute holds the type[s] of output it is intended -% to be effective for, \texttt{"doc"}, \texttt{"cls"}, or \texttt{"sty"} (space-separated if -% more than one); -% \item the \texttt{role} attribute -% holds any default options (comma-separated); -% \item an optional \texttt{para} element holds a -% textual description of the package and its use. This -% is only meaningful for packages marked in the \texttt{condition} attribute for -% use in the class or package. If present, this gets -% output to the code documentation. -% \end{itemize} -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - UTF-8 is the default character set, to allow for use of - any character in any writing system. Some characters - are not specified for all fonts, so may have to be - specified manually. - -\end{lstlisting} -% \iffalse -% -% \fi -% In this example, specifying -% \textsf{inputenc} in the document, in a -% \texttt{seg} element as described in \vref{packspec}, results in the package being -% added with {\ttfamily{}\textbackslash{}RequirePackage} to the -% class or package code.\par -% \paragraph{Automating inclusion}\label{autopackage} -% Each \texttt{step} may contain one -% or more \texttt{constructorsynopsis} elements which -% specify the condition[s] under which the package will -% automatically be included \emph{without it needing -% to be specified} in a \texttt{seg} element -% as described in \vref{packspec}\par -% \begin{itemize}[noitemsep] -% \item the \texttt{condition} -% attribute holds the name of an element type which, -% if present in the documentation, will cause the -% package to be included automatically; -% \item one or more \texttt{methodparam} subelements -% can be used to specify attribute conditions on the -% element type named in the \texttt{condition} -% attribute: -% \begin{itemize}[noitemsep] -% \item the \texttt{parameter} element specifies -% the name of an attribute. If no -% \texttt{modifier} element is present, the -% specified attribute is simply tested for -% presence (Boolean test) -% \item a -% \texttt{modifier} element is used to -% specify a value for which the attribute is tested -% \end{itemize} -% \end{itemize} -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - - - align - char - - - -\end{lstlisting} -% \iffalse -% -% \fi -% In the example above, a \texttt{colspec} element -% anywhere in the document with an \texttt{align} attribute equal to \texttt{"char"} will cause the -% \textsf{dcolumn} package to be included -% automatically (the package handles decimal-column -% alignment).\par -% A special case involves the use of the \texttt{funcparams} subelement instead of -% the \texttt{parameter} attribute, to -% specify that an IDREF attribute must be checked for the -% \emph{type} of element it refers to.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - - - linkend - varlistentry - - - linkend - listitem - - - -\end{lstlisting} -% \iffalse -% -% \fi -% In this example, the \textsf{fmtcount} -% package will be included if there is an \texttt{xref} -% element anywhere in the documentation with a \texttt{linkend} attribute which points -% at a \texttt{varlistentry} or \texttt{listitem} -% element~--- that is, the \texttt{xml:id} attribute whose value -% matches the \texttt{linkend} value -% is on such an element type (the -% \textsf{fmtcount} package enables ordinal -% counting, needed when making a reference to an item in a -% list that is not numbered).\par -% \paragraph{Adding extra code before or after a package} -% Each \texttt{step} may also contain -% one or more \texttt{constraintdef} elements containing -% \texttt{cmdsynopsis} elements containing -% \texttt{command} elements to hold \LaTeX{} code to be -% inserted, in exactly the same format as shown in \vref{constraints}.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - - - \AtBeginDocument{\edef\ApaciteRestoreAtCode% - {\catcode`@=\the\catcode`@\relax}} - - - -\end{lstlisting} -% \iffalse -% -% \fi -% If this step is given in the \texttt{"prepackage"} section, the code is -% inserted \emph{before} the package is -% included; if the step is given in the \texttt{"postpackage"} section, the code -% is inserted \emph{after} the package is -% included.\par -% A package listed in this file can be given default -% options by specifying them in the \texttt{role} attribute of the -% \texttt{step} element. It is then unnecessary to specify -% them additionally in the main document (although it won't -% matter, as they are checked for duplication).\par -% \subsubsection{Defining commands required for documentation setup}\label{cmdspec} -% Documenting classes or packages will often require -% additional commands to be defined in order to set up special -% counters or lengths, establish conditions, or create new -% macros to be used in your documentation.\par -% \emph{This is quite different from needing to -% issue standard \LaTeX{} commands in order to -% set existing standard \LaTeX{} values, such as }\verb|\setlength{\parskip}{5mm}|. -% \emph{That kind of adjustment is dealt with in \vref{addcmds}.}\par -% Commands to be defined for the documentation to work -% must go in \texttt{cmysynopsis} elements in the -% \texttt{constraintdef} element that has the \texttt{xml:id} value of \texttt{"docpackages"}, -% \emph{after} the end of the -% \texttt{segmentedlist} of packages.\par -% The commands are specified with the command name -% (control sequence) or environment name -% \emph{separately} from the definition: this -% allows a structure to be imposed which enables the -% identification and re-use of these specifications.\par -% In giving the commands (control sequences) that you -% define, you specify just the names, with no backslash; and -% the definitions you give must not have the outermost set -% of curly braces. Both the backslash and the curly braces -% are added by the XSLT2 program when writing the -% {\ttfamily{}.dtx} file.\par -% Commands containing an `at' -% sign ({\ttfamily{}@}) in their name or -% definition are automatically enclosed in -% {\ttfamily{}\textbackslash{}makeatletter} and -% {\ttfamily{}\textbackslash{}makeatother} commands.\par -% There are several attributes which specify what you -% are defining, so that the data is output to the -% {\ttfamily{}.dtx} file correctly:\par -% \begin{description}[style=unboxed] -% \item[Simple commands\thinspace:]A simple new \LaTeX{} command with a textual -% expansion is defined with the \texttt{command} -% element holding the name of the command being -% defined, and an \texttt{arg} element holding the -% definition.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - LyX - L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX - -\end{lstlisting} -% \iffalse -% -% \fi -% This creates the definition: -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[LaTeX]TeX}] -\newcommand{\LyX}{L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX} -\end{lstlisting} -% \iffalse -% -% \fi -% \item[Renewed commands\thinspace:]If the command is a renewal of an existing -% command, use a \texttt{role} -% attribute of \texttt{"renew"} on -% the \texttt{command} element.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - vstrut - \vrule height1.2em depth.6667ex width0pt - -\end{lstlisting} -% \iffalse -% -% \fi -% This creates the definition: -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[LaTeX]TeX}] -\renewcommand{\vstrut}{\vrule height1.2em depth.6667ex width0pt} -\end{lstlisting} -% \iffalse -% -% \fi -% \item[Plain \TeX{} commands\thinspace:]A {\ttfamily{}\textbackslash{}def} command in Plain \TeX{} -% syntax can be specified with the attribute \texttt{xml:lang} set to \texttt{"TeX"} on the -% \texttt{command} element.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - hline - \noalign{\ifnum0=`}\fi - \@ifnextchar[{\@@hline}{\@@hline[\arrayrulewidth]} - -\end{lstlisting} -% \iffalse -% -% \fi -% This creates the definition: -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[LaTeX]TeX}] -\def\hline{\noalign{\ifnum0=`}\fi - \@ifnextchar[{\@@hline}{\@@hline[\arrayrulewidth]} -\end{lstlisting} -% \iffalse -% -% \fi -% \item[Commands with arguments\thinspace:]If a defined command needs arguments, specify -% the number of arguments in the \texttt{wordsize} attribute of the -% \texttt{arg} element:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - componentbox - \begin{tabular}[m]{@{}|c|@{}}\hline - \cellcolor{#1}\hbox to1em{\hss%\vrule height1em width0pt - \raisebox{.2ex}{\ttfamily\tiny#2}\hss}\\\hline - \end{tabular} - -\end{lstlisting} -% \iffalse -% -% \fi -% This creates the definition:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[LaTeX]TeX}] -\newcommand{\componentbox}[2]{\begin{tabular}[m]{@{}|c|@{}}\hline - \cellcolor{#1}\hbox to1em{\hss%\vrule height1em width0pt - \raisebox{.2ex}{\ttfamily\tiny#2}\hss}\\\hline - \end{tabular} -\end{lstlisting} -% \iffalse -% -% \fi -% If a default first argument is required, the -% value must be provided in the \texttt{condition} attribute of the -% \texttt{command} element.\par -% There is no provision in this version of the -% software for the specification of the extended argument array -% provided by the \textsf{xargs} package. -% \item[Counters, lengths, and \texttt{\textbackslash{}newwrite}s\thinspace:]Counters, lengths, and -% {\ttfamily{}\textbackslash{}newwrite} commands can be defined -% by using the \texttt{remap} -% attribute set to the value \texttt{"counter"}, \texttt{"length"} or \texttt{"newwrite"} as appropriate. in -% this case, no \texttt{arg} element is -% required unless a counter or length is to be -% assigned a default value.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - fnotes -\end{lstlisting} -% \iffalse -% -% \fi -% This creates the definition:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[LaTeX]TeX}] -\newwrite\fnotes -\end{lstlisting} -% \iffalse -% -% \fi -% However, if the length or counter needs an -% initial value, give it in an \texttt{arg} element.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - revmarg - 3cm - - - cards - 42 - -\end{lstlisting} -% \iffalse -% -% \fi -% This creates the definition: -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[LaTeX]TeX}] -\newlength{\revmarg}\setlength{\revmarg}{3cm} -\end{lstlisting} -% \iffalse -% -% \fi -% \item[References to attributes\thinspace:]One specialist use is predefined: assigning the -% type of document (class or package) to a command:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - classorpackage - - -\end{lstlisting} -% \iffalse -% -% \fi -% This creates the definition:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[LaTeX]TeX}] -\newcommand{\classorpackage}{...} -\end{lstlisting} -% \iffalse -% -% \fi -% where [\dots{}] is the type of the current -% document. The \texttt{arch} element in this case -% has no content, but uses the \texttt{remap} attribute to specify -% the name of an attribute (here, \texttt{arch}) on the -% \texttt{book} root element. This results in the -% command {\ttfamily{}\textbackslash{}classorpackage} being set -% equal to \texttt{"class"} or \texttt{"package"}; this value is used -% to provide a value for the entity \texttt{\&doctype;}. This entity can -% then be used in shared XML documentation to refer to -% the current document by type, knowing that it will -% be correctly translated to the type of document when -% the {\ttfamily{}.dtx} file is -% created. -% \item[Environments\thinspace:]The same principle applies to environments as to -% commands, but there are two arguments: one for the -% `before' and one for the -% `after':\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - panel - \begin{Sbox}% - \begin{minipage}{3in}% - \if#1\relax\else\subsubsection*{#1}\fi - \end{minipage}\end{Sbox}% - \begin{center}\fbox{\theSbox}\end{center}% - -\end{lstlisting} -% \iffalse -% -% \fi -% This creates the definition:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[LaTeX]TeX}] -\newenvironment{panel}{% - \begin{Sbox}% - \begin{minipage}{3in}% - \if#1\relax\else\subsubsection*{#1}\fi -}{% - \end{minipage}\end{Sbox}% - \begin{center}\fbox{\theSbox}\end{center}% -} -\end{lstlisting} -% \iffalse -% -% \fi -% The controls for the number of arguments and any -% default argument must go on the first \texttt{arg} -% element. The same rule about setting the \texttt{role} attribute to \texttt{"renew"} applies as for -% generating commands. -% \end{description} -% \subsubsection{Additional setup commands}\label{addcmds} -% Quite separately from the business of defining new -% commands (or redefining existing ones) dealt with in \vref{cmdspec}, there is also usually a need to issue -% commands that establish or reset a value needed for the -% documentation.\par -% Commands that you want implemented every time you use -% a particular package should go in your -% {\ttfamily{}prepost.xml} file, as described in -% \vref{autospec}. This section is for commands or -% settings that only refer to the documentation for the -% current class or package being written.\par -% These commands go in the third of the types of -% \texttt{constraintdef} element, with the \texttt{xml:id} value of \texttt{"startdoc"} because they are output -% at the start of the documentation -% (\emph{after} the -% \verb|\begin{document}|).\par -% They follow exactly the same syntax as those in the -% {\ttfamily{}prepost.xml} file:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - - - - \setcounter{tocdepth}{5} - \setcounter{secnumdepth}{5} - \def\@@doxdescribe#1#2{\endgroup - \ifdox@noprint\else\marginpar{\raggedleft - \textcolor{DarkRed}{\@nameuse{PrintDescribe#1}{#2}}}\fi - \ifdox@noindex\else\@nameuse{Special#1Index}{#2}\fi - \endgroup\@esphack\ignorespaces} - - - - -\end{lstlisting} -% \iffalse -% -% \fi -% The {\ttfamily{}\textbackslash{}@@doxdescribe} command is an -% oddity here: it appears not to work if placed in the -% {\ttfamily{}prepost.xml} document, where it gets -% issued in the Preamble; instead it goes here, where it -% gets issued after the -% \verb|\begin{document}|.\par -% \subsubsection{The Manifest}\label{manifestfiles} -% The fourth and last variant of the -% \texttt{constraintdef} element (with the \texttt{xml:id} attribute of \texttt{"manifest"}) is very simple. It is a -% list of the names of any separate files that you want -% included in the Zip file that the {\ttfamily{}build} command produces. This -% means anything other than the {\ttfamily{}.dtx}, -% {\ttfamily{}.ins}, and {\ttfamily{}.pdf} -% files that get included automatically.\par -% The content of this element is a -% \texttt{simplelist}, containing \texttt{member} -% elements, one per file:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - - doctexbook.dtd - db2dtx.xsl - db2bibtex.xsl - prepost.xml - lppl.xml - decommentbbl.awk - - -\end{lstlisting} -% \iffalse -% -% \fi -% \subsubsection{The README file}\label{readme} -% One additional output file is produced automatically -% by the XSLT2 program: the plaintext README file which -% accompanies all classes and packages, with a brief -% description of usage and installation, for the benefit of -% people who cannot or will not read the PDF -% documentation.\par -% This is generated automatically from the file -% {\ttfamily{}readme.xml}, which is a DocBook5 -% \texttt{chapter} document with some changes to the -% character entities to accommodate plain text. Note that -% this document does \emph{not} use the -% {\ttfamily{}doctexbook.dtd} used for your normal -% class or package {\small XML} document. A sample -% is included in the \textsf{classpack} -% distribution.\par -% The {\ttfamily{}readme.xml} file uses the -% \texttt{olink} element type to act as a placeholder for -% transcluded atomic information from the main document -% (pending implementation of the proposed DocBook -% Transclusions method). This element must have a -% \texttt{targetptr} and a \texttt{type} attribute -% specifying (respectively) the name of the element type and -% the relevant attribute in the main document. For example, -% to include the name of the class or package, we -% use:\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[LaTeX]TeX}] - -\end{lstlisting} -% \iffalse -% -% \fi -% Two other element types have also had -% \texttt{targetptr} and \texttt{type} attributes -% added: \texttt{sect1} and \texttt{anchor}. These are -% used to specify the inclusion of whole sections or -% fragments of the main document, such as the Abstract or -% the Copyright.\par -% The text is reformatted in plain text, omitting all -% markup. Only a few element types have been implemented for -% this in this version: see the ancillary XSLT2 routines in -% {\ttfamily{}db2plaintext.xsl} for details.\par -% The resulting {\ttfamily{}README} file -% includes the Abstract from your class or package -% {\small XML} document as the first section. The -% {\ttfamily{}db2plaintext.xsl} program uses a -% template called \DescribeTemplate{normtext}\texttt{normtext} to -% reformat text. This handles the conversion of entities -% which occur in your Abstract (those declared in -% {\ttfamily{}doctexbook.dtd}): by default, \texttt{\&TeX;}, \texttt{\&LaTeX;}, and \texttt{\ } are catered for, but if -% you use any others, you must modify the code in this -% template to deal with them, using a nested -% \DescribeFunction{replace()}\texttt{replace()} function.\par +% See p.\thinspace\pageref{changehistory} for earlier changes. % \clearpage -% \section{Using \emph{ClassPack}}\label{content} -% The body of your docmentation is held in a \texttt{part} -% element with the \texttt{xml:id} attribute -% set to \texttt{"doc"}.\par -% The tag-set of \emph{DocBook} is very -% large, and only a part of it is needed for this purpose, -% although support for additional elements is easily added in -% the XSLT2 program.\par -% The following sections describe the elements that are -% currently supported, for the hierarchical structure (chapters, -% sections, subsections, etc); the block-level structure -% (tables, figures, lists, etc; what -% \emph{DocBook} refers to as the -% `pool') and for the inline markup (element types -% in mixed content, used mostly in paragraph-like -% situations).\par -% \subsection{Hierarchical markup}\label{hierarchy} -% The outline top-level structure is described in \vref{invocation} and \vref{setup}.\par -% The \texttt{part}\thinspace{}s do not have any title or direct -% textual content themselves: they just act as containers to -% keep the user documentation separate from the documented -% code and any other files that may be stored and -% extracted.\par -% Within a \texttt{part}, the major subdivision is the -% \texttt{chapter}, which translates to a -% {\ttfamily{}\textbackslash{}section} in the {\ttfamily{}.dtx} -% file. You should use the \texttt{chapter} element as your -% major structural division. Each part (user documentation, -% documented code, and additional files) must have at least -% one chapter.\par -% Within chapters, the sections, subsections, and lower -% structural divisions are identified with \texttt{sect1}, -% \texttt{sect2}, and so on. You can use as many or as few -% of these as you feel you need to organise your writing. In -% the documented code, it is a good idea to modularise the -% class or package, so that you can describe each part of it -% in a logical and consistent manner.\par -% The nested arrangement of chapters containing sections -% conaining subsections should already be familiar to \LaTeX{} -% users, although \LaTeX{} itself only uses headings as -% separators, and has no physical -% `containment' of the hierarchical -% divisions of a document in the way that it does for the -% block-level structures (environments).\par -% Each of these hierarchical divisions must have a -% \texttt{title} element (see `\textbf{\texttt{title}}', the first item in the list in \vref{title}), -% and can also have an \texttt{xml:id} -% attribute to act as a target (like a \LaTeX{} -% {\ttfamily{}\textbackslash{}label}) for cross-referencing (see `\textbf{\texttt{xref}}', the last item in the list in \vref{xref}).\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] -... - - User interface - ... - - Font selection - ... - - - Margins and spacing - ... - - - ... - -\end{lstlisting} -% \iffalse -% -% \fi -% \subsection{Structural markup (block-level elements)}\label{pool} -% Within chapters, sections, subsections, etc, you can -% have any arrangement or mixture of paragraphs, tables, -% lists, figures, quotations, code samples, and other -% conventional structures that will be familiar to you from -% \LaTeX{} environments.\par -% The only requirement is that each hierarchical division -% must start with a title, and must contain at least one other -% structural component. Supported element types are:\par -% \begin{description}[style=unboxed] -% \item[\texttt{title}\thinspace:]\label{title}a title, used in all chapters, [sub]sections, -% figures, and tables (where it equates to a caption); -% and also optionally in lists, sidebars, and other -% block-level element types. -% \item[\texttt{para}\thinspace:]for normal paragraphs. -% \item[\texttt{itemizedlist}\thinspace:]for bulleted lists, containing -% \texttt{listitem}\thinspace{}s which contain paragraphs. -% \item[\texttt{orderedlist}\thinspace:]for numbered lists; the structure is identical to -% an \texttt{itemizedlist}. -% \item[\texttt{variablelist}\thinspace:]for description lists like this one (the -% \texttt{term} element in each -% \texttt{varlistentry} holds the reference term; the -% descriptive part is in the same \texttt{listitem} -% structure as for itemized and bulleted lists. -% \item[\texttt{simplelist}\thinspace:]for plain unnumbered, unbulleted lists; each item -% goes in a \texttt{member} element. -% \item[\texttt{programlisting}\thinspace:]for listings of code: use without attributes in -% the Code section. In the Documentation section, the -% basic style is in {\ttfamily{}\textbackslash{}small} type, -% black, {\ttfamily{}\textbackslash{}ttfamily}, and the following -% attributes control the appearance: -% \par\medskip{\sffamily\small -% \begingroup -% \centering -% \begin{tabular}{@{}% -% >{\ttfamily\prestrut\arraybackslash}l<{\poststrut\arraybackslash}% -% >{\raggedright{}\prestrut\arraybackslash}p{9cm}<{\poststrut\arraybackslash}% -% @{}} -% \hline -% \vstrut -% wordsize&either a size command or a -% pointsize/baseline like -% {\ttfamily{}8/9}\\ -% language&{\ttfamily{}LaTeX} (default), -% {\ttfamily{}DocBook}, -% {\ttfamily{}bash}, or another -% language supported by the -% \textsf{listings} package\\ -% arch&{\ttfamily{}framed} will box -% the listing\\ -% remap&\LaTeX{} styling commands for tokens to -% emphasise\\ -% annotations&comma-separated list of tokens to -% emphasise\\[2pt]\hline -% \end{tabular} -% \par\endgroup -% } -% \item[\texttt{figure}\thinspace:]for Figures, containing a \texttt{caption} and a -% \texttt{media} element. -% \item[\texttt{table}\thinspace:]for Tables; the structure is explained in detail -% in \vref{table}. -% \item[\texttt{sidebar}\thinspace:]for sidebars. -% \item[\texttt{warning}\thinspace:]for warnings. -% \end{description} -% \subsubsection{Ancillary files documented inline}\label{secfiles} -% These are files which you want extracted at -% installation time, which you describe -% \emph{and} show in the user documentation -% (the \texttt{doc} part).\par -% \emph{Files which you want extracted which are -% \emph{not} documented or shown in the user -% documentation must go in the \texttt{files} part (see -% \vref{ancfiles}).}\par -% \subsubsection{Bibliography}\label{bibs} -% If bibliographic citations and reference is required, -% the references themselves must be stored in a -% \texttt{bibliography} element immediately after the last -% \texttt{chapter} element in \emph{either} -% the `doc' part -% \emph{or} the `code' -% part. This must contain a \texttt{biblioentry} element -% for each entry you wish to cite (for how to cite, see -% `\textbf{\texttt{biblioref}}', the first item in the list in \vref{bibrefs}).\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language={[DocBook]XML}] - - - - - - Flynn - Peter - - - Typographers' Inn - Where have all the flowers gone? - - 21-22 - TUGboat - 31 - 1 - - - -\end{lstlisting} -% \iffalse -% -% \fi -% The \texttt{bibliography} element -% \textsc{must} have a \texttt{label} attribute giving the name -% of the \BibTeX{} style file to use (without the -% {\ttfamily{}.bst} filetype). The -% \textsf{apacite} style is recommended.\par -% If the specified style requires a \LaTeX{} style -% package for formatting (often called by the same name, eg -% \textsf{apacite}, \textsf{natbib}, -% \textsf{chicago}, etc), this -% \textsc{must} be given in an \texttt{xreflabel} attribute (without the -% {\ttfamily{}.sty} filetype).\par -% There \textsc{may} also be an -% \texttt{xlink:href} attribute giving -% the name of the \BibTeX{} file (without the -% {\ttfamily{}.bib} filetype) to which the -% references should be written: the default is the name of -% the class or package itself (as defined in `\textbf{\texttt{xml:id}}', the first item in the list in \vref{rootid}).\par -% Each \texttt{biblioentry} element -% \textsc{must} have both an \texttt{xml:id} attribute by which it can -% be cited with the \texttt{biblioref} element; and a \texttt{type} attribute classifying it -% with one of the standard \BibTeX{} document types (article, -% book, incollection, etc)\par -% \subsection{Inline markup (elements in mixed content)}\label{flow} -% \par -% \begin{description}[style=unboxed] -% \item[\texttt{biblioref}\thinspace:]\label{bibrefs}a citation (bibliographic reference) to an item in -% the Bibliography; the \texttt{linkend} attribute must be -% the value of the \texttt{xml:id} -% of a \texttt{biblioentry} element (see \vref{bibs}); this value is passed to a -% {\ttfamily{}\textbackslash{}cite} command. -% \item[\texttt{citetitle}\thinspace:]the title of a document being mentioned; usually -% formatted in italics or quotes; may be empty, with a \texttt{linkend} attribute pointing to -% an entry in the Bibliography (as for -% \texttt{biblioref}), in which case the title is -% automatically extracted and formatted, or passed to a -% {\ttfamily{}\textbackslash{}citefield} command. -% \item[\texttt{code}\thinspace:]a fragment of computer or data code, formatted in -% monospace type. -% \item[\texttt{emphasis}\thinspace:]emphasis according to style, usually italics. -% \item[\texttt{exceptionname}\thinspace:]used for the keywords of RFC2119 in formal admonishments. -% \item[\texttt{filename}\thinspace:]name of a file, a full filepath, or just a part of -% the name (eg a filetype). -% \item[\texttt{firstterm}\thinspace:]the defining instance of a specialist term; this -% may or may not actually be the first occurrence. -% \item[\texttt{footnote}\thinspace:]a footnote; contains a paragraph. -% \item[\texttt{foreignphrase}\thinspace:]for foreign-language expressions; identify the -% language with the \texttt{xml:lang} attribute if the -% phrase is long enough to need the -% \textsf{babel} package. -% \item[\texttt{guibutton}\thinspace:]represents a GUI {\fboxsep2pt\ovalbox{\sffamily Button}}. -% \item[\texttt{guilabel}\thinspace:]represents a GUI -% {\fboxsep2pt\fbox{\sffamily Label}}. -% \item[\texttt{guimenu}\thinspace:]represents a GUI -% \textsf{\bfseries Menu}. -% \item[\texttt{guimenuitem}\thinspace:]represents a GUI -% \textsf{\itshape Menu item}. -% \item[\texttt{guisubmenu}\thinspace:]represents a GUI -% \textsf{Sub-menu item}. -% \item[\texttt{literal}\thinspace:]marks a {\ttfamily{}literal string} on which -% no interpretation is to be performed (markup characters -% like backslashes and curly braces will -% not be escaped; the \texttt{xml:lang} attribute can be set to -% the name of the language (eg \texttt{"TeX"}, \texttt{"LaTeX"}, etc. -% \item[\texttt{phrase}\thinspace:]marks a phrase used as-is (ie not a quote from -% anyone in particular) by enclosing it in quotation marks. -% \item[\texttt{productname}\thinspace:]marks a product or program name, eg -% \emph{Emacs}. -% \item[\texttt{quote}\thinspace:]marks a quote from someone by putting it in -% quotation marks. -% \item[\texttt{replaceable}\thinspace:]identifies text, commands, or keywords to be -% typed, for which the user must substitute a meaningful -% value, eg {\itshape password} (in -% italics). -% \item[\texttt{systemitem}\thinspace:]identifies generic computer-related strings such -% as system commands, hostnames, Regular Expressions, etc -% which need to be printed in monospace to eliminate any -% confusion over 1/l/I, 0/1/I, etc. -% \item[\texttt{type}\thinspace:]marks a span for which special typographical -% treatment is needed. The \texttt{role} attribute must be set -% to `font' and the \texttt{remap} attribute must be set -% to the NFSS2e three-character -% \textsf{fontname}. -% \item[\texttt{uri}\thinspace:]marks a URI (formats it with the -% {\ttfamily{}\textbackslash{}url} macro). -% \item[\texttt{wordasword}\thinspace:]marks a word that is being used as itself (usually -% for purposes of clarification), so it goes in quotation -% marks. -% \item[\texttt{xref}\thinspace:]\label{xref}a cross-reference using the \texttt{linkend} attribute to point -% at some other part of the document, which must have -% the matching \texttt{xml:id} -% value; the mechanism is identical to \LaTeX{}'s -% {\ttfamily{}\textbackslash{}label}\dots{}{\ttfamily{}\textbackslash{}ref}. -% \end{description} -% In addition, there are six special-purpose element types -% used for functional documentation, that create the special -% \textsf{dox} package commands for adding \LaTeX{} -% (and XML) terms to the index, and highlighting them in the -% left-hand margin:\par -% \begin{description}[style=unboxed] -% \item[\texttt{classname}\thinspace:]a \LaTeX{} document class name like -% \textsf{article} -% \item[\texttt{command}\thinspace:]a \LaTeX{} or other computer command, such as -% {\ttfamily{}\textbackslash{}parskip}; the backslash is added -% automatically for the default case of \LaTeX{}; other -% languages require the \texttt{xml:lang} attribute giving -% the name of the language -% \item[\texttt{envar}\thinspace:]a \LaTeX{} environment name like -% \texttt{enumerate} -% \item[\texttt{option}\thinspace:]a \LaTeX{} option to a class, package, or command, -% like \textbf{\texttt{a4paper}} -% \item[\texttt{package}\thinspace:]a \LaTeX{} package name like -% \textsf{fancybox} -% \item[\texttt{tag}\thinspace:]an XML element, attribute, attribute value, or -% entity name: the type is specified in the \texttt{class} attribute and is one -% of the predetermined list provided automatically by -% \emph{DocBook} (so your XML editor -% will guide you) -% \end{description} -% \subsection{Producing your class or package}\label{production} -% The XSLT2 program generates a number of output files, -% principally the {\ttfamily{}.dtx} and -% {\ttfamily{}.ins} files which are the package or -% class itself. A third output is a {\ttfamily{}build} -% file, which is a \emph{bash} shell -% script customised for the production of the class or package -% you are writing. A fourth is the -% {\ttfamily{}MANIFEST} file, used for zipping -% everything up for distribution,\par -% You should therefore keep each class or package -% development in a separate directory, otherwise the -% {\ttfamily{}build} file generated by one will -% overwrite that generated by others.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language=bash] -#! /bin/bash -# -# Bourne shell script to build the class file and documentation -# Note the following line is wrapped here to fit the width -java -jar /usr/local/saxon/saxon9he.jar \ - -o:classpack.dtx classpack.xml \ - /home/peter/texmf/dev/db2dtx.xsl \ - processor=/usr/local/saxon/saxon9he.jar \ - appdir=/home/peter/texmf/dev \ - cpdir=/home/peter/texmf/dev -yes|latex classpack.ins -pdflatex classpack.dtx -bibtex classpack -awk -f /home/peter/texmf/dev/decommentbbl.awk classpack.bbl >classpack.bdc -mv classpack.bdc classpack.bbl -pdflatex classpack.dtx -makeindex -s gind.ist -o classpack.ind classpack.idx -makeindex -s gglo.ist -o classpack.gls classpack.glo -pdflatex classpack.dtx -echo Copying files into dev tree... -mkdir -p doc/latex/classpack -mkdir -p source/latex/classpack -mkdir -p tex/latex/classpack -cp README MANIFEST classpack.pdf doc/latex/classpack -cp classpack.dtx classpack.ins source/latex/classpack -cp classpack.cls tex/latex/classpack -cp db2bibtex.xsl source/latex/classpack -cp db2dtx.xsl source/latex/classpack -cp db2plaintext.xsl source/latex/classpack -cp decommentbbl.awk source/latex/classpack -cp doctexbook.dtd source/latex/classpack -cp lppl.xml source/latex/classpack -cp prepost.xml source/latex/classpack -cp readme.xml source/latex/classpack -echo Zipping up files from dev tree... -zip -r --exclude=*.svn* --exclude=*.DS_Store* \ - classpack-0.73.tds.zip doc/latex/classpack \ - source/latex/classpack tex/latex/classpack -echo Installing working copy... -unzip -o -d ~/texmf classpack-0.73.tds.zip -\end{lstlisting} -% \iffalse -% -% \fi -% Because this file will not exist the very first time you -% process a new class or package, you will need to type that -% first ({\ttfamily{}java}) command by -% hand. The arguments are:\par -% \begin{enumerate} -% \item \marg{jar} the location of -% your copy of the Saxon XSLT2 processor, a -% {\ttfamily{}.jar} file; -% \item \textbf{\texttt{-o:}} the name of the -% {\ttfamily{}.dtx} file you are producing; -% \item the name of the XML file you are processing; -% \item the full path to the DB2DTX program; -% \item the location of your copy of the Saxon XSLT2 -% processor (again) as the -% {\ttfamily{}processor} parameter; -% \item the directory you use for this class or package as -% the {\ttfamily{}appdir}; -% \item the directory where your copy of the XSLT2 program -% is stored as the -% {\ttfamily{}cpdir} parameter (along with the DTD, -% {\ttfamily{}prepost.xml}, -% {\ttfamily{}readme.xml}, -% {\ttfamily{}db2plaintext.xsl}, and -% {\ttfamily{}lppl.xml} files) . -% \end{enumerate} -% For subsequent runs, you just type {\ttfamily{}./build} and the values and -% parameters will be re-used automatically. If you ever need -% to run the XSLT2 process by itself, use the command -% \verb+grep java build | bash+\par -% The remainder of the {\ttfamily{}build} tests -% the extraction of the class or package, and compiles the -% full documentation in the standard sequence, including any -% bibliography, index, or glossary.\par -% The use of the {\ttfamily{}decommentbbl.awk} -% script on the \BibTeX{} output is to defeat the use of -% terminal percent comment characters, which upset the -% \textsf{ltxdoc} package because of the special use -% of that character there.\par -% The final stage is to create a Zip file of -% the class or package, which is placed in the current working -% directory and then unzipped into your personal \TeX{} tree.\par -% \subsection{Maintaining your class or package}\label{maintenance} -% The things to control each time you make an update are:\par +% \section{The \emph{ClassPack} package}\label{pkgintro} +% \emph{ClassPack} itself is an +% {\smaller XML}-based class and package development and +% management system described in the documentation for the +% \textsf{classpack-dev} package. This package, +% \textsf{classpack}, is responsible only for +% formatting the documentation of classes and packages developed +% using \emph{ClassPack}.\par +% The only operating \LaTeX{} code is therefore the settings +% and ancillary commands summarised in \vref{cpsum} +% and documented in \vref{pkgmacros}.\par +% \subsection{Features}\label{cpsum} +% Details of the annotated code are in \vref{pkgmacros}. They cover the following formatting +% changes:\par % \begin{enumerate} -% \item on the \texttt{book} root element, update the \texttt{version} and \texttt{revision} attributes -% \item add a new \texttt{revision} element in the -% Revision History, setting the \texttt{version} attribute to the -% compound of the version and revision specified above, -% and setting the \texttt{date} subelement's \texttt{conformance} attribute to -% today's date in ISO format -% \item after processing the document once, set the -% \texttt{book} root element's \texttt{security} attribute to the -% checksum displayed by \LaTeX{} -% \item process the document again (run the -% {\ttfamily{}build} script again)~--- the -% security checksum should now match +% \item Two-column index instead of three-column\par +% \item Dark Blue colour for annotated code\par +% \item Recalculation of the left-hand margin in +% documentation to accommodate long variable names\par +% \item Wider space for the section numbers and page numbers +% in the Table of Contents, and ragged-right setting for +% section titles to prevent hyphenation\par +% \item Appendixes (used for annotated code for ancillary +% files) are styled at section level, not chapter +% level\par +% \item Definitions for the Con\TeX t{}, \XeTeX{}, and +% \XeLaTeX{} logos (borrowed from the TUGboat style)\par +% \item Fake small caps (also from TUGboat) for the \BibTeX{} +% logo\par +% \item New struts for adjusting table spacing, and an arrow +% between examples of menu items in documentation\par +% \item Some hyphenation oddities\par +% \item A fix for the broken description environment item +% label to stop it overflowing\par +% \item A counter to be used when calculating the number of +% items in a list\par % \end{enumerate} % \clearpage -% \section{The \emph{db2dtx} program}\label{db2dtx} -% While the core of your class or package is the -% \emph{DocBook} XML document, the core of -% the \emph{classpack} system is the program -% that turns your XML into {\ttfamily{}.dtx} and -% {\ttfamily{}.ins} files for distribution as combined -% code and documentation.\par -% The \emph{db2dtx} program is written -% in XSLT2, a declarative language for processing XML. It -% consists of a set of templates, each of which matches a -% pattern in the XML document, usually an element type, or an -% element type in a particular position or with a particular -% attribute value or subelement.\par -% For example, there is a template which matches the -% \texttt{biblioref} element whenever it occurs. This puts three -% things into the output:\par -% \begin{enumerate} -% \item the command \verb|\cite{| with its -% opening curly brace; -% \item the value of the link to the bibliographic -% entry; -% \item the closing \verb|}| curly -% brace. -% \end{enumerate} -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language=XSLT] - - \cite{ - - } - -\end{lstlisting} -% \iffalse -% -% \fi -% The advantage of using a declarative language is that you -% don't need to know when and where each element will occur: -% XSLT2 will find them as they come up in processing, and apply -% the template when it happens. It's basically a case of -% `when you see one of \emph{these}, do -% \emph{this}'.\par -% The next few sections of this document describe each part -% of the program and how it produces your class or package -% files.\par -% \subsection{XML Declaration and Namespace declarations} -% The program starts in the usual way with the XML -% Declaration and the \texttt{xsl:stylesheet} start-tag with -% the Namespace declarations.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language=XSLT] - - -\end{lstlisting} -% \iffalse -% -% \fi -% Note that this is an XSLT2 program and requires an XSLT2 -% processor.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language=XSLT] - -\end{lstlisting} -% \iffalse -% -% \fi -% We identify the version of the program, output methods, -% parameters, and the single \texttt{xsl:include} file: the -% {\ttfamily{}db2bibtex.xsl} module for handling -% bibliographic formatting.\par -% \iffalse -%<*ignore> -% \fi -\begin{lstlisting}[language=XSLT] - - 14.7 - - - - - - - -\end{lstlisting} -% \iffalse -% -% \fi -% This is incomplete: the remainder of the program is not -% yet included here.\par -% \StopEventually{\label{endcode} +% \raggedright +% \RaggedRight\markboth{\refname}{\refname}\printbibliography[heading=shortbib] +% \StopEventually{\label{endcode}% % \clearpage -% \newgeometry{left=3cm} -% \addcontentsline{toc}{section}{Change History} -% \label{} +% \newgeometry{left=3cm}% +% \addcontentsline{toc}{section}{Change History}% +% \label{changehistory}% % \PrintChanges % \clearpage -% \label{codeindex} -% \addcontentsline{toc}{section}{Index} +% \label{codeindex}% +% \addcontentsline{toc}{section}{Index}% % \PrintIndex} -% \setlength{\revmarg}{1in} -% \addtolength{\revmarg}{\widthof{\MacroFont{IndexColumns}}} -% \newgeometry{left=\revmarg} +% \addtolength{\CPKrevmarg}{\widthof{\LabelFont{descriptionlabel}}} +% \newgeometry{left=\CPKrevmarg} +% \message{Margin reset to \the\CPKrevmarg, to fit } % \iffalse %<*package> % \fi % \clearpage -% \section{Service commands} -% \iffalse +% \section{The \textsf{classpack} macros and +% settings}\label{pkgmacros} +% \subsection{Auto-initialisation}\label{pkgmacros:autoinit} +% This section is added automatically by \textit{ClassPack} +% as a preamble to all classes and style packages. +% The \textsf{fixltx2e} package, which used to be included +% automatically, is no longer preloaded, as its +% features are now a part of the latest \LaTeXe\ kernel.\par +% The code starts with identity and requirements which are +% generated automatically as needed by the Doc\TeX\ system. +% For details see the \textsf{ltxdoc} package documentation. +% \par\smallskip +% \begingroup\color{DarkRed}\tabcolsep3pt\footnotesize +% \begin{tabular}{>{\refstepcounter{CodelineNo}\tiny\theCodelineNo}r@{\enspace}l} +% &\verb`\NeedsTeXFormat{LaTeX2e}[2015/01/01]`\\ +% &\verb`\ProvidesPackage{classpack}[2020/05/19 v1.19`\\ +% &\verb` Macros for ClassPack documentation]` +% \end{tabular}\endgroup +% \setcounter{CodelineNo}{3} +%\iffalse +%% +%% Packages required for the class or package %% -%% SERVICE COMMANDS % \fi -% As ClassPack itself is not a document class or package -% \emph{per se}, there is no operating -% code.\par +% \subsection{Packages required for the package}\label{stypackages} +% \begin{CPK@package}{graphicx} +% Provide for graphics (PNG, JPG, or PDF format (only) for +% pdflatex; EPS format (only) for standard \LaTeX{}). % \iffalse -%% -%% As ClassPack itself is not a document class or package per se, there -%% is no operating code. +%% Provide for graphics (PNG, JPG, or PDF format (only) for pdflatex; EPS format (only) for standard \LaTeX{}). % \fi -% However, there are some ancillary commands commonly used -% in documentation which should be expected by authors of -% classes and packages using ClassPack.\par +% \begin{macrocode} +\RequirePackage{graphicx}% +% \end{macrocode} +% \end{CPK@package} +% \begin{CPK@package}{array} +% Additional column formatting types for tables. % \iffalse -%% -%% However, there are some ancillary commands commonly used in -%% documentation which should be expected by authors of classes and -%% packages using ClassPack. +%% Additional column formatting types for tables. % \fi -% This section therefore implements -% {\ttfamily{}classpack.sty}, which gets invoked -% automatically via its entry in -% {\ttfamily{}prepost.xml}.\par +% \begin{macrocode} +\RequirePackage{array}% +% \end{macrocode} +% \end{CPK@package} +% \begin{CPK@package}{url} +% Handling of URI formatting. % \iffalse -%% -%% This section therefore implements classpack.sty, which gets invoked -%% automatically via its entry in prepost.xml. +%% Handling of URI formatting. % \fi -% \begin{counter}{IndexColumns} -% The \textsf{doctex} package uses a default -% three-column index, which is too narrow for most purposes. We -% therefore make the index in two columns, and space them -% slightly farther apart.\par +% \begin{macrocode} +\RequirePackage{url}% +% \end{macrocode} +% \end{CPK@package} +% \begin{CPK@package}{marginnote} +% Adds more flexibiltiy to marginal notes. % \iffalse -%% -%% The doctex package uses a default three-column index, which is too -%% narrow for most purposes. We therefore make the index in two columns, -%% and space them slightly farther apart. +%% Adds more flexibiltiy to marginal notes. % \fi % \begin{macrocode} -\setcounter{IndexColumns}{2} -\setlength{\columnsep}{3pc} +\RequirePackage[fulladjust]{marginnote}% % \end{macrocode} -% \end{counter} -% \subsection{\TeX{} and other logos} +% \end{CPK@package} +% +% \subsection{Index settings}\label{index} % \iffalse %% -%% 1 TeX and other logos -% \fi -% \TeX{} and \LaTeX{} are defined in the \LaTeX{} kernel, but -% most of the others are not. The following definitions are -% taken from the \textsf{ltugboat} package, used for -% typesetting the TUGboat journal.\par -% \iffalse +%% ****************************************************************** %% -%% TeX and LaTeX are defined in the LaTeX kernel, but most of the others -%% are not. The following definitions are taken from the ltugboat -%% package, used for typesetting the TUGboat journal. +%% Index settings % \fi -% \begin{macro}{\ConTeXt} -% \ConTeXt{} is a typography and typesetting system meant -% to provide users easy and consistent access to advanced -% typographical control \cite{wp-context}.\par +% \begin{CPK@counter}{IndexColumns}\label{counter--IndexColumns} +% The \textsf{doctex} package uses a default +% three-column index for the documentation, which is too +% narrow for most purposes. We therefore make the index in +% two columns, and space them slightly farther apart. We +% test first for the existence of the counter, in case this +% gets used in a document other than a +% {\ttfamily{}.dtx} file. No such test is needed for +% \DescribeLength{columnsep}{\ttfamily{}columnsep} because it is +% defined in the \LaTeX{} kernel.\par +% \begin{macrocode} +\@ifundefined{c@IndexColumns}{}{\setcounter{IndexColumns}{2}} +\setlength{\columnsep}{3pc} +% \end{macrocode} +% \end{CPK@counter} +% \subsection{Annotation settings}\label{annset} % \iffalse %% -%% \ConTeXt{} is a typography and typesetting system meant to provide -%% users easy and consistent access to advanced typographical control (, -%% ). -% \fi +%% ****************************************************************** +%% +%% Annotation settings +% \fi +% \begin{CPK@macro}{\MacroFont}\label{macro--MacroFont} +% The \textsf{doc} and \textsf{docx} +% packages use the {\ttfamily{}\textbackslash{}MacroFont} command for +% the marginal labelling of code annotation. We redefine it +% here to add the colour DarkBlue (from the +% \textbf{\texttt{svgnames}} option to the +% \textsf{xcolor} package).\par % \begin{macrocode} -\def\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} +\def\MacroFont{\fontencoding\encodingdefault + \ttfamily\fontseries{m}\fontshape\updefault + \small\selectfont\color{DarkBlue}} % \end{macrocode} -% \end{macro} -% \iffalse -% -% \fi -% \clearpage -% \raggedright -% \bibliography{classpack} -% \bibliographystyle{apacite} -% \begin{VerbatimOut}{classpack.bib} -%<*ignore> -@article{wp-context, -author = {Anon}, -shortauthor = {Anon}, -title = {{\ConTeXt{}}}, -journal = {{Wikipedia}}, -url = {http://en.wikipedia.org/wiki/ConTeXt}, -lastchecked = {27 March 2013} +% \end{CPK@macro} +% \begin{CPK@length}{\CPKrevmarg}\label{length--CPKrevmarg} +% The default margin width is often not wide enough for +% long macro names, so in the {\smaller XSLT3} code +% in {\ttfamily{}db2dtx.xsl} we find the widest name +% and add any excess over 25mm to the margin width. Here we +% define and set the width parameter for this, which will get +% reset later when calculated. The name has no at-sign, as +% it operates in user mode.\par +% \begin{macrocode} +\newlength{\CPKrevmarg} +\setlength{\CPKrevmarg}{25mm} +% \end{macrocode} +% \end{CPK@length} +% \begin{CPK@macro}{\CPKrunningecho}\label{macro--CPKrunningecho} +% This allows alignment of the current annotation name +% (from \texttt{@xreflabel}) as a +% reminder in a marginal note in a fake subheading +% implemented by a \texttt{bridgehead} element. Again, no +% at-sign for a user-mode command.\par +% \begin{macrocode} +\newcommand{\CPKrunningecho}[1]{\leavevmode + \marginnote[\sloppy\raggedleft\color{LightGrey}\hspace{0pt}#1]% + {\sloppy\raggedright\color{LightGrey}\hspace{0pt}#1}% } -% -% \end{VerbatimOut} -% \appendix -% \iffalse -%<*savedtd> -% \fi -% \clearpage -% \section{The XML vocabulary}\label{savedtd} +\let\marginfont\ttfamily +% \end{macrocode} +% \end{CPK@macro} +% \subsection{Table of Contents} % \iffalse %% -%% The XML vocabulary -% \fi -% There are currently no changes to the -% \emph{DocBook} element structure.\par -% \iffalse +%% ****************************************************************** %% -%% There are currently no changes to the DocBook element structure. -% \fi -% \begin{dtd}{book} -% The DTD is a driver implementing a number of entity -% declarations to ease the transformation to \LaTeX{}.\par +%% Table of Contents +% \fi +% \begin{CPK@macro}{\l@subsection}\label{macro--l@subsection} +% Documentation can sometimes have more than nine +% subdivisions in sections, subsections, etc, and over 99 +% pages; and the default widths in the ToC are too narrow +% for this, so we widen the space for the subsection number +% by 0.4em:\par +% \begin{macrocode} +\renewcommand*\l@subsection{% + \@dottedtocline{2}{1.5em}{2.7em}} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\l@subsubsection}\label{macro--l@subsubsection} +% Similarly we increase the subsection number space by +% 0.4em, and its margin, so they align:\par +% \begin{macrocode} +\renewcommand*\l@subsubsection{% + \@dottedtocline{3}{4.2em}{3.6em}} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\@pnumwidth}\label{macro--@pnumwidth} +% The page number width is set to 3em instead of 1.55em:\par +% \begin{macrocode} +\renewcommand{\@pnumwidth}{3em} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\@tocrmarg}\label{macro--@tocrmarg} +% And the right margin space goes up from 2.55em to 3em; +% the addition of 1fil makes the section titles typeset +% raggedright, so that hyphenation will not occur.\par +% \begin{macrocode} +\renewcommand{\@tocrmarg}{4em plus1fil} +% \end{macrocode} +% \end{CPK@macro} +% \subsection{Lower-level sectioning} % \iffalse %% -%% The DTD is a driver implementing a number of entity declarations to -%% ease the transformation to LaTeX. +%% ****************************************************************** +%% +%% Lower-level sectioning % \fi +% \begin{CPK@macro}{\subsubsection}\label{macro--subsubsection} +% The {\ttfamily{}\textbackslash{}subsubsection} command is used +% in bridgehead mode, so needs less space above and +% below.\par % \begin{macrocode} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %db5dtd; +\renewcommand\subsubsection{% + \@startsection{subsubsection}{3}{\z@}% + {-1ex\@plus -.25ex \@minus -.25ex}% + {1ex \@plus .25ex}% + {\sffamily\normalsize\bfseries}} % \end{macrocode} -% \end{dtd} -% \iffalse -% -% \fi -% \iffalse -%<*lxp> -% \fi -% \clearpage -% \section{Reusable XML}\label{lxp} +% \end{CPK@macro} +% \subsection{Appendix settings} % \iffalse %% -%% Reusable XML +%% ****************************************************************** +%% +%% Appendix settings % \fi -% In the last item in the list in \vref{xmltools}, I said that one of the -% benefits of using XML for software generation and -% documentation was the re-usability of the data. Here are a -% couple of simple examples.\par +% \begin{CPK@macro}{\appendix}\label{macro--appendix} +% Change the way the appendix command works so that +% appendixes get section-type styling in documentation.\par +% \begin{macrocode} +\renewcommand\appendix{\par + \setcounter{section}{0}% + \setcounter{subsection}{0}% + \gdef\thesection{\@Alph\c@section}} +% \end{macrocode} +% \end{CPK@macro} +% \subsection{\TeX{} and other logos} % \iffalse %% -%% In , I said that one of the benefits of using XML for software -%% generation and documentation was the re-usability of the data. Here -%% are a couple of simple examples. +%% ****************************************************************** +%% +%% TeX and other logos % \fi +% \TeX{} and \LaTeX{} are defined in the \LaTeX{} kernel, but +% most of the others are not. The following definitions are +% taken from the \textsf{ltugboat} package, used for +% typesetting the TUGboat journal.\par +% \begin{CPK@macro}{\ConTeXt}\label{macro--ConTeXt} +% Con\TeX t{} is a typography and typesetting system meant +% to provide users easy and consistent access to advanced +% typographical control \parencite{wp-context}.\par +% \begin{macrocode} +\def\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX + \kern-.0333emt} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\tubreflect}\label{macro--tubreflect} +% Borrow the reflection code from TUGboat.\par +% \begin{macrocode} +\def\tubreflect#1{% + \@ifundefined{reflectbox}{% + \PackageError{classpack}% + {A graphics package must be loaded for \string\XeTeX}% + {Add the graphicx package to your Preamble}% + }{% otherwise OK + \ifdim \fontdimen1\font>0pt + \raise 1.75ex \hbox{\kern.1em + \rotatebox{180}{#1}}\kern-.1em + \else + \reflectbox{#1}% + \fi + }% +} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\tubhideheight}\label{macro--tubhideheight} +% Borrow the method of hiding the height from TUGboat +% as well.\par +% \begin{macrocode} +\def\tubhideheight#1{\setbox0=\hbox{#1}% + \ht0=0pt \dp0=0pt \box0 } +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\XeTeX}\label{macro--XeTeX} +% Define \XeTeX{} and \XeLaTeX{}.\par +% \begin{macrocode} +\DeclareRobustCommand\Xe[1]{\leavevmode + \tubhideheight{\hbox{X% + \setbox0=\hbox{\TeX}\setbox1=\hbox{E}% + \lower\dp0\hbox{\raise\dp1\hbox{% + \kern-.125em\tubreflect{E}}}% + \kern-.1667em #1}}} +\def\XeTeX{\Xe\TeX} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\XeLaTeX}\label{macro--XeLaTeX} +% Define \XeLaTeX{} using the existing macros.\par +% \begin{macrocode} +\def\XeLaTeX{\Xe{\,\LaTeX}} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\SMC}\label{macro--SMC} +% Define a new small caps for use in \BibTeX{}, and an +% error message to go with it (from the +% \textsf{ltugboat} package).\par % \begin{macrocode} -$ lxprintf -e productname "%s\n" . classpack.xml |\ - sort | uniq -c | sort -k 1nr +\DeclareRobustCommand\SMC{% + \ifx\@currsize\normalsize\small\else + \ifx\@currsize\small\footnotesize\else + \ifx\@currsize\footnotesize\scriptsize\else + \ifx\@currsize\large\normalsize\else + \ifx\@currsize\Large\large\else + \ifx\@currsize\LARGE\Large\else + \ifx\@currsize\scriptsize\tiny\else + \ifx\@currsize\tiny\tiny\else + \ifx\@currsize\huge\LARGE\else + \ifx\@currsize\Huge\huge\else + \small\SMC@unknown@warning + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi +} +\newcommand\SMC@unknown@warning{\PackageError{classpack}% + {\string\SMC: nonstandard text font size command -- using + \string\small}% + {Check the font size or scaling for \the\@currsize}} +\newcommand\textSMC[1]{{\SMC #1}} % \end{macrocode} -% Checking that all element types have been described!\par +% \end{CPK@macro} +% \begin{CPK@macro}{\BIBTeX}\label{macro--BIBTeX} +% Finally, define \BibTeX{} in various forms.\par +% \begin{macrocode} + \def\Bib{% + \ifdim \fontdimen1\font>0pt + B{\SMC\SMC IB}% + \else + \textsc{Bib}% + \fi +} +\def\BibTeX{\Bib\kern-.08em \TeX} +\let\BiBTeX\BibTeX +\let\BIBTeX\BibTeX +% \end{macrocode} +% \end{CPK@macro} +% \par\begingroup +% \fboxsep1em\centering +% \fbox{\begin{minipage}{0.8\columnwidth}\sffamily +% \raggedright\parindent0pt +% \parskip=.5\baselineskip +% \subsubsection*{\sffamily The \textsf{flexlogo} package} +% The \textsf{flexlogo} package (under +% development) will make this section obsolete, as it allows +% for the complete redefining of the \TeX{}, \LaTeX{}, and +% related logos for non-CM fonts.\par +% \end{minipage}}\par\endgroup +% \subsection{Formatting additions} % \iffalse %% -%% Checking that all element types have been described! +%% ****************************************************************** +%% +%% Formatting additions % \fi +% \begin{CPK@macro}{\CPKvstrut}\label{macro--CPKvstrut} +% Define a strut that adjusts to the size of type, for +% use in spacing table headers and footers.\par +% \begin{macrocode} +\newcommand{\CPKvstrut}{\vrule height1.2em depth.6667ex width0pt} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\CPKmenusep}\label{macro--CPKmenusep} +% Define a macro to format an arrow between documentary +% menu items. Probably no longer needed now that the +% \textsf{menukeys} package is available\par +% \begin{macrocode} +\def\CPKmenusep{\thinspace$\rightarrow$\thinspace\allowbreak} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\CPKprestrut}\label{macro--CPKprestrut} +% Also a strut to precede paragraph cells\dots{}\par +% \begin{macrocode} +\newcommand{\CPKprestrut}{\vrule height1em width0pt} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\CPKpoststrut}\label{macro--CPKpoststrut} +% \dots{}and one to follow them.\par +% \begin{macrocode} +\newcommand{\CPKpoststrut}{\vrule depth.5ex width0pt} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\hyphenation}\label{macro--hyphenation} +% Add some hyphenation oddities.\par +% \begin{macrocode} +\hyphenation{ele-ment ele-ments attri-bute attri-butes + docu-ment docu-ments primi-tive helico-pter} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@macro}{\descriptionlabel}\label{macro--descriptionlabel} +% Fix the broken description environment item +% label. This also gets fixed in the +% \textsf{enumitem} package so it will probably go +% from here next version.\par +% \begin{macrocode} +\renewcommand*\descriptionlabel[1]{% + \hspace\labelsep\sffamily\bfseries #1} +% \end{macrocode} +% \end{CPK@macro} +% \begin{CPK@counter}{CPKcoref}\label{counter--CPKcoref} +% Add the counter to enable the use of \texttt{coref} +% list counters.\par +% \begin{macrocode} +\newcounter{CPKcoref} +% \end{macrocode} +% \end{CPK@counter} % \iffalse -% +% % \fi +% \appendix % \newgeometry{left=3cm} % \clearpage -% \section{The \LaTeX{} Project Public License}\label{LPPL:LPPL} -% \begin{quotation}\small\noindent +% \section{The \LaTeX{} Project Public License (v\thinspace{}1.3c)}\label{LPPL} +% \begin{quotation}\small\sffamily\parindent0pt +% \parskip.5\baselineskip +% \color{DarkBlue}\noindent % Everyone is allowed to distribute verbatim copies of this -% license document, but modification of it is not allowed. +% license document, but modification of it is not allowed.\par % \end{quotation} -% \subsection{Preamble}\label{LPPL:Preamble} -% The \LaTeX{} Project Public License ({\small LPPL}) +% \subsection{Preamble}\label{Preamble} +% The \LaTeX{} Project Public License ({\smaller LPPL}) % is the primary license under which the \LaTeX{} kernel and the % base \LaTeX{} packages are distributed.\par % You may use this license for any work of which you hold the @@ -2625,8 +1099,8 @@ $ lxprintf -e productname "%s\n" . classpack.xml |\ % particularly suitable if your work is \TeX{}-related (such as a % \LaTeX{} package), but it is written in such a way that you can % use it even if your work is unrelated to \TeX{}.\par -% The section \emph{Whether and How to Distribute Works under This -% License}, below, gives instructions, examples, and +% The section “Whether and How to Distribute Works under This +% License”, below, gives instructions, examples, and % recommendations for authors who are considering distributing % their works under this license.\par % This license gives conditions under which a work may be @@ -2640,38 +1114,38 @@ $ lxprintf -e productname "%s\n" . classpack.xml |\ % goal while meeting these conditions, then read the document % {\ttfamily{}cfgguide.tex} and {\ttfamily{}modguide.tex} in the base \LaTeX{} % distribution for suggestions.\par -% \subsection{Definitions}\label{LPPL:Definitions} +% \subsection{Definitions}\label{Definitions} % In this license document the following terms are used:\par % \begin{description}[style=unboxed] -% \item[Work\thinspace:]Any work being distributed under this License. +% \item[Work\thinspace:]Any work being distributed under this License.\par % \item[Derived Work\thinspace:]Any work that under any applicable law is derived from -% the Work. +% the Work.\par % \item[Modification\thinspace:]Any procedure that produces a Derived Work under any % applicable law~--- for example, the production of a file % containing an original file associated with the Work or a % significant portion of such a file, either verbatim or % with modifications and/or translated into another -% language. +% language.\par % \item[Modify\thinspace:]To apply any procedure that produces a Derived Work -% under any applicable law. +% under any applicable law.\par % \item[Distribution\thinspace:]Making copies of the Work available from one person to % another, in whole or in part. Distribution includes (but % is not limited to) making any electronic components of the % Work accessible by file transfer protocols such as -% {\small FTP} or {\small HTTP} or by +% {\smaller FTP} or {\smaller HTTP} or by % shared file systems such as Sun's Network File System -% ({\small NFS}). +% ({\smaller NFS}).\par % \item[Compiled Work\thinspace:]A version of the Work that has been processed into a % form where it is directly usable on a computer system. % This processing may include using installation facilities % provided by the Work, transformations of the Work, copying % of components of the Work, or other activities. Note that % modification of any installation facilities provided by -% the Work constitutes modification of the Work. +% the Work constitutes modification of the Work.\par % \item[Current Maintainer\thinspace:]A person or persons nominated as such within the Work. % If there is no such explicit nomination then it is the % `Copyright Holder' under any applicable -% law. +% law.\par % \item[Base Interpreter\thinspace:]A program or process that is normally needed for % running or interpreting a part or the whole of the % Work.\par @@ -2683,45 +1157,45 @@ $ lxprintf -e productname "%s\n" . classpack.xml |\ % Work, the only applicable Base Interpreter is a % `\LaTeX{}-Format' or in the case of files % belonging to the `\LaTeX{}-format' a program -% implementing the `\TeX{} language'. +% implementing the `\TeX{} language'.\par % \end{description} -% \subsection{Conditions on Distribution and Modification}\label{LPPL:Conditions} +% \subsection{Conditions on Distribution and Modification}\label{Conditions} % \begin{enumerate} % \item Activities other than distribution and/or modification % of the Work are not covered by this license; they are % outside its scope. In particular, the act of running the % Work is not restricted and no requirements are made -% concerning any offers of support for the Work. -% \item \label{LPPL:item:distribute}You may distribute a complete, unmodified copy of the +% concerning any offers of support for the Work.\par +% \item \label{item-distribute}You may distribute a complete, unmodified copy of the % Work as you received it. Distribution of only part of the % Work is considered modification of the Work, and no right to % distribute such a Derived Work may be assumed under the -% terms of this clause. +% terms of this clause.\par % \item You may distribute a Compiled Work that has been % generated from a complete, unmodified copy of the Work as -% distributed under Clause~item~\ref{LPPL:item:distribute} above above, as +% distributed under Clause~item~\ref{item-distribute} above above, as % long as that Compiled Work is distributed in such a way that % the recipients may install the Compiled Work on their system % exactly as it would have been installed if they generated a -% Compiled Work directly from the Work. -% \item \label{LPPL:item:currmaint}If you are the Current Maintainer of the Work, you may, +% Compiled Work directly from the Work.\par +% \item \label{item-currmaint}If you are the Current Maintainer of the Work, you may, % without restriction, modify the Work, thus creating a % Derived Work. You may also distribute the Derived Work % without restriction, including Compiled Works generated from % the Derived Work. Derived Works distributed in this manner % by the Current Maintainer are considered to be updated -% versions of the Work. +% versions of the Work.\par % \item If you are not the Current Maintainer of the Work, you % may modify your copy of the Work, thus creating a Derived % Work based on the Work, and compile this Derived Work, thus -% creating a Compiled Work based on the Derived Work. -% \item \label{LPPL:item:conditions}If you are not the Current Maintainer of the Work, you +% creating a Compiled Work based on the Derived Work.\par +% \item \label{item-conditions}If you are not the Current Maintainer of the Work, you % may distribute a Derived Work provided the following % conditions are met for every component of the Work unless % that component clearly states in the copyright notice that % it is exempt from that condition. Only the Current % Maintainer is allowed to add such statements of exemption to -% a component of the Work. +% a component of the Work.\par % \begin{enumerate} % \item If a component of this Derived Work can be a direct % replacement for a component of the Work when that @@ -2731,22 +1205,22 @@ $ lxprintf -e productname "%s\n" . classpack.xml |\ % Interpreter, the replacement component of this Derived % Work clearly and unambiguously identifies itself as a % modified version of this component to the user when used -% interactively with that Base Interpreter. +% interactively with that Base Interpreter.\par % \item Every component of the Derived Work contains % prominent notices detailing the nature of the changes to % that component, or a prominent reference to another file % that is distributed as part of the Derived Work and that % contains a complete and accurate log of the -% changes. +% changes.\par % \item No information in the Derived Work implies that any % persons, including (but not limited to) the authors of % the original version of the Work, provide any support, % including (but not limited to) the reporting and % handling of errors, to recipients of the Derived Work % unless those persons have stated explicitly that they do -% provide such support for the Derived Work. +% provide such support for the Derived Work.\par % \item You distribute at least one of the following with -% the Derived Work: +% the Derived Work:\par % \begin{enumerate} % \item A complete, unmodified copy of the Work; if your % distribution of a modified component is made by @@ -2755,50 +1229,50 @@ $ lxprintf -e productname "%s\n" . classpack.xml |\ % to copy the Work from the same or some similar place % meets this condition, even though third parties are % not compelled to copy the Work along with the -% modified component; +% modified component;\par % \item Information that is sufficient to obtain a -% complete, unmodified copy of the Work. +% complete, unmodified copy of the Work.\par % \end{enumerate} % \end{enumerate} % \item If you are not the Current Maintainer of the Work, you % may distribute a Compiled Work generated from a Derived % Work, as long as the Derived Work is distributed to all % recipients of the Compiled Work, and as long as the -% conditions of Clause~item~\ref{LPPL:item:conditions} above, above, are met -% with regard to the Derived Work. +% conditions of Clause~item~\ref{item-conditions} above, above, are met +% with regard to the Derived Work.\par % \item The conditions above are not intended to prohibit, and % hence do not apply to, the modification, by any method, of % any component so that it becomes identical to an updated % version of that component of the Work as it is distributed -% by the Current Maintainer under Clause~item~\ref{LPPL:item:currmaint} above, above. +% by the Current Maintainer under Clause~item~\ref{item-currmaint} above, above.\par % \item Distribution of the Work or any Derived Work in an % alternative format, where the Work or that Derived Work (in % whole or in part) is then produced by applying some process % to that format, does not relax or nullify any sections of % this license as they pertain to the results of applying that -% process. +% process.\par % \item % \begin{enumerate} % \item A Derived Work may be distributed under a different % license provided that license itself honors the -% conditions listed in Clause~item~\ref{LPPL:item:conditions} above above, in +% conditions listed in Clause~item~\ref{item-conditions} in the list on p.\thinspace\pageref{item-conditions} above, in % regard to the Work, though it does not have to honor the -% rest of the conditions in this license. +% rest of the conditions in this license.\par % \item If a Derived Work is distributed under a different % license, that Derived Work must provide sufficient % documentation as part of itself to allow each recipient % of that Derived Work to honor the restrictions in -% Clause~item~\ref{LPPL:item:conditions} above above, concerning -% changes from the Work. +% Clause~item~\ref{item-conditions} in the list on p.\thinspace\pageref{item-conditions} above, concerning +% changes from the Work.\par % \end{enumerate} % \item This license places no restrictions on works that are % unrelated to the Work, nor does this license place any % restrictions on aggregating such works with the Work by any -% means. +% means.\par % \item Nothing in this license is intended to, or may be used % to, prevent complete compliance by all parties with all -% applicable laws. +% applicable laws.\par % \end{enumerate} -% \subsection{No Warranty}\label{LPPL:Warranty} +% \subsection{No Warranty}\label{Warranty} % There is no warranty for the Work. Except when otherwise % stated in writing, the Copyright Holder provides the Work % `as is', without warranty of any kind, either @@ -2820,7 +1294,7 @@ $ lxprintf -e productname "%s\n" . classpack.xml |\ % operate with any other programs), even if the Copyright Holder % or said author or said other party has been advised of the % possibility of such damages.\par -% \subsection{Maintenance of The Work}\label{LPPL:Maintenance} +% \subsection{Maintenance of The Work}\label{Maintenance} % The Work has the status `author-maintained' % if the Copyright Holder explicitly and prominently states near % the primary copyright notice in the Work that the Work can only @@ -2846,80 +1320,80 @@ $ lxprintf -e productname "%s\n" . classpack.xml |\ % \begin{enumerate} % \item Make a reasonable attempt to trace the Current % Maintainer (and the Copyright Holder, if the two differ) -% through the means of an Internet or similar search. +% through the means of an Internet or similar search.\par % \item If this search is successful, then enquire whether the -% Work is still maintained. +% Work is still maintained.\par % \begin{enumerate} % \item If it is being maintained, then ask the Current % Maintainer to update their communication data within one -% month. -% \item \label{LPPL:item:intention}If the search is unsuccessful or no action to resume +% month.\par +% \item \label{item-intention}If the search is unsuccessful or no action to resume % active maintenance is taken by the Current Maintainer, % then announce within the pertinent community your % intention to take over maintenance. (If the Work is a % \LaTeX{} work, this could be done, for example, by -% posting to \url{news:comp.text.tex}.) +% posting to \url{news:comp.text.tex}.)\par % \end{enumerate} % \item % \begin{enumerate} % \item If the Current Maintainer is reachable and agrees to % pass maintenance of the Work to you, then this takes -% effect immediately upon announcement. -% \item \label{LPPL:item:announce}If the Current Maintainer is not reachable and the +% effect immediately upon announcement.\par +% \item \label{item-announce}If the Current Maintainer is not reachable and the % Copyright Holder agrees that maintenance of the Work be % passed to you, then this takes effect immediately upon -% announcement. +% announcement.\par % \end{enumerate} -% \item \label{LPPL:item:change}If you make an `intention announcement' -% as described in~item~\ref{LPPL:item:intention} above above and after three +% \item \label{item-change}If you make an `intention announcement' +% as described in~item~\ref{item-intention} in the list on p.\thinspace\pageref{item-intention} above and after three % months your intention is challenged neither by the Current % Maintainer nor by the Copyright Holder nor by other people, % then you may arrange for the Work to be changed so as to -% name you as the (new) Current Maintainer. +% name you as the (new) Current Maintainer.\par % \item If the previously unreachable Current Maintainer becomes % reachable once more within three months of a change -% completed under the terms of~item~\ref{LPPL:item:announce} above -% or~item~\ref{LPPL:item:change} above, then that +% completed under the terms of~item~\ref{item-announce} in the list on p.\thinspace\pageref{item-announce} +% or~item~\ref{item-change} above, then that % Current % Maintainer must become or remain the Current Maintainer upon % request provided they then update their communication data -% within one month. +% within one month.\par % \end{enumerate} % A change in the Current Maintainer does not, of itself, % alter the fact that the Work is distributed under the -% {\small LPPL} license.\par +% {\smaller LPPL} license.\par % If you become the Current Maintainer of the Work, you should % immediately provide, within the Work, a prominent and % unambiguous statement of your status as Current Maintainer. You % should also announce your new status to the same pertinent -% community as in~item~\ref{LPPL:item:intention} above +% community as in~item~\ref{item-intention} in the list on p.\thinspace\pageref{item-intention} % above.\par % \subsection{Whether and How to Distribute Works under This -% License}\label{LPPL:Distribute} +% License}\label{Distribute} % This section contains important instructions, examples, and % recommendations for authors who are considering distributing % their works under this license. These authors are addressed as % `you' in this section.\par -% \subsubsection{Choosing This License or Another License}\label{LPPL:Choosing} +% \subsubsection{Choosing This License or Another License}\label{Choosing} % If for any part of your work you want or need to use % \emph{distribution} conditions that differ % significantly from those in this license, then do not refer to % this license anywhere in your work but, instead, distribute % your work under a different license. You may use the text of % this license as a model for your own license, but your license -% should not refer to the {\small LPPL} or otherwise +% should not refer to the {\smaller LPPL} or otherwise % give the impression that your work is distributed under the -% {\small LPPL}.\par +% {\smaller LPPL}.\par % The document {\ttfamily{}modguide.tex} in the base \LaTeX{} % distribution explains the motivation behind the conditions of % this license. It explains, for example, why distributing -% \LaTeX{} under the {\small GNU} General Public -% License ({\small GPL}) was considered inappropriate. +% \LaTeX{} under the {\smaller GNU} General Public +% License ({\smaller GPL}) was considered inappropriate. % Even if your work is unrelated to \LaTeX{}, the discussion in % {\ttfamily{}modguide.tex} may still be % relevant, and authors intending to distribute their works % under any license are encouraged to read it.\par % \subsubsection{A Recommendation on Modification Without -% Distribution}\label{LPPL:WithoutDistribution} +% Distribution}\label{WithoutDistribution} % It is wise never to modify a component of the Work, even % for your own personal use, without also meeting the above % conditions for distributing the modified component. While you @@ -2934,7 +1408,7 @@ $ lxprintf -e productname "%s\n" . classpack.xml |\ % of the Work identical with the public one. Many works provide % ways to control the behavior of that work without altering any % of its licensed components.\par -% \subsubsection{How to Use This License}\label{LPPL:HowTo} +% \subsubsection{How to Use This License}\label{HowTo} % To use this license, place in each of the components of % your work both an explicit copyright notice including your % name and the year the work was authored and/or last @@ -2978,15 +1452,15 @@ $ lxprintf -e productname "%s\n" . classpack.xml |\ % referring to the person % M.~Y.~Name\index{!}.\par % If you do not want the Maintenance section of -% {\small LPPL} to apply to your Work, change +% {\smaller LPPL} to apply to your Work, change % `maintained' above into % `author-maintained'. However, we recommend that % you use `maintained' as the Maintenance % section was added in order to ensure that your Work remains % useful to the community even when you can no longer maintain % and support it yourself.\par -% \subsubsection{Derived Works That Are Not Replacements}\label{LPPL:NotReplacements} -% Several clauses of the {\small LPPL} specify +% \subsubsection{Derived Works That Are Not Replacements}\label{NotReplacements} +% Several clauses of the {\smaller LPPL} specify % means to provide reliability and stability for the user % community. They therefore concern themselves with the case % that a Derived Work is intended to be used as a (compatible or @@ -2994,9 +1468,9 @@ $ lxprintf -e productname "%s\n" . classpack.xml |\ % the case (e.g., if a few lines of code are reused for a % completely different task), then clauses 6b and 6d shall not % apply.\par -% \subsubsection{Important Recommendations}\label{LPPL:Recommendations} -% \paragraph{Defining What Constitutes the Work} -% The {\small LPPL} requires that distributions +% \subsubsection{Important Recommendations}\label{Recommendations} +% \paragraph[Defining What Constitutes the Work]{Defining What Constitutes the Work :} +% The {\smaller LPPL} requires that distributions % of the Work contain all the files of the Work. It is % therefore important that you provide a way for the licensee % to determine which files constitute the Work. This could, @@ -3017,12 +1491,5 @@ $ lxprintf -e productname "%s\n" . classpack.xml |\ % considered by you to comprise the Work and, in such a case, % the licensee would be entitled to make reasonable % conjectures as to which files comprise the Work.\par -% \iffalse -%<*testscript> -# This is a test script -echo Hello, World! - -% -% \fi % \Finale diff --git a/support/classpack/classpack.ins b/support/classpack/classpack.ins index e87e315a03..4894adf980 100644 --- a/support/classpack/classpack.ins +++ b/support/classpack/classpack.ins @@ -1,5 +1,7 @@ -%% Extracted from classpack.xml -% classpack.ins is copyright © 2012-2013 by Peter Flynn +% Transformed from classpack.xml by ClassPack db2dtx.xsl +% version 1.19 (2020-05-19) on Wednesday 20 May 2020 at 14:32:36 +% +% classpack.ins is copyright © 2012-2020 by Peter Flynn % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -11,32 +13,44 @@ % 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'. +% This work has the LPPL maintenance status ‘maintained’. % % The current maintainer of this work is Peter Flynn % % This work consists of the files classpack.dtx and classpack.ins, -% the derived file classpack.sty, and any ancillary files listed -% in the MANIFEST. +% the derived file +% and any other ancillary files listed in the MANIFEST. % \input docstrip.tex \keepsilent \usedir{tex/latex/classpack} \preamble + +This is a generated file. + +Copyright © 2009– by Silmaril Consultants + This file was generated from an XML master source. Amendments and corrections should be notified to the maintainer for inclusion in future versions. + \endpreamble -\generate{\file{classpack.sty}{\from{classpack.dtx}{package}}% - \file{doctexbook.dtd}{\from{classpack.dtx}{savedtd}}% - \file{getgis.sh}{\from{classpack.dtx}{lxp}}% - \usepreamble\empty\usepostamble\empty - \file{test.sh}{\from{classpack.dtx}{testscript}}% +\generate{\file{classpack.sty}{\from{classpack.dtx}{package}} } \obeyspaces \Msg{********************************************************} \Msg{** **} -\Msg{** Read the documentation before using this package. **} +\Msg{** Read the documentation before using this package. **} +\Msg{** **} +\Msg{** To finish the installation you have to move the **} +\Msg{** following file into a directory searched by TeX: **} +\Msg{** **} +\Msg{** **} +\Msg{** **} +\Msg{** To produce the documentation run the file **} +\Msg{** classpack.dtx through XeLaTeX and biber **} +\Msg{** **} +\Msg{** Happy LaTeXing! **} \Msg{** **} \Msg{********************************************************} \endbatchfile diff --git a/support/classpack/classpack.pdf b/support/classpack/classpack.pdf index 881096d5d5..65f81b5e36 100644 Binary files a/support/classpack/classpack.pdf and b/support/classpack/classpack.pdf differ diff --git a/support/classpack/classpack.sty b/support/classpack/classpack.sty deleted file mode 100644 index e55e53e9a2..0000000000 --- a/support/classpack/classpack.sty +++ /dev/null @@ -1,46 +0,0 @@ -%% -%% This is file `classpack.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% classpack.dtx (with options: `package') -%% This file was generated from an XML master source. -%% Amendments and corrections should be notified to the -%% maintainer for inclusion in future versions. -\NeedsTeXFormat{LaTeX2e}[2011/06/27] -\ProvidesPackage{classpack}[2013/05/28 v0.77 - XML mastering for LaTeX classes and packages] -%% -%% SERVICE COMMANDS -%% -%% As ClassPack itself is not a document class or package per se, there -%% is no operating code. -%% -%% However, there are some ancillary commands commonly used in -%% documentation which should be expected by authors of classes and -%% packages using ClassPack. -%% -%% This section therefore implements classpack.sty, which gets invoked -%% automatically via its entry in prepost.xml. -%% -%% The doctex package uses a default three-column index, which is too -%% narrow for most purposes. We therefore make the index in two columns, -%% and space them slightly farther apart. -\setcounter{IndexColumns}{2} -\setlength{\columnsep}{3pc} -%% -%% 1 TeX and other logos -%% -%% TeX and LaTeX are defined in the LaTeX kernel, but most of the others -%% are not. The following definitions are taken from the ltugboat -%% package, used for typesetting the TUGboat journal. -%% -%% \ConTeXt{} is a typography and typesetting system meant to provide -%% users easy and consistent access to advanced typographical control (, -%% ). -\def\ConTeXt{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt} - -\endinput -%% -%% End of file `classpack.sty'. diff --git a/support/classpack/db2bibtex.xsl b/support/classpack/db2bibtex.xsl deleted file mode 100644 index 0622766da0..0000000000 --- a/support/classpack/db2bibtex.xsl +++ /dev/null @@ -1,592 +0,0 @@ - - - - - - % \renewcommand{\bibname}{ - - } - - - % \nocite{*} - - % \clearpage -% \raggedright -% \bibliography{ - - } -% \bibliographystyle{ - - } -% \begin{VerbatimOut}{ - - - - - - - - - .bib} -%<*ignore> - - %</ignore> -% \end{VerbatimOut} - - - - @ - - - techreport - - - misc - - - - - - { - - - - , publisher = { - - } - - - , publisher = {Unpublished} - - - - - - - } - - - - - , shortauthor = { - - - - \& - - - - \textit{et al.} - - - - } - - - - - , - - = { - - - and - - - - - - - { - - } - - - - - - - - - - - - - - - - - - - - - { - - } - - - - - - - - - - - - } - - - , short - - = { - - } - - - - - - - , author = {{ - - - and - - - - - - - { - - } - - - - - - - }} - - , shortauthor = {{ - - - - - - - - - }} - - - - - - - - - - , - - - - - - - - title - - - - journal - - - - booktitle - - - title - - - = {{ - - - - - - - - - : - - - - - }} - - - - - - - , - - - url - - - - - - isbn - - - issn - - - number - - - = { - - - - - - - LoC - : - - - - } - - - , lastchecked = { - - - - - - - - - - - - } - - - , year = { - - } - - , month = { - - - - } - - - - - - - , shorttitle = {{ - - }} - - - - , - - = { - - } - - - - , number = { - - - - - - } - - - - , note = { - - } - - - - - - , howpublished = { - - : - - } - - - - - - - - - , - - - institution - - - school - - - publisher - - - = { - - } - - - - - - - - , series = {{ - - - ( - - ) - - }} - - - - , organization = { - - } - - - - , address = { - - } - - - - - - , series = { - - } - - - - - - - - , year = { - - } - - , month = { - - - - - - - } - - - , howpublished = {Pers.\ Comm.} - - - - - , number = { - - } - - - - , pages = { - - } - - - - , volume = { - - } - - - - , url = { - - } - - - - , number = { - - } - - - - , - - - url - - - address - - - = { - - } - - - - , edition = { - - - - - - - - - st - - - nd - - - rd - - - th - - - - - } - - - - - - - January - - - February - - - March - - - April - - - May - - - June - - - July - - - August - - - September - - - October - - - November - - - December - - - - Month must be a number from 1 to 12 in - - - NaN - - - - - diff --git a/support/classpack/db2dtx.xsl b/support/classpack/db2dtx.xsl deleted file mode 100644 index e74321cb7c..0000000000 --- a/support/classpack/db2dtx.xsl +++ /dev/null @@ -1,5378 +0,0 @@ - - - - - - - 15.02 (autopackage with multifile) - - - - - - - - - - - - - - - - - - - - - - - 40 - - - - ~/texmf - - - - - - - - - - - - - This is DB2DTX, Version - - . - - - - - - ! Declared version - - . - - does not match latest revision history - - I'm sorry, I can't go on until you fix this. - - - - - - - - - - - - - % \iffalse meta-comment -% - - - - dtx - - - % -% \fi -% \iffalse - - - %<*driver> -\ProvidesFile{ - - .dtx} -%</driver> - - - - %< - - >\NeedsTeXFormat{ - - }[ - - ] -%< - - >\Provides - - - { - - } - - [ - - - - - - - - v - - . - - %< - - > - - - - - - - - - - - - - - - ] - - - %% -%% Packages that need to be invoked at the start -%% - - - - - - - - - %<*driver> - - - \PassOptionsToPackage{svgnames}{xcolor} - \documentclass - - [ - - ] - - {ltxdoc} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %% -%% Packages added automatically -%% - - - - - - - - - - - - - - - - - - - - % added babel automatically \usepackage[ - - - , - - - ]{babel} - - Adding babel automatically for - - - , - - - - - - - \usepackage{ - - } - - - - - - Adding - - as specified - - \usepackage - - [ - - ] - - { - - }[ - - - - - - - - ]% added by specification - - - %% -%% Packages added by author -%% - - - - - - - - - - \usepackage{classpack} -%% -%% Settings for docstrip and latexdoc -%% -\EnableCrossrefs -\CodelineIndex -\RecordChanges -\newlength{\revmarg} -\setlength{\revmarg}{1in} - - - \newcommand{\vstrut}{\vrule height1.2em depth.6667ex width0pt} -\newcommand{\prestrut}{\vrule height1em width0pt} -\newcommand{\poststrut}{\vrule depth.5ex width0pt} - - \begin{document} - - \DocInput{ - - .dtx} -\end{document} -%</driver> -% \fi -% -% \CheckSum{ - - } -% -% \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 \~} -% - - % \changes{v - - }{ - - }{ - - : - - - - - - - - ) - - - ; - - - - - .} - - % -% \GetFileInfo{ - - .dtx} - % -% \DoNotIndex{\@,\@@par,\@beginparpenalty,\@empty} -% \DoNotIndex{\@flushglue,\@gobble,\@input} -% \DoNotIndex{\@makefnmark,\@makeother,\@maketitle} -% \DoNotIndex{\@namedef,\@ne,\@spaces,\@tempa} -% \DoNotIndex{\@tempb,\@tempswafalse,\@tempswatrue} -% \DoNotIndex{\@thanks,\@thefnmark,\@topnum} -% \DoNotIndex{\@@,\@elt,\@forloop,\@fortmp,\@gtempa,\@totalleftmargin} -% \DoNotIndex{\",\/,\@ifundefined,\@nil,\@verbatim,\@vobeyspaces} -% \DoNotIndex{\|,\~,\ ,\active,\advance,\aftergroup,\begingroup,\bgroup} -% \DoNotIndex{\mathcal,\csname,\def,\documentstyle,\dospecials,\edef} -% \DoNotIndex{\egroup} -% \DoNotIndex{\else,\endcsname,\endgroup,\endinput,\endtrivlist} -% \DoNotIndex{\expandafter,\fi,\fnsymbol,\futurelet,\gdef,\global} -% \DoNotIndex{\hbox,\hss,\if,\if@inlabel,\if@tempswa,\if@twocolumn} -% \DoNotIndex{\ifcase} -% \DoNotIndex{\ifcat,\iffalse,\ifx,\ignorespaces,\index,\input,\item} -% \DoNotIndex{\jobname,\kern,\leavevmode,\leftskip,\let,\llap,\lower} -% \DoNotIndex{\m@ne,\next,\newpage,\nobreak,\noexpand,\nonfrenchspacing} -% \DoNotIndex{\obeylines,\or,\protect,\raggedleft,\rightskip,\rm,\sc} -% \DoNotIndex{\setbox,\setcounter,\small,\space,\string,\strut} -% \DoNotIndex{\strutbox} -% \DoNotIndex{\thefootnote,\thispagestyle,\topmargin,\trivlist,\tt} -% \DoNotIndex{\twocolumn,\typeout,\vss,\vtop,\xdef,\z@} -% \DoNotIndex{\,,\@bsphack,\@esphack,\@noligs,\@vobeyspaces,\@xverbatim} -% \DoNotIndex{\`,\catcode,\end,\escapechar,\frenchspacing,\glossary} -% \DoNotIndex{\hangindent,\hfil,\hfill,\hskip,\hspace,\ht,\it,\langle} -% \DoNotIndex{\leaders,\long,\makelabel,\marginpar,\markboth,\mathcode} -% \DoNotIndex{\mathsurround,\mbox,\newcount,\newdimen,\newskip} -% \DoNotIndex{\nopagebreak} -% \DoNotIndex{\parfillskip,\parindent,\parskip,\penalty,\raise,\rangle} -% \DoNotIndex{\section,\setlength,\TeX,\topsep,\underline,\unskip,\verb} -% \DoNotIndex{\vskip,\vspace,\widetilde,\\,\%,\@date,\@defpar} -% \DoNotIndex{\[,\{,\},\]} -% \DoNotIndex{\count@,\ifnum,\loop,\today,\uppercase,\uccode} -% \DoNotIndex{\baselineskip,\begin,\tw@} -% \DoNotIndex{\a,\b,\c,\d,\e,\f,\g,\h,\i,\j,\k,\l,\m,\n,\o,\p,\q} -% \DoNotIndex{\r,\s,\t,\u,\v,\w,\x,\y,\z,\A,\B,\C,\D,\E,\F,\G,\H} -% \DoNotIndex{\I,\J,\K,\L,\M,\N,\O,\P,\Q,\R,\S,\T,\U,\V,\W,\X,\Y,\Z} -% \DoNotIndex{\1,\2,\3,\4,\5,\6,\7,\8,\9,\0} -% \DoNotIndex{\!,\#,\$,\&,\',\(,\),\+,\.,\:,\;,\<,\=,\>,\?,\_} -% \DoNotIndex{\discretionary,\immediate,\makeatletter,\makeatother} -% \DoNotIndex{\meaning,\newenvironment,\par,\relax,\renewenvironment} -% \DoNotIndex{\repeat,\scriptsize,\selectfont,\the,\undefined} -% \DoNotIndex{\arabic,\do,\makeindex,\null,\number,\show,\write,\@ehc} -% \DoNotIndex{\@author,\@ehc,\@ifstar,\@sanitize,\@title,\everypar} -% \DoNotIndex{\if@minipage,\if@restonecol,\ifeof,\ifmmode} -% \DoNotIndex{\lccode,\newtoks,\onecolumn,\openin,\p@,\SelfDocumenting} -% \DoNotIndex{\settowidth,\@resetonecoltrue,\@resetonecolfalse,\bf} -% \DoNotIndex{\clearpage,\closein,\lowercase,\@inlabelfalse} -% \DoNotIndex{\selectfont,\mathcode,\newmathalphabet,\rmdefault} -% \DoNotIndex{\bfdefault,\DeclareRobustCommand} - - - - % \DoNotIndex{\ - - } - - - - % \makeatletter - - % - - - - % \makeatother - - - % - - - - - - - - - - % \renewcommand{\abstractname}{ - - }\thispagestyle{empty} - - % \begin{abstract} - - - % \parskip=0.5\baselineskip -% \advance\parskip by 0pt plus 2pt -% \parindent=0pt - - % \noindent - - % \end{abstract} -% \clearpage -% \tableofcontents - - - - - README - - - - - - - - - MANIFEST - - - - README -MANIFEST - - - - .dtx - - .ins - - .pdf - - . - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - % \begin{package}{ - - } - - - - - ADVISORY: Package - - for - - has no documentation in prepost.xml - - - - - % - - - - - - % \iffalse %% - - % \fi - - % \begin{macrocode} - - - - - - \makeatletter - - - - - - - - \makeatother - - - - - - - \RequirePackage - - - - %< - - >\RequirePackage - - - - \usepackage - - - - - - - - - - - [ - - - - , - - - - - - - - - - - - - - , - - - - - - ] - - - - - { - - } - - - [ - - ] - - - - % - - - - - - - \makeatletter - - - - - \makeatother - - - - - % \end{macrocode} - - % \end{package} - - - - % \usepackage - - [ - - ] - - { - - }% added by specification - - - - - - - - - - - 32 - - - - - - - - - - - - - - - ERROR FINDING COMMA IN SUBSTRING - - - - - - - - - - - ERROR FINDING COMMA IN WHOLE STRING - - - - - - - - - - - - - - - - - - - - 50 - - - - - - - - - - - - - - \makeatletter - - - - - \newwrite\ - - - - - - \newcounter{ - - } - - \setcounter{ - - }{ - - } - - - - - - \newlength{\ - - } - - \setlength{\ - - }{ - - } - - - - - - - \long - - \def\ - - - - - - - - - - - { - - } - - - {% - - } - - - - - - - \renewenvironment{ - - - \newenvironment{ - - - - } - - - [ - - ] - - {% - - } - {% - - } - - - - - - \renewcommand{\ - - - \newcommand{\ - - - - } - - - [ - - ] - - [ - - ] - - - - - - { - - } - - - {% - - } - - - - - - \makeatother - - - - - - - - - Creating - - ' - - ' (v - - . - - ) with checksum - - . - - - - - - - - - - % \def\fileversion{ - - . - - } % \def\filedate{ - - - - - - - } - - % \title{The - \textsf{ - - } \LaTeXe\ - - - document class - - - - - - \thanks{% % This document corresponds to \textsf{ - - } % \textit{v.}\ \fileversion, dated \filedate.} - - \enspace\thanks{% % Development has been supported by - - - , - - and - - - - - .} - - % \\[1em]\Large % - - - % \\[1ex]\large % - - - } - - - - - - - % \author{ - - - - - - - - - - \\\normalsize(\url{ - - }) - - - - % \and % - - - } % \maketitle - - - - - - \textsc{ - - } - - - - \\\normalsize - - - - - - - - - - \\[-.25ex]\normalsize - - - - - - - - - - - - - % - - - - - - - - - - - - % - - - - - \label{ - - } - - - - { - - - - - - - - - - - - - - - - - \par - - - - - - - - - - ; - - - - . - - - - - - - } - - - - - - - - - - - - % \iffalse %% - - % \fi - - - - - - - - - - - - - - - - % \clearpage\section*{ - - }\addcontentsline{toc}{subsection}{ - - } - - - - % \clearpage\null\vfill\begingroup\centering - - - - - \label{ - - } - - - - - - % \par\endgroup\vfill - - - - - - - - - - - - - - - - - % \addtolength{\revmarg}{\widthof{\LabelFont{ - - }}} -% \newgeometry{left=\revmarg} - - - - - - - % \StopEventually{\label{endcode} -% \clearpage -% \newgeometry{left=3cm} -% \addcontentsline{toc}{section}{Change History} -% \label{ - - } -% \PrintChanges -% \clearpage -% \label{codeindex} -% \addcontentsline{toc}{section}{Index} -% \PrintIndex} - - - - - - - % \setlength{\revmarg}{1in} -% \addtolength{\revmarg}{\widthof{\MacroFont{ - - }}} -% \newgeometry{left=\revmarg} - - - - - - % \label{ - - } -% \iffalse -%<* - - > -% \fi - - - - - % \iffalse -%</ - - > -% \fi - - - - % \appendix - - % \newgeometry{left=3cm} - - - - % \iffalse %<* - - > - - - - %</ - - > % \fi - - - - - - - - - - - - - - % \Finale - - - - - - - % \subsection*{Acknowledgments} - - \label{ - - } - - - - - - - - - - - - - - % \iffalse -%<* - - > -% \fi - - - - - % \clearpage - % \section - - [ - - ] - - { - - - ~--- - - - } - - \label{ - - } - - - - % \iffalse %% - - % \fi - - - - - - - - - % \iffalse -%</ - - > -% \fi - - - - - - - - - % \appendix - - - - % \iffalse -%<* - - > -% \fi - - - % \clearpage -% \section{ - - } - - \label{ - - } - - - - % \iffalse %% - - % \fi - - - - - - % \begin{macrocode} \NeedsTeXFormat{ - - }[ - - ] \Provides - - - Package - - - Class - - - { - - }[ - - - - - - - - v - - . - - - - - - : - - - - - - - LaTeX2e - - - - - LaTeX - - - - - TeX - - - - - - - ] % \end{macrocode} - - - - - % \iffalse -%</ - - > -% \fi - - - - - - - - - - - % \clearpage - - % \subsection{ - - } - - \label{ - - } - - - - % \iffalse %% - - % \fi - - - - - - - - - - - - - - % \subsubsection{ - - } - - \label{ - - } - - - - % \iffalse %% - - % \fi - - - - - - - - - - - - - - % \paragraph{ - - - } - - \label{ - - } - - - - - - - - - - - - - - - % \subparagraph{ - - - \thinspace: - - } - - \label{ - - } - - - - - - - - - - - - - - %\iffalse -%% -%% Packages required -%% -% \fi -% \ - - - clearpage % \section - - - subsection - - - subsubsection - - - paragraph - - - subparagraph - - - - WARNING: - - is an unidentifiable place to declare packages - - message{Unidentifiable place to declare packages} - - - { - - - - - - Packages loaded - - - }\label{ - - } - - - - - - - - % - - - WARNING: these packages were listed in a - - element of the master document that was not flagged as belonging to this - - (xml:id=" - - "). - - % WARNING: these packages were listed in -% a \verb` - - ` of the master document that was not flagged -% as belonging to this - - (\verb`xml:id=" - - "`). - - - - - - - - % \subsection*{ - - } - - \label{ - - } - - - - - - - % \begin{quotation} - \small\noindent - - - % \hfill\begingroup - - \parfillskip=0pt\par\endgroup - - % \end{quotation} - - - - % \par\begingroup\fboxsep1em\centering % \ - - - shadowbox - - - fbox - - - {\begin{minipage}{ - - - - - - 0.8 - - - \columnwidth}\sffamily -% \raggedright\parindent0pt\parskip=.5\baselineskip - - % \end{minipage}}\par\endgroup - - - - % \subsubsection*{\sffamily - - } - - - - % \par\raggedleft - - \par - - - - - - - % \begin{ - - }{ - - \ - - - } - - % \end{ - - } - - - - - - - - - - - % \subsubsection{ - - } - - - - - - - % \subsection{ - - } - - - - - % \paragraph{ - - - } % \begin{option}{ - - } % - - - - - - - in - - - - ( - - ) - - - ; - - % using the - - - citation format % from the \verb` - - .bst` \BibTeX\ style - - with the - - - and - - \textsf{ - - } - - package - - s - - - - - (confirmed by \url{ - - }) - - - (unconfirmed) - - - - - . % \begin{macrocode} \DeclareOption{ - - }{% - - - \ - - - [] - - { - - - } - - - \@usebib - - [ - - - , - - - - ] - - { - - }{ - - }{} - - - } - % \end{macrocode} -% \end{option} - - - - - - - - - - - - - - - - - - - / - - - - - - - - - - - - - - - - - - - - - - - - - - - - - % \iffalse -%% v - - - - - - - - - - - - - % \fi - % \changes{v - - }{ - - - - - - - - - }{ - - } - - - - - - - - - - % \begin{macrocode} - - - - - % \end{macrocode} - - - - % \iffalse -%<*ignore> -% \fi -% \begin{Verbatim}[frame=single,framesep=1em,fontsize=\small,commandchars=\\\{\} - - ,label= - - ,title={ - - } - - ] - - % \end{Verbatim} -% \iffalse -%</ignore> -% \fi - - - - - % \iffalse -%<*ignore> -% \fi -% \begin{Verbatim}[frame=single,framesep=1em,fontsize=\small] - - -% \end{Verbatim} -% \iffalse -%</ignore> -% \fi - - - - - - - - - - - - - - - - % \lstinputlisting[firstline= - - - - - - 1 - - - - ,lastline= - - - - - - - % \iffalse -%<*ignore> -% \fi - \begin{lstlisting}[ - - - - - , - - - basicstyle= - - - \fontsize{ - - }{ - - }\selectfont - - - - - - \color{Black}\ttfamily, - - - language= - - - {[LaTeX]TeX} - - - {[DocBook]XML} - - - - - - - - ,frame=single,framesep=1em - - - - ,emphstyle= - - - - ,emph={ - - - - - - , - - - - - - } - - - - ,label= - - - ] - - - - - { - - } - - - - - - - - - - - - - - - - - - - \end{lstlisting} - % \iffalse -%</ignore> -% \fi - - - - - - \emph{ - - } - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - % \begin{table} - - [ - - ] - - \small\sffamily - - - % \par\bigskip\footnotesize - - - % \end{table} - - - - - - % \caption{ - - } - - \label{ - - } - - \medskip - - - - % \par\medskip{\sffamily\small - - \label{ - - } - - - - % } - - - - % \begingroup - - % \centering % \begin{tabular}{ - - - - - - @{} - - - % % - - - - - % % - - - - - - - @{} - - - } - - - % \hline - - - - % \end{tabular} - - - % \scriptsize -% \renewcommand{\labelenumi}{\itshape\alph{enumi}\upshape)} -% \begin{enumerate}[noitemsep] - - % \item The \texttt{ - - } option - - - - % \end{enumerate} -% \setcounter{fnote}{0} - - % \par\endgroup - - - - - - - - >{ - - - \raggedright{} - - - \raggedleft{} - - - \centering{} - - - - - - \prestrut - - \arraybackslash - - } - - - - - - - - - - - - - p - - - { - - - - - \columnwidth - - - - - - } - - - - - - - - d - - - - - - - - - <{ - - \poststrut\arraybackslash} - - - - - [2pt]\hline - - - - % - - \vstrut - - - - - - - - - - - - - - - - - - % - - - \fnote{} - - - - &% - - - % - - - - - - - - - - - - - - - - ; - - - - - - - &% - - - - - - % - - - \\\hline[.1pt]% - - - - % - - - [2pt]\hline % - - - - \\ - - - [2pt]\hline\vstrut - - - [2pt]\hline - - - - - - - - - & - - - \multicolumn{ - - - - - - 1 - - - }{ - - - @{} - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @{} - - }{\sffamily\bfseries - - } - - - - - & - - - \multicolumn{ - - }{ - - @{} - - - - - - - - - - - - - - - - - - - - @{} - - }{ - - - - \llap{\normalfont - - } - - - - \vstrut\bfseries - - - - - \llap{ - - - { - - } - }% % - - \multirow{ - - }{ - - }{ - - - - - {} - - - - - \hbox to - - { - - } - - - - - - - } - - - } - - - - - - % \clearpage - - % \begin{figure} - - [ - - ] - - \small\sffamily\centering - - % \end{figure} - - % \clearpage - - - - - % \begin{center} - - % \end{center} - - - - - % \fbox{\vbox{% -% \advance\hsize by-2\fboxsep\advance\hsize by-2\fboxrule - - - - % }} - - - - - - - - - - % \quad\vrule\quad - - - % \\ - - - - - - - - - - - - - - % \centering - - - % \flushright - - - - % \fbox{% - - - - - - % \includepdf - - - % \includegraphics - - - [ - - - - - - width= - - - - \columnwidth - - - - - - - - height= - - - - \textheight - - - - - - - - width=\columnwidth - - - ] - { - - } - - - % - - { - - - - - } - - - - IMAGE - - - - } - - - - - - - - % \begin{itemize} - - [noitemsep] - - - - % \end{itemize} - - - - - - - - - - - - % - - - - - - - \begin{multicols}{2} - - - - \noindent\textbf{ - - } - - - - \label{ - - } - - - \begin{enumerate - - - * - - } - - [ - - - label=\emph{\alph*}) - - - - - , - - resume - - - - - , - - noitemsep - - - - - , - - start= - - - ] - - - - - - % \end{enumerate - - - * - - } - - - - - - % \end{multicols} - - - - - % \begin{description}[style=unboxed - - ,noitemsep - - ] - - % \end{description} - - - - % \begin{multicols}{2} - - [\paragraph*{ - - }] - - \begin{itemize}[noitemsep] - - % \end{itemize} -% \end{multicols} - - - - { - - \fontencoding{ - - } - - - - - - \sffamily - - - \rmfamily - - - \ttfamily - - - \fontfamily{ - - } - - - - - - - - \itshape - - - \scshape - - - \fontshape{ - - } - - - - - - - - \bfseries - - - \fontseries{ - - } - - - - \selectfont - - } - - - - - { - - } - - - - - - - - - - % and - - - % or - - - - % \item - - - - [ - - ] - - - - \leavevmode\llap{ - - \thinspace} - - - - - - - - - \label{ - - } - - - - - - - - - - % \item[ - - - \thinspace: - - ] - - \label{ - - } - - - - - - - {\normalfont\itshape - - } - - - - - \DescribePackage{ - - - - - - - - - } - - - \textsf{ - - - - - - - - - } - - - - \textsf{ - - } - - - - \emph{ - - } - - \thinspace( - - ) - - - - - \emph{ - - - - - - - - - } - - \cite{ - - } - - - - - \emph{ - - \textbf{ - - - - } - - } - - - - - - \Describe - - - Element - - - Attribute - - - AttributeValue - - - Entity - - - Error - - - { - - } - - \texttt{ - - - " - - - \& - - - - - - " - - - ; - - - } - - \thinspace{} - - - - - \DescribeFunction{ - - }\texttt{ - - } - - - - \DescribeError{ - - }\textsf{ - - } - - - - \DescribeColour{ - - }\texttt{ - - } - - - - \DescribeTemplate{ - - }\texttt{ - - } - - - - \texttt{ - - } - - - - - \DescribeOption{ - - } - - - - \oarg{ - - } - - - \marg{ - - } - - - - \textbf{\texttt{ - - - - - - - : - - }} - - - - - - \includegraphics - - [ - - ] - - { - - } - - - - - - \index{ - - ! - - - - - - } - - - - - - - - - - - - - . - - - - - - - - - - - - - - - - - - - - - - ~( - - - - - )\index{ - - |see{ - - }}\index{ - - |textbf} - - - - - - - - - - - - - - - - - - - - - \protect - - \index{ - - } - - - - - - - - - - - - - - - - - - } - - - - \textsuperscript{ - - } - - - - \textsc{ - - } - - - - - - - - \DescribeEnv{ - - } - - \texttt{ - - } - - \oarg{ - - } - - - \marg{ - - } - - - - - - \DescribeClass{ - - } - - \textsf{ - - } - - \oarg{ - - } - - - \marg{ - - } - - - - - - - - - \DescribeMacro{\ - - - - - - - - - } - - - - - - \llap{$\star$\enspace} - - - - \texttt{\textbackslash{} - - } - - - - - - - - - - - - - - - - - - - - - - - - \oarg{ - - } - - - \marg{ - - } - - - - - - - - - - | - - - + - - - ` - - - - - - - - - - \verb - - - \ - - - - . - - - - - - - \verb - - - \ - - - - . - - - - - - - - - - Warning: verbatim in - - / - - / - - for " - - " - - \url{ - - } - - - - - - - - \url{ - - } - - - - {\ttfamily{} - - \textbackslash{} - - - - . - - - } - - - - {\ttfamily{} - - \textbackslash{} - - - - . - - - } - - - - - - - - \footnote{% - - } - - - - - - - \footnote{\url{ - - }} - - - \url{ - - - : - - - } - - - - at \textlangle\verb` - - `\textrangle{} - - - - - - {\color{blue}\uline{ - - }} - - - - - - - - \textbf{\emph{ - - }}\index{ - - |textbf} - - - - - - \cjktext{ - - } - - - - { - - - } - - - \foreignlanguage{ - - }{ - - - \emph{ - - } - - - - - - } - - - \emph{ - - } - - - - - - \begin{Sbox}\begin{minipage}{.9\columnwidth}\sffamily - - - \end{minipage}\end{Sbox}{\fboxsep1em\centering\fbox{\TheSbox}\par} - - - - - {\bfseries - - } - - - - ` - - ' - - - - - - - - \url{ - - } - - - - - - - - - | - - - + - - - ` - - - - - - - - {\ttfamily\itshape - - } - \verb - - - - {\itshape - - } - - - - - - - - - \Describe - - - { - - } - - - - - - - - - - - - - - - - - `\textbf{ - - }', the - - - - first - - - last - - - \ordinal - - string - - num{ - - } - - - item in the list - - in - - - - - the - - - - first - - - last - - - \ordinal - - string - - num{ - - } - - - item in the list - - in - - - - - - - step - - - item - - - ~\ref{ - - } - - - - - above - - - below - - - - - in the list on p.\thinspace\pageref{ - - } - - - - - - the list ` - - ' in - - - - the table - - - - the code example - - - - - - \vpageref - - - - - - - \vref - - - - - - range - - { - - } - - { - - } - - - - ( - - ) - - - - - - - \textsf{\bfseries - - } - - - - - \menusep - - \textsf{ - - } - - - - - \menusep - - \textsf{\itshape - - } - - - - {\fboxsep2pt\fbox{\sffamily - - }} - - - - {\fboxsep2pt\ovalbox{\sffamily - - }} - - - - - - - - - - - - - - - default: - - (" - - ") - - - - - - - - - - - - - - - - - - ` - - ' - - - \emph{ - - } - - - - - - - - - - - - - - - - - - - - - - - - \cite - - [ - - - p - - .\thinspace - - - -- - - - - - , - - - - ] - - { - - } - - - - - - - - - % Extracted from - - .xml - -% - - . - - is copyright © - - - - - - - - - - - - - - - - - - - - - - - by - - - - - - - < - - > - % -% This work may be distributed and/or modified under the -% conditions of the LaTeX Project Public License, either -% version 1.3 of this license or (at your option) any later -% version. The latest version of this license is in: -% -% http://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'. -% - - - - < - - > - % -% This work may not be copied or re-used without the express -% written permission of the copyright holder[s]. Access to this -% work is restricted to the copyright holder[s] and their -% authorised employees, contractors, or agents. -% - - - % The current maintainer of this work is - - - - - - - < - - - - - - - - < - - - - > - % -% This work consists of the files - - .dtx and - - .ins, -% the derived file - - . - - , and any ancillary files listed -% in the MANIFEST. - - - - - - 0 - - - - - - # - - - - - - - - - - - - - - - .ins - - - % - - - ins - - - % -\input docstrip.tex -\keepsilent -\usedir{tex/latex/ - - } -\preamble - - - - - - - - \endpreamble - - \generate{ - - \file{ - - . - - }{\from{ - - .dtx}{ - - }}% - - - - - - \usepreamble\ - - preamble\usepostamble\ - - postamble - - - \usepreamble\empty\usepostamble\empty - - - \file{ - - }{\from{ - - .dtx}{ - - }}% - - - - - - - \usepreamble\ - - preamble\usepostamble\ - - postamble - - - - - - \file{ - - }{\from{ - - .dtx}{ - - }}% - - - - - - - \usepreamble\ - - preamble\usepostamble\ - - postamble - - - \usepreamble\empty\usepostamble\empty - - - \file{ - - }{\from{ - - .dtx}{ - - }}% - - } -\obeyspaces -\Msg{********************************************************} -\Msg{** **} -\Msg{** Read the documentation before using this - - - - - . **} -\Msg{** **} -\Msg{********************************************************} -\endbatchfile - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - % - - - - - - - - - - - - - % - - - - - - - - - - \_ - - - - - - - - - - - - - #! /bin/bash -# -# Bourne shell script to build the - - - - file and documentation -# -java -jar - - -o: - - .dtx - - .xml - - /db2dtx.xsl processor= - - cpdir= - - appdir= - - -yes|pdflatex - - .ins -pdflatex - - .dtx - - bibtex - - awk -f - - /decommentbbl.awk - - .bbl > - - .bdc mv - - .bdc - - .bbl pdflatex - - .dtx - - makeindex -s gind.ist -o - - .ind - - .idx -makeindex -s gglo.ist -o - - .gls - - .glo -pdflatex - - .dtx - - - - - - - -f - - - - -o - - - - - - - - - . - - - - - - - - - - - - - - - - - - - - - . - - - - - .dtx - - - - . - - - - - - - > - - - - - - echo Copying files into dev tree... - - mkdir -p doc/latex/ - - - mkdir -p source/latex/ - - - mkdir -p tex/latex/ - - - - cp README MANIFEST - - .pdf - doc/latex/ - - - - cp - - .dtx - - .ins - source/latex/ - - - - cp - - . - - - tex/latex/ - - - - - cp - - - tex/latex/ - - - - - - cp - - - source/latex/ - - - - - echo Zipping up files from dev tree... - zip -r --exclude=*.svn* --exclude=*.DS_Store* - - - - - . - - .tds.zip doc/latex/ - - source/latex/ - - tex/latex/ - - - echo Zipping up plain CTAN version... - zip - - - - - . - - .zip README MANIFEST - - .dtx - - .ins - - .pdf - - . - - - - - - - - - - - . - - .tds.zip - - echo Installing working copy... - unzip -o -d - - - - - - - . - - .tds.zip - - - - - - - - - - - - - % \iffalse - - - % \begin{macrocode} - - - %<* - - > - - %</ - - > - - - % \fi - - - % \end{macrocode} - - - - - - - - - - - - LaTeX2e - - - - - - - - - LaTeX - - - - - - - - - TeX - - - - - - - - - - - - - diff --git a/support/classpack/db2plaintext.xsl b/support/classpack/db2plaintext.xsl deleted file mode 100644 index ec518d7b8f..0000000000 --- a/support/classpack/db2plaintext.xsl +++ /dev/null @@ -1,513 +0,0 @@ - - - - - - - - - 72 - - - - - - - - - - - - - %% - - - - - - - - - - - - - - - - - - - %% - - - - - - - - - - - - - - - - - - - - - %% - - - - - - - - - - - - - - - - - . - - - - - - %% - - - - - - - - - - - - - - - - - . - - . - - - - - - %% - - - - - - - - - - - - - - - - WARNING: - - - - %% - - - - ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %% - - - - - - - * - - - - - - - - - - - - - - - - - - - - - - - %% - - ! - - - - - %% - - ! - - - - - - - - - The following need attention: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - " - - " - - - - [ - - ] - - - - - \ - - - - - - - - - - - - - - - - - ( - - - - - - - - , - - - & - - - - - et al - - , - - - ) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/support/classpack/decommentbbl.awk b/support/classpack/decommentbbl.awk deleted file mode 100644 index 0ceb4d7f36..0000000000 --- a/support/classpack/decommentbbl.awk +++ /dev/null @@ -1,37 +0,0 @@ -# decommentbbl.awk -# -# This awk(1) script catenates consecutive lines of a BiBTeX-produced -# .bbl file which end in a comment character (removing the comment -# character in the process) because the default % comment character -# gets misinterpreted by the ltxdoc package when building class or -# package files. -# -# Copyright © 2008-2012 Silmaril Consultants -# Available under the terms of the LaTeX Project Public License -# as part of the classpack development package -# Peter Flynn 2010-10-14 -# -###################################################################### -# -# Read every line of the file into an array - -{ - line[NR]=$0; -} - -###################################################################### -# -# At the end, go through the array; if a line ends with a % sign, -# catenate it to the buffer, omitting the percent sign itself; -# otherwise, output the buffer and zero it for further use. - -END { - for(i=1;i<=NR;++i) { - if(substr(line[i],length(line[i]))=="%") { - buffer=buffer substr(line[i],1,length(line[i])-1); - } else { - print buffer line[i];buffer=""; - } - } -} - diff --git a/support/classpack/doctexbook.dtd b/support/classpack/doctexbook.dtd deleted file mode 100644 index 8d144373d5..0000000000 --- a/support/classpack/doctexbook.dtd +++ /dev/null @@ -1,63 +0,0 @@ -%% -%% This is file `doctexbook.dtd', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% classpack.dtx (with options: `savedtd') -%% This file was generated from an XML master source. -%% Amendments and corrections should be notified to the -%% maintainer for inclusion in future versions. -%% -%% The XML vocabulary -%% -%% There are currently no changes to the DocBook element structure. -%% -%% The DTD is a driver implementing a number of entity declarations to -%% ease the transformation to LaTeX. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - %db5dtd; - -\endinput -%% -%% End of file `doctexbook.dtd'. diff --git a/support/classpack/lppl.xml b/support/classpack/lppl.xml deleted file mode 100644 index 1c405b1568..0000000000 --- a/support/classpack/lppl.xml +++ /dev/null @@ -1,541 +0,0 @@ - - - - - - -]> - - The &LaTeX; Project Public License -
- Everyone is allowed to distribute verbatim copies of this - license document, but modification of it is not allowed. -
- - Preamble - The &LaTeX; Project Public License (LPPL) - is the primary license under which the &LaTeX; kernel and the - base &LaTeX; packages are distributed. - You may use this license for any work of which you hold the - copyright and which you wish to distribute. This license may be - particularly suitable if your work is &TeX;-related (such as a - &LaTeX; package), but it is written in such a way that you can - use it even if your work is unrelated to &TeX;. - The section , below, gives instructions, examples, and - recommendations for authors who are considering distributing - their works under this license. - This license gives conditions under which a work may be - distributed and modified, as well as conditions under which - modified versions of that work may be distributed. - We, the &LaTeX3; Project, believe that the conditions below - give you the freedom to make and distribute modified versions of - your work that conform with whatever technical specifications - you wish while maintaining the availability, integrity, and - reliability of that work. If you do not see how to achieve your - goal while meeting these conditions, then read the document - cfgguide and modguide in the base &LaTeX; - distribution for suggestions. - - - Definitions - In this license document the following terms are used: - - - Work - - Any work being distributed under this License. - - - - Derived Work - - Any work that under any applicable law is derived from - the Work. - - - - Modification - - Any procedure that produces a Derived Work under any - applicable law—for example, the production of a file - containing an original file associated with the Work or a - significant portion of such a file, either verbatim or - with modifications and/or translated into another - language. - - - - Modify - - To apply any procedure that produces a Derived Work - under any applicable law. - - - - Distribution - - Making copies of the Work available from one person to - another, in whole or in part. Distribution includes (but - is not limited to) making any electronic components of the - Work accessible by file transfer protocols such as - FTP or HTTP or by - shared file systems such as Sun's Network File System - (NFS). - - - - Compiled Work - - A version of the Work that has been processed into a - form where it is directly usable on a computer system. - This processing may include using installation facilities - provided by the Work, transformations of the Work, copying - of components of the Work, or other activities. Note that - modification of any installation facilities provided by - the Work constitutes modification of the Work. - - - - Current Maintainer - - A person or persons nominated as such within the Work. - If there is no such explicit nomination then it is the - Copyright Holder under any applicable - law. - - - - Base Interpreter - - A program or process that is normally needed for - running or interpreting a part or the whole of the - Work. - A Base Interpreter may depend on external components - but these are not considered part of the Base Interpreter - provided that each external component clearly identifies - itself whenever it is used interactively. Unless - explicitly specified when applying the license to the - Work, the only applicable Base Interpreter is a - &LaTeX;-Format or in the case of files - belonging to the &LaTeX;-format a program - implementing the `&TeX; language'. - - - - - - Conditions on Distribution and Modification - - - Activities other than distribution and/or modification - of the Work are not covered by this license; they are - outside its scope. In particular, the act of running the - Work is not restricted and no requirements are made - concerning any offers of support for the Work. - - - You may distribute a complete, unmodified copy of the - Work as you received it. Distribution of only part of the - Work is considered modification of the Work, and no right to - distribute such a Derived Work may be assumed under the - terms of this clause. - - - You may distribute a Compiled Work that has been - generated from a complete, unmodified copy of the Work as - distributed under Clause  above, as - long as that Compiled Work is distributed in such a way that - the recipients may install the Compiled Work on their system - exactly as it would have been installed if they generated a - Compiled Work directly from the Work. - - - If you are the Current Maintainer of the Work, you may, - without restriction, modify the Work, thus creating a - Derived Work. You may also distribute the Derived Work - without restriction, including Compiled Works generated from - the Derived Work. Derived Works distributed in this manner - by the Current Maintainer are considered to be updated - versions of the Work. - - - If you are not the Current Maintainer of the Work, you - may modify your copy of the Work, thus creating a Derived - Work based on the Work, and compile this Derived Work, thus - creating a Compiled Work based on the Derived Work. - - - If you are not the Current Maintainer of the Work, you - may distribute a Derived Work provided the following - conditions are met for every component of the Work unless - that component clearly states in the copyright notice that - it is exempt from that condition. Only the Current - Maintainer is allowed to add such statements of exemption to - a component of the Work. - - - If a component of this Derived Work can be a direct - replacement for a component of the Work when that - component is used with the Base Interpreter, then, - wherever this component of the Work identifies itself to - the user when used interactively with that Base - Interpreter, the replacement component of this Derived - Work clearly and unambiguously identifies itself as a - modified version of this component to the user when used - interactively with that Base Interpreter. - - - Every component of the Derived Work contains - prominent notices detailing the nature of the changes to - that component, or a prominent reference to another file - that is distributed as part of the Derived Work and that - contains a complete and accurate log of the - changes. - - - No information in the Derived Work implies that any - persons, including (but not limited to) the authors of - the original version of the Work, provide any support, - including (but not limited to) the reporting and - handling of errors, to recipients of the Derived Work - unless those persons have stated explicitly that they do - provide such support for the Derived Work. - - - You distribute at least one of the following with - the Derived Work: - - - A complete, unmodified copy of the Work; if your - distribution of a modified component is made by - offering access to copy the modified component from - a designated place, then offering equivalent access - to copy the Work from the same or some similar place - meets this condition, even though third parties are - not compelled to copy the Work along with the - modified component; - - - Information that is sufficient to obtain a - complete, unmodified copy of the Work. - - - - - - - If you are not the Current Maintainer of the Work, you - may distribute a Compiled Work generated from a Derived - Work, as long as the Derived Work is distributed to all - recipients of the Compiled Work, and as long as the - conditions of Clause , above, are met - with regard to the Derived Work. - - - The conditions above are not intended to prohibit, and - hence do not apply to, the modification, by any method, of - any component so that it becomes identical to an updated - version of that component of the Work as it is distributed - by the Current Maintainer under Clause , above. - - - Distribution of the Work or any Derived Work in an - alternative format, where the Work or that Derived Work (in - whole or in part) is then produced by applying some process - to that format, does not relax or nullify any sections of - this license as they pertain to the results of applying that - process. - - - - - A Derived Work may be distributed under a different - license provided that license itself honors the - conditions listed in Clause  above, in - regard to the Work, though it does not have to honor the - rest of the conditions in this license. - - - If a Derived Work is distributed under a different - license, that Derived Work must provide sufficient - documentation as part of itself to allow each recipient - of that Derived Work to honor the restrictions in - Clause  above, concerning - changes from the Work. - - - - - This license places no restrictions on works that are - unrelated to the Work, nor does this license place any - restrictions on aggregating such works with the Work by any - means. - - - Nothing in this license is intended to, or may be used - to, prevent complete compliance by all parties with all - applicable laws. - - - - - No Warranty - There is no warranty for the Work. Except when otherwise - stated in writing, the Copyright Holder provides the Work - as is, without warranty of any kind, either - expressed or implied, including, but not limited to, the implied - warranties of merchantability and fitness for a particular - purpose. The entire risk as to the quality and performance of - the Work is with you. Should the Work prove defective, you - assume the cost of all necessary servicing, repair, or - correction. - In no event unless required by applicable law or agreed to - in writing will The Copyright Holder, or any author named in the - components of the Work, or any other party who may distribute - and/or modify the Work as permitted above, be liable to you for - damages, including any general, special, incidental or - consequential damages arising out of any use of the Work or out - of inability to use the Work (including, but not limited to, - loss of data, data being rendered inaccurate, or losses - sustained by anyone as a result of any failure of the Work to - operate with any other programs), even if the Copyright Holder - or said author or said other party has been advised of the - possibility of such damages. - - - Maintenance of The Work - The Work has the status author-maintained - if the Copyright Holder explicitly and prominently states near - the primary copyright notice in the Work that the Work can only - be maintained by the Copyright Holder or simply that it is - author-maintained. - The Work has the status maintained if there - is a Current Maintainer who has indicated in the Work that they - are willing to receive error reports for the Work (for example, - by supplying a valid e-mail address). It is not required for the - Current Maintainer to acknowledge or act upon these error - reports. - The Work changes from status maintained to - unmaintained if there is no Current Maintainer, - or the person stated to be Current Maintainer of the work cannot - be reached through the indicated means of communication for a - period of six months, and there are no other significant signs - of active maintenance. - You can become the Current Maintainer of the Work by - agreement with any existing Current Maintainer to take over this - role. - If the Work is unmaintained, you can become the Current - Maintainer of the Work through the following steps: - - - Make a reasonable attempt to trace the Current - Maintainer (and the Copyright Holder, if the two differ) - through the means of an Internet or similar search. - - - If this search is successful, then enquire whether the - Work is still maintained. - - - If it is being maintained, then ask the Current - Maintainer to update their communication data within one - month. - - - If the search is unsuccessful or no action to resume - active maintenance is taken by the Current Maintainer, - then announce within the pertinent community your - intention to take over maintenance. (If the Work is a - &LaTeX; work, this could be done, for example, by - posting to comp.text.tex.) - - - - - - - If the Current Maintainer is reachable and agrees to - pass maintenance of the Work to you, then this takes - effect immediately upon announcement. - - - If the Current Maintainer is not reachable and the - Copyright Holder agrees that maintenance of the Work be - passed to you, then this takes effect immediately upon - announcement. - - - - - If you make an intention announcement - as described in  above and after three - months your intention is challenged neither by the Current - Maintainer nor by the Copyright Holder nor by other people, - then you may arrange for the Work to be changed so as to - name you as the (new) Current Maintainer. - - - If the previously unreachable Current Maintainer becomes - reachable once more within three months of a change - completed under the terms of  - or , then that - Current - Maintainer must become or remain the Current Maintainer upon - request provided they then update their communication data - within one month. - - - A change in the Current Maintainer does not, of itself, - alter the fact that the Work is distributed under the - LPPL license. - If you become the Current Maintainer of the Work, you should - immediately provide, within the Work, a prominent and - unambiguous statement of your status as Current Maintainer. You - should also announce your new status to the same pertinent - community as in  - above. - - - Whether and How to Distribute Works under This - License - This section contains important instructions, examples, and - recommendations for authors who are considering distributing - their works under this license. These authors are addressed as - you in this section. - - Choosing This License or Another License - If for any part of your work you want or need to use - distribution conditions that differ - significantly from those in this license, then do not refer to - this license anywhere in your work but, instead, distribute - your work under a different license. You may use the text of - this license as a model for your own license, but your license - should not refer to the LPPL or otherwise - give the impression that your work is distributed under the - LPPL. - The document modguide in the base &LaTeX; - distribution explains the motivation behind the conditions of - this license. It explains, for example, why distributing - &LaTeX; under the GNU General Public - License (GPL) was considered inappropriate. - Even if your work is unrelated to &LaTeX;, the discussion in - modguide may still be - relevant, and authors intending to distribute their works - under any license are encouraged to read it. - - - A Recommendation on Modification Without - Distribution - It is wise never to modify a component of the Work, even - for your own personal use, without also meeting the above - conditions for distributing the modified component. While you - might intend that such modifications will never be - distributed, often this will happen by accident—you may - forget that you have modified that component; or it may not - occur to you when allowing others to access the modified - version that you are thus distributing it and violating the - conditions of this license in ways that could have legal - implications and, worse, cause problems for the community. It - is therefore usually in your best interest to keep your copy - of the Work identical with the public one. Many works provide - ways to control the behavior of that work without altering any - of its licensed components. - - - How to Use This License - To use this license, place in each of the components of - your work both an explicit copyright notice including your - name and the year the work was authored and/or last - substantially modified. Include also a statement that the - distribution and/or modification of that component is - constrained by the conditions in this license. - Here is an example of such a notice and statement: - -%%% pig.dtx -%%% Copyright 2005 M. Y. Name -%% -%% This work may be distributed and/or modified under the -%% conditions of the LaTeX Project Public License, either version 1.3 -%% of this license or (at your option) any later version. -%% The latest version of this license is in -%% http://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 Maintainer of this work is M. Y. Name. -%% -%% This work consists of the files pig.dtx and pig.ins -%% and the derived file pig.sty. - - Given such a notice and statement in a file, the - conditions given in this license document would apply, with - the Work referring to the three files - pig, pig, and pig (the last being generated - from pig using pig), the Base - Interpreter referring to any - &LaTeX;-Format, and both Copyright - Holder and Current Maintainer - referring to the person - M. Y. Name. - If you do not want the Maintenance section of - LPPL to apply to your Work, change - maintained above into - author-maintained. However, we recommend that - you use maintained as the Maintenance - section was added in order to ensure that your Work remains - useful to the community even when you can no longer maintain - and support it yourself. - - - Derived Works That Are Not Replacements - Several clauses of the LPPL specify - means to provide reliability and stability for the user - community. They therefore concern themselves with the case - that a Derived Work is intended to be used as a (compatible or - incompatible) replacement of the original Work. If this is not - the case (e.g., if a few lines of code are reused for a - completely different task), then clauses 6b and 6d shall not - apply. - - - Important Recommendations - - Defining What Constitutes the Work - The LPPL requires that distributions - of the Work contain all the files of the Work. It is - therefore important that you provide a way for the licensee - to determine which files constitute the Work. This could, - for example, be achieved by explicitly listing all the files - of the Work near the copyright notice of each file or by - using a line such as: - -%% This work consists of all files listed in manifest.txt. - - in that place. In the absence of an unequivocal list it - might be impossible for the licensee to determine what is - considered by you to comprise the Work and, in such a case, - the licensee would be entitled to make reasonable - conjectures as to which files comprise the Work. - - - -
diff --git a/support/classpack/prepost.xml b/support/classpack/prepost.xml deleted file mode 100644 index a61f0268df..0000000000 --- a/support/classpack/prepost.xml +++ /dev/null @@ -1,648 +0,0 @@ - - - - Commands to use before and after packages - - - - Allow infinitely-variable font scaling. - - - Adobe Avant Garde as the default sans-serif typeface. - - - Use the alternate MathDesign fonts for mathematics. - - - Bitstream Charter as the default typeface - - - Adobe Courier as the default monospace (typewriter) - typeface. - - - Collection of handwriting typefaces. - - - Sets the DejaVu typeface as the default. - - - Sets the DejaVu typeface as the default sans-serif typeface. - - - Sets the DejaVu typeface as the default serif typeface. - - - Add the AMS Euler calligraphic math letters. - - - Sans-serif typeface by Dalton Maag available free from - http://www.fontsquirrel.com/fonts/Aller - - - Provide for the American Mathematical Society's symbols - (see their documentation for details). - - - UTF-8 is the default character set, to allow for use of - any character in any writing system. Some characters are not - specified for all fonts, so may have to be specified - manually. - - - - - - \let\SavedShow\show - - - - - Extended font encoding to handle UTF-8. - - - - Selection of symbols by Martin Vogel, including the Euro - sign. - - - Adobe Helvetica as the default sans-serif typeface. - - - The updated Computer Modern typeface as the default. - - - - Knuth's manual font (as in - The &TeX;book), used for symbols. - - - Adobe Times New Roman as the default serif typeface, with - extended (non-Adobe) Times math. - - - Serif typeface by Robert Slimbach available under licence - from Adobe. - - - Provides Times, Helvetica, and Courier, but chiefly used - for its specially-narrowed Courier. - - - Provides the &METAFONT; and &METAPOST; logos. - - - - - Bibliographic commands and formatting for the American - Psychological Association journals. - - - \AtBeginDocument{\edef\ApaciteRestoreAtCode{\catcode`@=\the\catcode`@\relax}} - - - - - Provision for per-chapter bibliographies. - - - - Additional column formatting for tables. - - - - - condition - - - colwidth - - - char - m - - - char - b - - - - - Column formatting for decimal-aligned values - - - align - char - - - - - Add H&ers;J support and cultural changes for many - languages. - - - Required for the calculation of extra widths for margin - adjustment. - - - - Allows modifications to the layout of table and figure - captions. - - - An e-&TeX; toolbox for class and package authors - - - Allow the creation of a background watermark saying - DRAFT. - - - List variants: inline and compact. THIS REPLACES PARALIST - AND MDWLIST. - - - spacing - compact - - - - - spacing - compact - - - - - - - This provides round-cornered and drop-shadow boxes. - - - - - Do running headers and footers. - - - Add more robust verbatim facilities. - - - - Provides a more sophisticated casing function than the - default. - - - Allows redesigning of floats and creation of new float - types. - - - Allows for the automated formatting of ordinal - representations of numbers and counters as strings (eg first, - second, third, etc). - - - linkend - varlistentry - - - linkend - listitem - - - - - - - - Needed to allow resettable left margin to take account of - whatever the widest macro name is; and to adjust margins on - default base article package so that the document fits - acceptably on both A4 and Letter paper. Assuming a 25mm (1in) - margin, this means a text area of - \[\min\big\{8½″-2″\,\big\|\,210\mbox{mm}-2″\big\}× - \min\big\{9″-2″\,\big\|\,297\mbox{mm}-2″\big\}\]which I - calculate as 6.27″×9″ or 159mm\,×\,229mm. - - - - Package for establishing margins and text area. - - - - Provide for graphics (PNG, JPG, or PDF format (only) for - pdflatex; EPS format (only) for standard &LaTeX;). - - - fileref - - - - - Provides complex settings for making hypertext (clickable) - links in PDF and PS output for URIs, cross-references, and - bibliographic citations. - - - Allow detection of PDF or DVI mode. - - - Geometric symbols from the if - fonts. - - - Package to enable if--then--else conditional - processing. - - - Package to generate Greeked text - (actually cod-Latin) as a placeholder. - - - Provides syntactic fontification or formatting - (pretty-printing) of verbatim text according to - the computer language used. - - - - - Package for creating indexes. - - - - DEPRECATED: USE ENUMITEM. Mark Wooding's package for - compact lists. - - - Provides a mini (per-chapter or - per-section) Table of Contents. - - - Provides multi-column typesetting. - - - role - twocol - - - - - role - twocol - - - - - role - twocol - - - - - Provides multi-column typesetting. - - - morerows - - - - - Slanted fractions, even in math mode. - - - - DEPRECATED: USE ENUMITEM. Provides for in-line lists. - - - Creates paragraphs separated by white-space with no - indentation. - - - - Allow embedding of individual pages from another PDF - document. - - - format - pdf - - - - - Allow hyphenation in ragged setting. - - - Allows the section headings to be re-styled. - - - Provide 1½ or double line spacing. - - - Provides letter-spacing, strikeout, and underlining. - - - Additional commands for common symbols and punctuation. - - - University College Cork crest (restricted). - - - Underlining as an option (not - automatically replacing italics). - - - - - Handling of URI formatting. - - - - - - - - - methodsynopsis - href - - - - - University of Chicago reference and citation style. - - - xreflabel - chicago - - - - - Provides extended formatting of cross-references. - - - - Allow for multiple optional arguments. - - - Provide color. - - - - - - - - \AtBeginDocument{\ApaciteRestoreAtCode} - - - - - Provides extra documentation commands to - distinguish types of macro being defined. - - - - - \doxitem{Attribute}{attribute}{attributes} - \doxitem{AttributeValue}{attributevalue}{attribute values} - \doxitem{Class}{class}{classes} - \doxitem{Colour}{colour}{colours} - \doxitem{Counter}{counter}{counters} - \doxitem{DTD}{dtd}{DTDs/Schemas} - \doxitem{Element}{element}{element types} - \doxitem{Entity}{entity}{entities} - \doxitem{Error}{error}{errors} - \doxitem{Function}{function}{functions} - \doxitem[macrolike]{Length}{length}{lengths} - \doxitem{Mode}{mode}{mode} - \doxitem{Option}{option}{options} - \doxitem{Package}{package}{packages} - \doxitem{Template}{template}{templates} - - \newcommand{\LabelFont}[2][\relax]{\strut - {\fontencoding\encodingdefault - \fontfamily{lmtt}\fontseries{lc}\selectfont#1#2}\space} - - \def\PrintDescribeAttribute#1{\LabelFont{@#1}} - \def\PrintDescribeAttributeValue#1{\LabelFont[\itshape]{#1}} - \def\PrintDescribeClass#1{\LabelFont{#1}} - \def\PrintDescribeColour#1{\LabelFont[\color{#1}]{#1}} - \def\PrintDescribeCounter#1{\LabelFont{#1}} - \def\PrintDescribeDTD#1{\LabelFont{#1}} - \def\PrintDescribeElement#1{\LabelFont{<#1>}} - \def\PrintDescribeEntity#1{\LabelFont{\&#1;}} - \def\PrintDescribeError#1{\LabelFont[\color{Red}!]{#1}} - \def\PrintDescribeFunction#1{\LabelFont{#1}} - \def\PrintDescribeLength#1{\LabelFont{#1}} - \def\PrintDescribeMode#1{\LabelFont[\sffamily]{\textlangle#1\textrangle}} - \def\PrintDescribeOption#1{\LabelFont[\itshape]{#1}} - \def\PrintDescribePackage#1{\LabelFont{#1}} - \def\PrintDescribeTemplate#1{\LabelFont[\fontfamily{lmss}\fontseries{sbc}\selectfont]{#1}} - - - - - - - \setlist[description]{style=unboxed} - - - - - - - \AtBeginDocument{\let\show\SavedShow} - \DeclareUnicodeCharacter{9251}{\textvisiblespace} - - - - - - - \PrerenderUnicode{–} - \PrerenderUnicode{š} - \PrerenderUnicode{ć} - \PrerenderUnicode{Å} - - - - - Provides better formatting of listings, with syntactic - highlighting for &LaTeX; and other languages. - - - \lstdefinelanguage[DocBook]{XML} - {morekeywords={abstract,address,affiliation,annotation,arg,author, - book,chapter,classname,cmdsynopsis,command,constraintdef,contrib, - copyright,cover,date,email,emphasis,envar,filename,firstname, - footnote,guibutton,guilabel,guimenu,guimenuitem,guisubmenu, - holder,info,itemizedlist,listitem,literal,member,option, - orderedlist,orgdiv,orgname,package,para,parameter,part, - personname,phrase,procedure,productname,programlisting,quote, - refsection,remark,constructorsynopsis,methodparan,modifier, - funcparams,olink,bibliography,biblioentry,biblioset,subtitle, - artpagenums,volumenum,issuenum, - releaseinfo,replaceable,revdescription,revhistory,revision, - sect1,sect2,sect3,sect4,seg,seglistitem,segmentedlist,segtitle, - simplelist,step,surname,systemitem,tag,term,title,uri,userinput, - variablelist,varlistentry,wordasword,xref,year,xml:id,xlink:href},} - - \lstdefinelanguage[TEI]{XML} - {morekeywords={TEI.2,teiHeader,div2,head,p,num,val,xml:id}, - }[keywords,comments,strings] - - \lstloadlanguages{[LaTeX]TeX,[DocBook]XML,XSLT,bash,R} - \lstset{basicstyle=\small\color{Black}\ttfamily, - literate= - {Ö}{{\"O}}1 - {Ä}{{\"A}}1 - {Ü}{{\"U}}1 - {ß}{{\ss}}2 - {ü}{{\"u}}1 - {á}{{\'a}}1 - {é}{{\'e}}1 - {í}{{\'i}}1 - {ó}{{\'o}}1 - {ú}{{\'u}}1 - {ä}{{\"a}}1 - {ö}{{\"o}}1, - keywordstyle=\color{DarkGreen}\bfseries, - commentstyle=\color{Gray}\upshape, - stringstyle=\color{DarkRed}\upshape, - emphstyle=\color{MediumBlue}\itshape, - showstringspaces=false, - columns=fullflexible, - keepspaces=true} - - - - - - - \makeindex - - - - - - - \def\textonehalf{\ensuremath{\nicefrac12}} - - - - - - - \allsectionsfont{\sffamily} - \renewcommand*{\descriptionlabel}[1]{\hspace\labelsep - \sffamily\bfseries #1} - - - - - - - \vrefwarning - \labelformat{chapter}{Chapter~#1} - \labelformat{chapter}{\@chapapp~#1} - \labelformat{section}{section~#1} - \labelformat{subsection}{section~#1} - \labelformat{subsubsection}{section~#1} - \labelformat{paragraph}{section~#1} - \labelformat{figure}{Figure~#1} - \labelformat{table}{Table~#1} - \labelformat{item}{item~#1} - \renewcommand{\reftextcurrent}{elsewhere on this - page} - \def\reftextafter{on the - \reftextvario{next}{following} page} - - - - - There seems to be a bug in the T1 encoding of some package - (unidentified, but possibly xcolor) which - uses the command T1, which is an - impossibility (no digits allowed in command names). So we fake - it here to stop &LaTeX; complaining, by dropping the first - argument on the floor. - - - \@ifundefined{T}{\newcommand{\T}[2]{{\fontencoding{T1}\selectfont#2}}}{} - - - - - diff --git a/support/classpack/readme.xml b/support/classpack/readme.xml deleted file mode 100644 index f87175b79f..0000000000 --- a/support/classpack/readme.xml +++ /dev/null @@ -1,166 +0,0 @@ - - - - - - - - - - -]> - - README - This is the README file for the . - - Summary - - - - Normal installation - This is distributed as - a .tds.zip file (TDS is the &TeX; Directory - Structure, the standard layout for a modern &TeX; installation). - Install it on any personal TDS-compliant - &TeX; system by unzipping it into your personal &TeX; directory - (folder). This will put all the files into the right places, so - you can start using them immediately. - If you haven't yet created a personal &TeX; directory, see - below for details of what one is, and how to create it. - On a shared (multiuser) system like a server, unzip it into - the $TEXMFLOCAL directory instead (see - below), and run your &TeX; directory-indexing program (eg - texhash, - mktexlsr, - Update FNDB, etc) so that - everyone can use it. - If you are using an old non-TDS-compliant - system, see below under Manual Installation. - - Your personal &TeX; directory - This is a directory (folder) on single-user systems like - desktops and laptops where you put all your local manual - modifications, updates, and additions such as classes, - packages, and fonts. The name and location are fixed: - - - Apple Mac OS X - - ~/Library/texmf - - - - Unix and GNU/Linux - - ~/texmf - - - - MS-Windows 95/XP - - C:\texmf - - - - MS-Windows 2007 and above - - Computer\System\YOURNAME\texmf - - - - Create that folder if it does not already exist. - - If you are a Windows user running - <productname>MiK&TeX;</productname> - When you create the folder, you must add it to - MiK&TeX;'s list of supported - folders. Run the MiK&TeX; - Maintenance/Settings program, select the - Roots tab, and add the folder. You only - have to do this once. - Each time you add or remove software in your personal - &TeX; folder, you must also click on - the Update FNDB button in the - General tab. - - Unix (Mac and GNU/Linux) users do not need to (indeed, - should not) run their filename database indexer - (mktexlsr or - texhash) for files put in - your personal &TeX; directory. - - - Installation on shared systems - On multi-user systems (Unix-based), identify the shared - local directory tree with the command - kpsewhich -expand-var '$TEXMFLOCAL' - This will give you the location of the shared - texmf directory into which you must - install these files. - Do not forget to run the - texhash or - mktexlsr (filename indexer) program - after installation, otherwise the files will not be found by - &LaTeX; and nothing will work! - - - - Manual installation (non-TDS systems) - To install this software manually, unzip the zip file into a - temporary directory and move the . file from the - tex/latex/ directory to a location - (directory/folder) where &LaTeX; will find it on your system. - This referred to in some documentation as the - TEXINPUTS directory, although it - may be called something else on your system. - It is your responsibility to know where this - location is. See the question in the &TeX; - FAQ at - http://www.tex.ac.uk/cgi-bin/texfaq2html?label=inst-wlcf - for more information. If you do not know, or cannot find it, or - do not have access to it, your &TeX; system may be out of date - need replacing. - - Last resort - In an emergency, and as a last resort on unmanageable - systems, it is possible simply to put the . file in your current working - directory (the same folder as your .tex - file[s]). - While this may work, it is not supported, and may lead to - other resources (packages, fonts, etc) not being found. - - - - Usage - Make this the first line of your &LaTeX; document: - \documentclass[options]{} - \usepackage[options]{} - Read the documentation for the options available. The - documentation is distributed as a PDF - document in the zip file. You can also regenerate it by - typesetting the .dtx file with &LaTeX; (and - &BiBTeX; and makeindex) in the normal - way. - - - Bugs and TODO - No outstanding reported bugs at the time of this version. - - - Copyright - The following statement is included in the source code: - - - diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb index 964003f712..d1406dbc7c 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb @@ -26,7 +26,7 @@ depend container_split_src_files/1 depend frozen/0 depend minrelease/2016 depend release/2020 -depend revision/55214 +depend revision/55223 name 00texlive.image category TLCore @@ -55803,42 +55803,33 @@ catalogue-version 4.6 name classpack category Package -revision 33101 +revision 55218 shortdesc XML mastering for LaTeX classes and packages relocated 1 longdesc The package provides an experiment in using XML (specifically longdesc DocBook 5) to mark up and maintain LaTeX classes and packages. longdesc XSLT 2 styleheets generate the .dtx and .ins distribution files longdesc expected by end users. -containersize 1340 -containerchecksum ac5e26d91107bb0166040c990e586b6504eccad7da3ec084a49b141a1e0fee2725939f10deef5af1c4fe89396bc8fdef86f3bd2e8de9099cbed9700867700e8a -doccontainersize 355320 -doccontainerchecksum 6a22b10f5630a52ba85d113ddab8dacae0ab8148f62d4f9958bf3619c2d88f9a1f3c9778e41773d7b9d392ddc4d6a30dc3cb995a24072cc60b446896ca48707c -docfiles size=158 +containersize 2292 +containerchecksum 483d96aff1739fc2cdb63e9753fbb86ec93b493ee3d8d104e6089c791e4674d522a30e0dc747a48d8ffc6690452a147b2ad15a3a9cc676c641a9f6aca535563e +doccontainersize 143968 +doccontainerchecksum 6e30295ea5d7ff19f47d4144a3ea6eadd85d02a80023b426675efc75cd2867e3c79b60a8210f26cb732e5b0e70bcb856d96d7ad98a6165cfeaed64affa070bec +docfiles size=42 RELOC/doc/support/classpack/MANIFEST - RELOC/doc/support/classpack/README details="Readme" + RELOC/doc/support/classpack/README.md details="Readme" + RELOC/doc/support/classpack/VERSION RELOC/doc/support/classpack/classpack.pdf details="Package documentation" - RELOC/doc/support/classpack/db2bibtex.xsl - RELOC/doc/support/classpack/db2dtx.xsl - RELOC/doc/support/classpack/db2plaintext.xsl - RELOC/doc/support/classpack/decommentbbl.awk - RELOC/doc/support/classpack/doctexbook.dtd - RELOC/doc/support/classpack/getgis.sh - RELOC/doc/support/classpack/lppl.xml - RELOC/doc/support/classpack/prepost.xml - RELOC/doc/support/classpack/readme.xml - RELOC/doc/support/classpack/test.sh -srccontainersize 34876 -srccontainerchecksum 48762603b928b53cd9391908f2b0497e766ab516033a246aeeed014a99cd09a6e18f1feecd107067f58e3ecdad5ca37b4004890c4ec2e4bcce7e5f67e6d03724 -srcfiles size=33 +srccontainersize 21084 +srccontainerchecksum 59ab38731bbf23dcda81c02a297c69b5787ce89a69953697651c399dc86e0994db91e5d06358365e8a607a3f15b3a115ab93fcedd8bfc9b3e91946c428e5ba40 +srcfiles size=18 RELOC/source/support/classpack/classpack.dtx RELOC/source/support/classpack/classpack.ins -runfiles size=1 +runfiles size=2 RELOC/tex/latex/classpack/classpack.sty catalogue-ctan /support/classpack catalogue-license lppl1.3 -catalogue-topics class-supp -catalogue-version 0.77 +catalogue-topics class-supp package-devel +catalogue-version 1.19 name cleanthesis category Package @@ -56338,7 +56329,7 @@ binfiles arch=x86_64-solaris size=1 name cloze category Package -revision 41531 +revision 55221 shortdesc A LuaLaTeX package for creating cloze texts relocated 1 longdesc This is a LuaLaTeX package for generating cloze texts. The main @@ -56346,27 +56337,27 @@ longdesc feature of the package is that the formatting doesn't change longdesc when using the hide and show options. There are three commands longdesc and one environment to generate cloze texts: the commands longdesc \cloze, \clozefix, \clozefil, and the environment clozepar. -containersize 4276 -containerchecksum e66b5d9086d3d6ac39c0664cc4906b467413b919a64538371077bbd9088d80ea81276ce66a64ba29040068b9b73ec5990a7d4422608ce85b0d94e8b2ee3bdce2 -doccontainersize 222748 -doccontainerchecksum c21e8561c296efaa8b4c30044f6121736d58a98d910bf671d11f1931d29ddd0d626bca69ab6f50225a3cb588346877b76ec43426822a869e72e266ee5d65cd5e -docfiles size=60 +containersize 5004 +containerchecksum 580cc07f328682e3ffd7d6853c8965051684afd1d9563f7b2c88c0bbf4271c1e50622d381fbe8d29115f62062a417f05148ac4cedc62f4a6438bb84583cdc25c +doccontainersize 242292 +doccontainerchecksum 56d6ef0aa5fdf2400efe8caf04d0063adf3a01571d2a3b54e075d9b03d2cb1505639f407fe12fecd4e260df343c3ef37fb9922f902598e62dc6f3e4ce8cd81d2 +docfiles size=65 RELOC/doc/lualatex/cloze/README details="Readme" RELOC/doc/lualatex/cloze/README.md RELOC/doc/lualatex/cloze/cloze.pdf details="Package documentation" -srccontainersize 15292 -srccontainerchecksum fe68d18164ef34259dcc42c4ec395b929c92d3758a8c9e911c2f20a136c2807ed229612db1efa6cb02704eac6924b9ac8b98742a546e271241013245d855e50a -srcfiles size=17 +srccontainersize 17268 +srccontainerchecksum 04bf2a05e83a65c33570eca10a4beb5d9c50378284477f5a9e726ca5facd6df1a9868f45c5d69062a53c9e8ad5fd1b5b67fb5c57fcf69a095c8f20da923158fa +srcfiles size=20 RELOC/source/lualatex/cloze/cloze.dtx RELOC/source/lualatex/cloze/cloze.ins -runfiles size=5 +runfiles size=6 RELOC/scripts/cloze/cloze.lua RELOC/tex/lualatex/cloze/cloze.sty catalogue-contact-repository https://github.com/Josef-Friedrich/cloze catalogue-ctan /macros/luatex/latex/cloze catalogue-license lppl1.3 catalogue-topics exam luatex -catalogue-version 1.2 +catalogue-version 1.4 name clrdblpg category Package @@ -248408,7 +248399,7 @@ binfiles arch=x86_64-solaris size=1199 name ptex2pdf category Package -revision 54191 +revision 55219 shortdesc Convert Japanese TeX documents to PDF longdesc The Lua script provides system-independent support of Japanese longdesc typesetting engines in TeXworks. As TeXworks typesetting setup @@ -248417,10 +248408,10 @@ longdesc of the ptex-based programs (ptex, uptex, eptex, platex, longdesc uplatex) followed by dvipdfmx. depend ptex2pdf.ARCH postaction script file=tlpkg/tlpostcode/ptex2pdf-tlpost.pl -containersize 7712 -containerchecksum 53d53e82eb94f1334bfdecaff755ec9f8b23878dec2e944254984a01f413266860ac2f9d24ffd15ea2624534c24f014db514c3467065f9769bfc4a685f132b4e +containersize 7832 +containerchecksum 7ec55143e6f4a1824953f73744edb85a4c4c9d6e4f96e2cad5886cf87209d0b2a4bd8d334b51c0ed296441e3ba9a9a870ae3e4dfaa5a7635c2c029181a5e16a8 doccontainersize 8640 -doccontainerchecksum ba2c0c911bc89efef3ab2086a2dbb4c32f1df369c36e47cd93804490986f90fa7158b69ebe7129f43fa43420b02097ba5ebe94d90f59c3d9b6cb0bf5301128c8 +doccontainerchecksum b90a2d25a2b83ff8af399ad29fd9a0cc52264f6e3dcce45b56c48e9e9c1b1fd93714b5af3f39cd152ebee268648f3cf0bf19e3c48f6e38e4aedd88a3de7cbc90 docfiles size=7 texmf-dist/doc/latex/ptex2pdf/COPYING texmf-dist/doc/latex/ptex2pdf/README.md details="Readme" @@ -248433,7 +248424,7 @@ catalogue-contact-repository https://github.com/texjporg/ptex2pdf.git catalogue-ctan /language/japanese/ptex2pdf catalogue-license gpl2 catalogue-topics compilation japanese -catalogue-version 20200307.0 +catalogue-version 20200520.0 name ptex2pdf.aarch64-linux category Package @@ -281221,7 +281212,7 @@ binfiles arch=x86_64-solaris size=1 name tex4ht category Package -revision 55208 +revision 55223 shortdesc Convert (La)TeX to HTML/XML longdesc A converter from TeX and LaTeX to SGML-based formats such as longdesc (X)HTML, MathML, OpenDocument, and DocBook, providing a @@ -281236,10 +281227,10 @@ longdesc restricted-syntax systems such as hyperlatex and gellmu. Note longdesc that CTAN no longer holds the definitive sources of the longdesc package: see the 'Readme' file. depend tex4ht.ARCH -containersize 867336 -containerchecksum 4f78e1e0ec46b1d7ab5ff4a4ede35c1a1771ce326f0ee4b890788489b0760e9e06ffef32ee3360d418458814ed5de80e733c9d23fc118f4f135423043513579a +containersize 867632 +containerchecksum d284710e93445f4f64f327bfa0bea8867092cc86ea24df0a9970fdc113f0f022c2340882b1e9b7226bae1ebc87b48139723f05cd6ab902d849f494911351d54b doccontainersize 61192 -doccontainerchecksum 5cdd49ac3f8d18d5e1b91902dc2f8784ec84955d764d71ac1be5a085af505dd61a769c976446816d4840afa923afeb2694bdcc703170ee14e5acaf6b3026c361 +doccontainerchecksum d4979b31b20d619916715033e1d7a0a8474d1c4b74133f461ae59da21b85c11554376c6f5ff73e70a794d25d5cc37e51c76c0be4499e0f91cfd5146cd22fb2cf docfiles size=195 texmf-dist/doc/generic/tex4ht/bugfixes.css texmf-dist/doc/generic/tex4ht/bugfixes.html @@ -281314,7 +281305,7 @@ docfiles size=195 texmf-dist/doc/generic/tex4ht/mn7.html texmf-dist/doc/generic/tex4ht/mn8.html texmf-dist/doc/generic/tex4ht/mn9.html -runfiles size=9045 +runfiles size=9081 texmf-dist/scripts/tex4ht/ht.sh texmf-dist/scripts/tex4ht/htcontext.sh texmf-dist/scripts/tex4ht/htcopy.pl @@ -289453,15 +289444,15 @@ docfiles size=592 name texlive-docindex category TLCore -revision 55196 +revision 55216 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 for longdesc the process. -containersize 388 -containerchecksum 3bff73d4b85ed940c0748db1c3962c5649c5fe6b1a0dde0b139f76b9c5e8b90115bbea0d034c1ead4387dd5ded8f26f74ea0143337918f332a5c0dcf0fa9bc43 -doccontainersize 162124 -doccontainerchecksum f82e62e16b610dbe7eb99571c80e6d6a794fe2b5674e80cc81b0561bc6d742d72b7e134b5a2ca38f4b4e1c68fc6a02063eed45eeaf1a2701f61ec52da7c2f301 +containersize 392 +containerchecksum d2f6d2ab28c152bb6afa8462a0c6966454b75ed9242241287d960efc6d786d2464231309d1e86004281815a756a0a645678a7903171a8e0d7d427245900eca42 +doccontainersize 162208 +doccontainerchecksum db427ec3a375415e672180932cb3b18c1e6ce476715b8cb875d92b7c48ab669282811644d4249bcf31b5581d4150a5064c6b360411281934ddc6a897c2e4644f docfiles size=325 doc.html @@ -302766,7 +302757,7 @@ catalogue-version 0.3.0 name toptesi category Package -revision 51743 +revision 55220 shortdesc Bundle for typesetting multilanguage theses relocated 1 longdesc This bundle contains everything needed for typesetting a @@ -302781,11 +302772,11 @@ longdesc more and more frequent thanks to the double degree programs of longdesc the European Community Socrates programs. Toptesi is designed longdesc to save the PDF version of a thesis in PDF/A-1b compliant mode longdesc and with all the necessary metadata. -containersize 19836 -containerchecksum 13176c395de6e5e6e52e21cc298ed5aabf0a68d42d90119bb1bbf9b85f99c26faa3e78f64f99ab9717d506950d22338b9df2094db0f503f50871e09d2b45a085 -doccontainersize 6205416 -doccontainerchecksum ca06bdd003084fa8bc11680f5d13ae6f0b333e81ac1ea57ef37959cb5c54933621c00f86ab2fe990b327198f28218eb60b1595fa50511c48625e35a9fa5c92e5 -docfiles size=2304 +containersize 20384 +containerchecksum 5ba960b5123c1e8e32b85b41000d571c9c908d52c1c445af0af2208e9daf5867d47a399bbbe4996b5b43f611cd9aa6839de3882c1b28cc0e28db29c25b767a3e +doccontainersize 6315844 +doccontainerchecksum cedb945ddcbe7df97a173c004a8f03dd0527eb89ad8c9e3e1153aba985c3599cf5c88ced0877af41d5cb437647e13d3c7d1567c2824ed99281dd634734feea71 +docfiles size=2356 RELOC/doc/latex/toptesi/FrontespiziAssemblati.pdf RELOC/doc/latex/toptesi/FrontespiziAssemblati1.pdf RELOC/doc/latex/toptesi/FrontespiziAssemblati2.pdf @@ -302803,6 +302794,7 @@ docfiles size=2304 RELOC/doc/latex/toptesi/Toptesi-example-topfront.tex RELOC/doc/latex/toptesi/VeraPDFiniziale.jpg RELOC/doc/latex/toptesi/logodue.pdf + RELOC/doc/latex/toptesi/logoguittondo.pdf RELOC/doc/latex/toptesi/logoquattro.pdf RELOC/doc/latex/toptesi/logotre.pdf RELOC/doc/latex/toptesi/logouno.pdf @@ -302832,11 +302824,12 @@ docfiles size=2304 RELOC/doc/latex/toptesi/toptesi.pdf details="Package documentation" RELOC/doc/latex/toptesi/veraPDFconformance.jpg RELOC/doc/latex/toptesi/veraPDFnoconformance.jpg -srccontainersize 93680 -srccontainerchecksum 51445c7c0c8213f3df42abe6b60f740ccf30952e22e1a9f1f0e852f98c56ef1f34060fd8ca3a64bb8cdd512d10a3da8912a1db00b3d0b0c5fe78d30e42258d81 -srcfiles size=97 + RELOC/doc/latex/toptesi/veraPDFnoconformance.pdf +srccontainersize 96464 +srccontainerchecksum cfa9b3cb95d66badccaebb95d2e19ac99a583f844fd75b4038111fb71bd8604666ce0a21af8fe3045593ad1090bf61e451428103505914f8873e93403f5af8f8 +srcfiles size=100 RELOC/source/latex/toptesi/toptesi.dtx -runfiles size=39 +runfiles size=40 RELOC/tex/latex/toptesi/topcoman.sty RELOC/tex/latex/toptesi/topfront.sty RELOC/tex/latex/toptesi/toptesi-dottorale.sty @@ -302850,7 +302843,7 @@ runfiles size=39 catalogue-ctan /macros/latex/contrib/toptesi catalogue-license lppl1.3c catalogue-topics dissertation class multilingual -catalogue-version 6.3.06 +catalogue-version 6.4.02 name totcount category Package @@ -322585,17 +322578,17 @@ catalogue-version 23.1 name xepersian-hm category Package -revision 55123 +revision 55222 shortdesc Fixes kashida feature in xepersian package relocated 1 longdesc The kashida feature in xepersian has problems with some fonts longdesc such as the HM Series fonts and the XB Series fonts. This longdesc package fixes these problems. The package requires xepersian longdesc and l3keys2e. -containersize 5016 -containerchecksum 91006ab0d03f8aeed73ef6dca5a802f0e0f9e2be882028bdd1f1c21f740e2c6813fec154eba74824d0c6efb2a329a95b4b0d56846fe1b57962fb18b6d0397b5f -doccontainersize 478644 -doccontainerchecksum c20edb4e9ac2917561015745ce0b9990576706032ac27ac21addf89805d5cfbbbf286f521c535182d6a603c10c81717cc6aabd855f42637ab71d90e939cd6340 +containersize 5076 +containerchecksum a9e492828672d4cdcdb45fcbce56ce7c262e7c0d39fcdd7f387d86151bd287ac9da27afbfd685313120891237680d09b334885d1c31b7044930a1b545e86145d +doccontainersize 479288 +doccontainerchecksum 49c0679cf142510d930818946a6eecf4d4e3ddc38ef233c1670a89b3b658280ce52aa445c831e48f03b15568de47ca52aa75d0ecfe881cfbb38e961df34508db docfiles size=211 RELOC/doc/xelatex/xepersian-hm/INSTALL.txt RELOC/doc/xelatex/xepersian-hm/README.txt details="Readme" @@ -322613,8 +322606,8 @@ docfiles size=211 RELOC/doc/xelatex/xepersian-hm/xepersian-hm-doc.ltx RELOC/doc/xelatex/xepersian-hm/xepersian-hm-doc.pdf details="User documentation" RELOC/doc/xelatex/xepersian-hm/xepersian-hm.pdf details="Code documentation" -srccontainersize 6028 -srccontainerchecksum 6953ca5d47fc9972e7ba6c30482bec9802e4f827dc64cd50de159c30bd2701e5ffc5d872bf38eabf06a39d9970a816503cae3465ab4cb727efc83693ba944406 +srccontainersize 6100 +srccontainerchecksum 4cd0d0f499a7be4dec7084968e12f69f79777733df3644604986a678b8a8db41d8357a5754e9ccc734423257db4daa139c4a363ff2696ebca4db61128248e0f2 srcfiles size=8 RELOC/source/xelatex/xepersian-hm/xepersian-hm.dtx RELOC/source/xelatex/xepersian-hm/xepersian-hm.ins @@ -322624,7 +322617,7 @@ runfiles size=7 catalogue-ctan /macros/xetex/latex/xepersian-hm catalogue-license lppl1.3c catalogue-topics persian xetex expl3 -catalogue-version 0.5e +catalogue-version 0.5f name xesearch category Package diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 index 7359959ecc..55dcb5310b 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 @@ -1 +1 @@ -d6cef706c6e565a1a82431d1d0e42598 texlive.tlpdb +479b013078b4594bf7e8839c20373846 texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 index c5b48d137f..951441c21a 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 @@ -1 +1 @@ -5a995d4327ac86de472f3fbc3b9d6e442682fccca4004562af92e06256b3f50cfa0c79fbaeb1c7382efa0b2ad0a0ffbe540444d8cbed810fa411dd9d4df4f55d texlive.tlpdb +61b5b686083c12fa818daaf97b2cb6cb0a91b5129bf7e4f9f1e925cbcbb856562f678be862d378e4d05f09da1e44fc4efc8e4b9c2924755bb1aca7e9ba7465aa texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc index 9c595b01f4..77d1ae7bf1 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----- -iQEcBAEBCgAGBQJexGVcAAoJEEzhh34ZQ4xwLuQIAKjMET0uss1MhSz7aflTOM/J -epp7v2FTtf8VBPBecJqxKOYEmYwtpQRLQ9UHkpS+cWWXMkKboUFa+oAX0cL8dveV -s6SUsPRW/IXFQg8xKhc/CBvabtSYx1Dr3AE31o2wna8dqT01497XR2gAd2OAYm/r -ujcNYVt8I+XCGeuW/dmDrRE9ficVDVWdI8gPo9yV5zOo3Z48oPM4PhV27dkp3obP -g1MwFYcvvemtlY0JwMuHCP+AWgZGXvMpLT28ZiPbrKuakZMZ2qBT4cjwMf0VD7sg -i369L+j1klJKUWjrgXMlgb1PRb+7Yn8Y2UcXWB8nsrkTZNClMyFmn1KaCW593Ik= -=ePmc +iQEcBAEBCgAGBQJexabKAAoJEEzhh34ZQ4xw95UH/2TFgYhgLC7JfRr2cwbRiKy9 +Yym4UpoBcoFdNt18wKUyjCcP4gvyrLlshnxKcnykjQ0qDuaMlrsmDahRqS5ibs5Q +etgazhA5ehIIXvY0MOihOl7h+HN+rZWLsXHJd2j9dTPbq2p3uiiPtAjL9VWO+kw3 +gC24lPeL+M21f0ajKJOb7vYTIgeGauP2j564O2H5DzeVbAXjtDMi3W6YD5s1nHEp +4vvkjGhhG3mQiI0ZaELvcX5a34w0rTzFvl8cA5Rb5DSzixGml9/aXUegLI4mbC9B +F7phnZ39ojqQMY5diaNXQd3lVThlQcZX4ajcWcp7SYeXYbAfMwRC8SoyDybbe6E= +=Wn1J -----END PGP SIGNATURE----- diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz index 9cc689ea9d..e3bd7f62bd 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 f57e423254..040522040c 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 af9c3cac96..f6b3210221 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 8d802b3d63..30d1c7fdf6 100644 --- a/systems/win32/miktex/tm/packages/next/pr.ini +++ b/systems/win32/miktex/tm/packages/next/pr.ini @@ -1,13 +1,13 @@ [repository] -date=1589919345 +date=1590005797 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=4e8c4beeb48a33590054e6aab14015d7 -numpkg=3910 +lstdigest=c29dc2d5ef3a95b628382820569f8880 +numpkg=3911 relstate=next -version=7444 +version=7445 ;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows. ;;;;-----BEGIN MIKTEX SIGNATURE----- -;;;; signature/miktex: gTukiBW/RvRIvVuZPNs8D/6ADzfdLJF+mU2UKyRHVjyNWwrtWp295UdwZQ3OJkLx9hGsB9IzPaEHYLTSgNOWh2jFzy06llGvoib/8i5BLwMMXxq3vXYBZYCcBtYGEFzApn3U6KY4DgFi6oUqpEevbRkxaIR1fHx7aZY1kOM2azh9IZI8pvLOhzdoQEIAIgB1X511Raxdr0uxGnG57i4zxamIRchX1y9BDfvl9XXdQAz+YDFe0Pfxk/m3ROK3gyL9y2AZwc4rKUJT6Y27b9c2dUNYk8My7537GclSo7XstZcF2Yd3bOIzmdLtWmAQzf4n3CEpty0KxB7p7f9Zbf3dkw== +;;;; signature/miktex: n/ptAP3mYIYyrwNeLvrGZNc9SgqX4AznFbKEbd5xlbi7jGPj3u74AVPLAdysofhAijby1Cx0x1oU2uKI+r1/hQieRzVRPxAmYBK0PIHRSuJaNUd3qEYyVlLNYgOC44MaExEx78CFnIDTqhPXjPL8YiDHfARmsHkMSHVWeNMcm4gQY0wjD0n1Di4dbxgeo81OOMaf3wPzs+db8dF18aSFkuw8kTKMsDoC07Kn51CtMRCmAMH68tnmd+wNAe86ZgowG3uswTZWEAzjiaU6lXbdiMZpgfbaWcXOry6iaAemWAQDRTX0a8DkiS7G3BCvGm2H0cu+P5ApGfA0qZqNKYq6SQ== ;;;;-----END MIKTEX SIGNATURE----- diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini index a8e14fc02b..3c50b9ef7d 100644 --- a/systems/win32/miktex/tm/packages/pr.ini +++ b/systems/win32/miktex/tm/packages/pr.ini @@ -1,13 +1,13 @@ [repository] -date=1589919082 -lastupd=miktex-bibtex-bin-2.9 miktex-bibtex-bin-x64-2.9 miktex-luatex-bin-2.9 miktex-luatex-bin-x64-2.9 miktex-runtime-bin-2.9 miktex-runtime-bin-x64-2.9 bidi circuitikz exercises lua-uni-algos luatexja tex-nutshell vcell xepersian ctex etbb glossaries-nynorsk hyperref miktex-arctrl-bin-2.9 miktex-arctrl-bin-x64-2.9 -lstdigest=495aadaa989089195059793b7d1dcc87 -numpkg=3910 +date=1590005474 +lastupd=helmholtz-ellis-ji-notation l3experimental luatexja miktex-luatex-bin-2.9 miktex-luatex-bin-x64-2.9 miktex-runtime-bin-2.9 miktex-runtime-bin-x64-2.9 newcomputermodern newpx newtx parskip plantuml miktex-bibtex-bin-2.9 miktex-bibtex-bin-x64-2.9 bidi circuitikz exercises lua-uni-algos tex-nutshell vcell +lstdigest=240a9a7bf5246a4b7f8e1f13a8fd7fbb +numpkg=3911 relstate=stable -version=7444 +version=7445 ;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows. ;;;;-----BEGIN MIKTEX SIGNATURE----- -;;;; signature/miktex: O3iG/5LcMXlllD0GDfZDun1/EiVjW4W6RStaFaJhNmE/4dj9NO6x3glismnnKaBOKzbAiSpF+dv34sSpKZ+SPdlBbCMvJ7FRjD0Ir9nzuJ777VraWxs9/0CsfuzaDnZk7LtTyDdC1Jvk7k7uyD9gokz5eyB6viIU+MI05xqHGgd0ghGqFVDHxLPkHA72k7rnhPaUQjeZLQHkRATYvvZ4tWPCViqePVTY2/UveEfG4rPNLi38anF7hWg8EOv4NsOsLS05bTOYpkdcn/a0tQFdaI0N0p6X6ptGEWWwBe3Khd71ke71pxI+jlMXOU2H1owWaDZy0X5Mh46ZTKILhYT2lQ== +;;;; signature/miktex: mHz2j8rl+wM9Jxe3LtAY8fE12Tx3cohDnJH/PP5EZNhNtu/zO4zQCNVTK0ICf47IXbFm5K+GC8IzR8SFXkDvNyXJgWwwZ5cDNSjtCo61ABEFl0QaSMwXu/nkJvgROKabNcDz3WGiftEd1Acr8QjWwjzvzdX1NnY+XYS4/LmlZhgBWg8U9vvX/QX7cNu1ZZNZu8+zl5m8FMqwrZj7Wyq3MSw/ueYVcAqhyabZa+XjIoBdwg+Z/F5bxX6DUayWIeB4Av/atao6xK8VtMJAet0m+mV+YYyu3NLr7vFs7YYKz09X3XaKFiO1anrducCr4OyJA7rwXpE9JSqvLY0WmmKCDg== ;;;;-----END MIKTEX SIGNATURE----- diff --git a/systems/win32/w32tex/ChangeLog b/systems/win32/w32tex/ChangeLog index 8a9895d2da..eed6a92c16 100644 --- a/systems/win32/w32tex/ChangeLog +++ b/systems/win32/w32tex/ChangeLog @@ -1,5 +1,21 @@ W32TeX (x86 & x64) ChangeLog +[2020/05/20] +(01) ltxpkgdocs.tar.xz + Update documents for packages. +(02) ltxpkgs.tar.xz + Update parskip. +(03) luajittex-exp-w32.tar.xz + Rebuild luajittex.dll, and luajithbtex.dll. +(04) luatex-exp-w32.tar.xz + Rebuild luatex.dll, and luahbtex.dll. +(05) ptex-w32.tar.xz + Update ptex2pdf (20200520.0). +(06) win64/luajittex-exp-w64.tar.xz + Rebuild luajittex.dll, and luajithbtex.dll. +(07) win64/luatex-exp-w64.tar.xz + Rebuild luatex.dll, and luahbtex.dll. + [2020/05/19] (01) context.tar.xz ConTeXt version: 2020.05.18 16:46. diff --git a/timestamp b/timestamp index 1f601cd0f2..967729ddb6 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: -2020-05-20-02-02 +2020-05-21-02-02 -- cgit v1.2.3